Title: [270117] trunk
Revision
270117
Author
[email protected]
Date
2020-11-20 08:09:56 -0800 (Fri, 20 Nov 2020)

Log Message

Make webrtc/captureCanvas-webrtc-software-h264-*.html tests use codecs in WebProcess
https://bugs.webkit.org/show_bug.cgi?id=219147

Reviewed by Eric Carlson.

Source/WebCore:

Expose internals setting to disable WebRTC codecs in GPU process.
Covered by existing tests.

* testing/InternalSettings.cpp:
(WebCore::InternalSettings::setWebRTCPlatformCodecsInGPUProcessEnabled):
* testing/InternalSettings.h:
* testing/InternalSettings.idl:

LayoutTests:

* webrtc/captureCanvas-webrtc-software-h264-baseline.html:
* webrtc/captureCanvas-webrtc-software-h264-high.html:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (270116 => 270117)


--- trunk/LayoutTests/ChangeLog	2020-11-20 16:09:32 UTC (rev 270116)
+++ trunk/LayoutTests/ChangeLog	2020-11-20 16:09:56 UTC (rev 270117)
@@ -1,3 +1,13 @@
+2020-11-20  Youenn Fablet  <[email protected]>
+
+        Make webrtc/captureCanvas-webrtc-software-h264-*.html tests use codecs in WebProcess
+        https://bugs.webkit.org/show_bug.cgi?id=219147
+
+        Reviewed by Eric Carlson.
+
+        * webrtc/captureCanvas-webrtc-software-h264-baseline.html:
+        * webrtc/captureCanvas-webrtc-software-h264-high.html:
+
 2020-11-20  Alan Bujtas  <[email protected]>
 
         Unreviewed, reverting r270070.

Modified: trunk/LayoutTests/webrtc/captureCanvas-webrtc-software-h264-baseline.html (270116 => 270117)


--- trunk/LayoutTests/webrtc/captureCanvas-webrtc-software-h264-baseline.html	2020-11-20 16:09:32 UTC (rev 270116)
+++ trunk/LayoutTests/webrtc/captureCanvas-webrtc-software-h264-baseline.html	2020-11-20 16:09:56 UTC (rev 270117)
@@ -10,9 +10,12 @@
         <script src=""
         <script src=""
         <script>
+if (window.internals) {
+    internals.setH264HardwareEncoderAllowed(false);
+    internals.settings.setWebRTCPlatformCodecsInGPUProcessEnabled(false);
+}
+
 promise_test((test) => {
-    if (window.internals)
-        internals.setH264HardwareEncoderAllowed(false);
     return doTest(test, (sdp) => setH264BaselineCodec(sdp));
 }, "captureStream with webrtc - h264 baseline");
         </script>

Modified: trunk/LayoutTests/webrtc/captureCanvas-webrtc-software-h264-high.html (270116 => 270117)


--- trunk/LayoutTests/webrtc/captureCanvas-webrtc-software-h264-high.html	2020-11-20 16:09:32 UTC (rev 270116)
+++ trunk/LayoutTests/webrtc/captureCanvas-webrtc-software-h264-high.html	2020-11-20 16:09:56 UTC (rev 270117)
@@ -10,9 +10,12 @@
         <script src=""
         <script src=""
         <script>
+if (window.internals) {
+    internals.setH264HardwareEncoderAllowed(false);
+    internals.settings.setWebRTCPlatformCodecsInGPUProcessEnabled(false);
+}
+
 promise_test((test) => {
-    if (window.internals)
-        internals.setH264HardwareEncoderAllowed(false);
     return doTest(test, (sdp) => setH264HighCodec(sdp));
 }, "captureStream with webrtc - h264 high profile");
         </script>

Modified: trunk/Source/WebCore/ChangeLog (270116 => 270117)


--- trunk/Source/WebCore/ChangeLog	2020-11-20 16:09:32 UTC (rev 270116)
+++ trunk/Source/WebCore/ChangeLog	2020-11-20 16:09:56 UTC (rev 270117)
@@ -1,3 +1,18 @@
+2020-11-20  Youenn Fablet  <[email protected]>
+
+        Make webrtc/captureCanvas-webrtc-software-h264-*.html tests use codecs in WebProcess
+        https://bugs.webkit.org/show_bug.cgi?id=219147
+
+        Reviewed by Eric Carlson.
+
+        Expose internals setting to disable WebRTC codecs in GPU process.
+        Covered by existing tests.
+
+        * testing/InternalSettings.cpp:
+        (WebCore::InternalSettings::setWebRTCPlatformCodecsInGPUProcessEnabled):
+        * testing/InternalSettings.h:
+        * testing/InternalSettings.idl:
+
 2020-11-20  Sergio Villar Senin  <[email protected]>
 
         [css-flex] Images as flex items should use the overridingLogicalWidth when defined to compute the logical height

Modified: trunk/Source/WebCore/testing/InternalSettings.cpp (270116 => 270117)


--- trunk/Source/WebCore/testing/InternalSettings.cpp	2020-11-20 16:09:32 UTC (rev 270116)
+++ trunk/Source/WebCore/testing/InternalSettings.cpp	2020-11-20 16:09:56 UTC (rev 270117)
@@ -447,6 +447,18 @@
     return { };
 }
 
+ExceptionOr<void> InternalSettings::setWebRTCPlatformCodecsInGPUProcessEnabled(bool enabled)
+{
+    if (!m_page)
+        return Exception { InvalidAccessError };
+#if ENABLE(WEB_RTC)
+    RuntimeEnabledFeatures::sharedFeatures().setWebRTCPlatformCodecsInGPUProcessEnabled(enabled);
+#else
+    UNUSED_PARAM(enabled);
+#endif
+    return { };
+}
+
 ExceptionOr<void> InternalSettings::setCustomPasteboardDataEnabled(bool enabled)
 {
     if (!m_page)

Modified: trunk/Source/WebCore/testing/InternalSettings.h (270116 => 270117)


--- trunk/Source/WebCore/testing/InternalSettings.h	2020-11-20 16:09:32 UTC (rev 270116)
+++ trunk/Source/WebCore/testing/InternalSettings.h	2020-11-20 16:09:56 UTC (rev 270117)
@@ -92,6 +92,7 @@
     ExceptionOr<void> setWebGPUEnabled(bool);
     ExceptionOr<void> setFetchAPIKeepAliveEnabled(bool);
     ExceptionOr<void> setCustomPasteboardDataEnabled(bool);
+    ExceptionOr<void> setWebRTCPlatformCodecsInGPUProcessEnabled(bool);
 
     // DeprecatedGlobalSettings.
     ExceptionOr<void> setShouldManageAudioSessionCategory(bool);

Modified: trunk/Source/WebCore/testing/InternalSettings.idl (270116 => 270117)


--- trunk/Source/WebCore/testing/InternalSettings.idl	2020-11-20 16:09:32 UTC (rev 270116)
+++ trunk/Source/WebCore/testing/InternalSettings.idl	2020-11-20 16:09:56 UTC (rev 270117)
@@ -68,6 +68,7 @@
     [MayThrowException] undefined setWebGPUEnabled(boolean enabled);
     [MayThrowException] undefined setFetchAPIKeepAliveEnabled(boolean enabled);
     [MayThrowException] undefined setCustomPasteboardDataEnabled(boolean enabled);
+    [MayThrowException] undefined setWebRTCPlatformCodecsInGPUProcessEnabled(boolean enabled);
 
     // DeprecatedGlobalSettings.
     [MayThrowException] undefined setShouldManageAudioSessionCategory(boolean should);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to