From bfb40574629695dfcace4444ee19e41720865727 Mon Sep 17 00:00:00 2001 From: Bernard Aboba Date: Wed, 15 Mar 2023 21:50:03 -0400 Subject: [PATCH 1/7] Enables configuration of AV1 screen content coding tools Fixes https://github.com/w3c/webcodecs/issues/646 --- av1_codec_registration.src.html | 38 +++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/av1_codec_registration.src.html b/av1_codec_registration.src.html index 7f73ca66..67219ab6 100644 --- a/av1_codec_registration.src.html +++ b/av1_codec_registration.src.html @@ -73,6 +73,44 @@ contain a frame with a `frame_type` of `KEY_FRAME` as defined in Section 6.8.2 of [[AV1]]. +VideoEncoderConfig extensions {#videoencoderconfig-extensions} +============================================================== + +
+
+partial dictionary VideoEncoderConfig {
+  AV1EncoderConfig av1;
+};
+
+
+ +
+
av1
+
+ Contains codec specific configuration options for the AV1 codec. +
+
+ +AV1EncoderConfig {#av1-encoder-config} +-------------------------------------- +
+
+dictionary AV1EncoderConfig {
+ unsigned short seqForceScreenContentTools = 0
+};
+
+
+ +
+
seqForceScreenContentTools
+
+ Indicates whether the encoder should force use of screen content coding tools. + The default value (0) indicates that use of screen content coding tools should + not be forced. A value of 2 (SELECT_SCREEN_CONTENT_TOOLS) indicates that + use of screen content coding tools should be forced. +
+
+ Privacy Considerations {#privacy-considerations} ========================================================================== From 478cfd94d0ed3c8050a712a282b2bdaf3eb4f62e Mon Sep 17 00:00:00 2001 From: Bernard Aboba Date: Wed, 15 Mar 2023 23:09:03 -0400 Subject: [PATCH 2/7] Correct type to boolean --- av1_codec_registration.src.html | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/av1_codec_registration.src.html b/av1_codec_registration.src.html index 67219ab6..b49a7bbc 100644 --- a/av1_codec_registration.src.html +++ b/av1_codec_registration.src.html @@ -96,7 +96,7 @@
 
 dictionary AV1EncoderConfig {
- unsigned short seqForceScreenContentTools = 0
+ boolean seqForceScreenContentTools = false
 };
 
 
@@ -105,9 +105,10 @@
seqForceScreenContentTools
Indicates whether the encoder should force use of screen content coding tools. - The default value (0) indicates that use of screen content coding tools should - not be forced. A value of 2 (SELECT_SCREEN_CONTENT_TOOLS) indicates that - use of screen content coding tools should be forced. + The default value (false) indicates that use of screen content coding tools + should not be forced. A value of true (denoted as SELECT_SCREEN_CONTENT_TOOLS + in [[AV1]] Section 5.5.1) indicates that use of screen content coding tools + should be forced.
From 8aa0c7c9f2980449eb54ec85b43eb0e2ff8c5794 Mon Sep 17 00:00:00 2001 From: Bernard Aboba Date: Wed, 15 Mar 2023 23:10:56 -0400 Subject: [PATCH 3/7] Correct AV1 reference --- av1_codec_registration.src.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/av1_codec_registration.src.html b/av1_codec_registration.src.html index b49a7bbc..730a66ec 100644 --- a/av1_codec_registration.src.html +++ b/av1_codec_registration.src.html @@ -107,7 +107,7 @@ Indicates whether the encoder should force use of screen content coding tools. The default value (false) indicates that use of screen content coding tools should not be forced. A value of true (denoted as SELECT_SCREEN_CONTENT_TOOLS - in [[AV1]] Section 5.5.1) indicates that use of screen content coding tools + in Section 5.5.1 of [[AV1]]) indicates that use of screen content coding tools should be forced. From b9aa82feaa4a8c334589a3b0abf3c74252e02c63 Mon Sep 17 00:00:00 2001 From: Bernard Aboba Date: Thu, 16 Mar 2023 09:34:45 -0400 Subject: [PATCH 4/7] remove "seq" --- av1_codec_registration.src.html | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/av1_codec_registration.src.html b/av1_codec_registration.src.html index 730a66ec..b686600f 100644 --- a/av1_codec_registration.src.html +++ b/av1_codec_registration.src.html @@ -96,19 +96,20 @@
 
 dictionary AV1EncoderConfig {
- boolean seqForceScreenContentTools = false
+ boolean forceScreenContentTools = false
 };
 
 
-
seqForceScreenContentTools
+
forceScreenContentTools
- Indicates whether the encoder should force use of screen content coding tools. - The default value (false) indicates that use of screen content coding tools - should not be forced. A value of true (denoted as SELECT_SCREEN_CONTENT_TOOLS - in Section 5.5.1 of [[AV1]]) indicates that use of screen content coding tools - should be forced. + Indicates whether the encoder should force use of screen content + coding tools. The default value (false) indicates that use of + screen content coding tools is not forced. A value of true + (corresponding to SELECT_SCREEN_CONTENT_TOOLS in Section 5.5.1 + of [[AV1]]) indicates that use of screen content coding tools + is forced.
From 5ac5447332ae4ad069071f252c202186ce7b8db5 Mon Sep 17 00:00:00 2001 From: Bernard Aboba Date: Thu, 16 Mar 2023 13:13:00 -0400 Subject: [PATCH 5/7] Add space --- av1_codec_registration.src.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/av1_codec_registration.src.html b/av1_codec_registration.src.html index b686600f..c9c00f81 100644 --- a/av1_codec_registration.src.html +++ b/av1_codec_registration.src.html @@ -96,7 +96,7 @@
 
 dictionary AV1EncoderConfig {
- boolean forceScreenContentTools = false
+  boolean forceScreenContentTools = false
 };
 
 
From eaa0fddb3308fcc9f1c11151c50ff954a5616286 Mon Sep 17 00:00:00 2001 From: Bernard Aboba Date: Thu, 16 Mar 2023 13:14:22 -0400 Subject: [PATCH 6/7] Add missing semi-colon --- av1_codec_registration.src.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/av1_codec_registration.src.html b/av1_codec_registration.src.html index c9c00f81..d85f06a6 100644 --- a/av1_codec_registration.src.html +++ b/av1_codec_registration.src.html @@ -96,7 +96,7 @@
 
 dictionary AV1EncoderConfig {
-  boolean forceScreenContentTools = false
+  boolean forceScreenContentTools = false;
 };
 
 
From e77beb8db310f56de74252c2f1fc2eb655a15f30 Mon Sep 17 00:00:00 2001 From: Bernard Aboba Date: Tue, 11 Apr 2023 11:16:00 -0700 Subject: [PATCH 7/7] Clarify screen content tool variable --- av1_codec_registration.src.html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/av1_codec_registration.src.html b/av1_codec_registration.src.html index d85f06a6..a7a20662 100644 --- a/av1_codec_registration.src.html +++ b/av1_codec_registration.src.html @@ -107,7 +107,8 @@ Indicates whether the encoder should force use of screen content coding tools. The default value (false) indicates that use of screen content coding tools is not forced. A value of true - (corresponding to SELECT_SCREEN_CONTENT_TOOLS in Section 5.5.1 + (corresponding to setting seq_force_screen_content_tools + to SELECT_SCREEN_CONTENT_TOOLS in Section 5.5.1 of [[AV1]]) indicates that use of screen content coding tools is forced.