[webkit-changes] [WebKit/WebKit] b19ff0: Webrtc decoder MediaCapabilities powerEfficient va...

youennf noreply at github.com
Fri Feb 9 04:23:13 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b19ff0f84cdb49fe4d23128ccb6b3de4e6a3a161
      https://github.com/WebKit/WebKit/commit/b19ff0f84cdb49fe4d23128ccb6b3de4e6a3a161
  Author: Youenn Fablet <youennf at gmail.com>
  Date:   2024-02-09 (Fri, 09 Feb 2024)

  Changed paths:
    M LayoutTests/TestExpectations
    A LayoutTests/media/mediacapabilities/vp9-hw-expected.txt
    A LayoutTests/media/mediacapabilities/vp9-hw.html
    M LayoutTests/platform/glib/TestExpectations
    M LayoutTests/platform/mac-wk2/TestExpectations
    M LayoutTests/webrtc/vp9-svc.html
    A LayoutTests/webrtc/vp9-sw-expected.txt
    A LayoutTests/webrtc/vp9-sw.html
    A LayoutTests/webrtc/vp9-tests.js
    R LayoutTests/webrtc/vp9-vtb.html
    M LayoutTests/webrtc/vp9.html
    M Source/WebCore/platform/graphics/cocoa/VP9UtilitiesCocoa.h
    M Source/WebCore/platform/graphics/cocoa/VP9UtilitiesCocoa.mm
    M Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.cpp
    M Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.h
    M Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProviderCocoa.cpp
    M Source/WebCore/testing/Internals.cpp
    M Source/WebCore/testing/Internals.h
    M Source/WebCore/testing/Internals.idl
    M Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp
    M Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.h
    M Source/WebKit/WebProcess/Network/webrtc/LibWebRTCProvider.cpp
    M Source/WebKit/WebProcess/Network/webrtc/LibWebRTCProvider.h

  Log Message:
  -----------
  Webrtc decoder MediaCapabilities powerEfficient value is incorrect
https://bugs.webkit.org/show_bug.cgi?id=268753
rdar://122316664

Reviewed by Eric Carlson.

We were using VTB APIs within WebProcess to knoww whether powerEfficient was true or not.
We are now using LibWebRTCCodecs value.
We do a refactoring to remove values from LibWebRTCProvider as a simplification.
We also update LayoutTests/webrtc/vp9-sw.html and related internals API to have APIs that disable HW VP9 if available.

* LayoutTests/TestExpectations:
* LayoutTests/media/mediacapabilities/vp9-hw-expected.txt: Added.
* LayoutTests/media/mediacapabilities/vp9-hw.html: Added.
* LayoutTests/platform/glib/TestExpectations:
* LayoutTests/platform/mac-wk2/TestExpectations:
* LayoutTests/webrtc/vp9-svc.html:
* LayoutTests/webrtc/vp9-sw-expected.txt: Added.
* LayoutTests/webrtc/vp9-sw.html: Added.
* LayoutTests/webrtc/vp9-tests.js: Copied from LayoutTests/webrtc/vp9.html.
(test):
(hasVP9.promise_test.async let):
(hasVP9.promise_test):
(hasVP9.promise_test.async test):
(hasVP9.promise_test.then.async video):
* LayoutTests/webrtc/vp9-vtb.html: Removed.
* LayoutTests/webrtc/vp9.html:
* Source/WebCore/platform/graphics/cocoa/VP9UtilitiesCocoa.h:
* Source/WebCore/platform/graphics/cocoa/VP9UtilitiesCocoa.mm:
(WebCore::validateVPParameters):
(WebCore::computeVPParameters):
* Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:
(WebCore::LibWebRTCProvider::clearFactory):
(WebCore::LibWebRTCProvider::videoDecodingCapabilitiesOverride):
(WebCore::LibWebRTCProvider::setVP9VTBSupport): Deleted.
(WebCore::LibWebRTCProvider::isSupportingVP9VTB const): Deleted.
* Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.h:
* Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProviderCocoa.cpp:
(WebCore::LibWebRTCProviderCocoa::createDecoderFactory):
(WebCore::LibWebRTCProviderCocoa::computeVPParameters):
* Source/WebCore/testing/Internals.cpp:
(WebCore::Internals::resetToConsistentState):
(WebCore::Internals::disableWebRTCHardwareVP9):
(WebCore::Internals::isSupportingVP9HardwareDecoder const):
(WebCore::Internals::isVP9HardwareDeccoderUsed):
(WebCore::Internals::isHardwareVP9DecoderExpected):
(WebCore::Internals::setWebRTCVP9VTBSupport): Deleted.
(WebCore::Internals::isSupportingVP9VTB const): Deleted.
(WebCore::Internals::isVP9VTBDeccoderUsed): Deleted.
* Source/WebCore/testing/Internals.h:
* Source/WebCore/testing/Internals.idl:
* Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp:
(WebKit::createVideoDecoder):
(WebKit::LibWebRTCCodecs::videoCodecTypeFromWebCodec):
* Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.h:
(WebKit::LibWebRTCCodecs::setVP9HardwareSupportForTesting):
(WebKit::LibWebRTCCodecs::setVP9VTBSupport):
(WebKit::LibWebRTCCodecs::isSupportingVP9HardwareDecoder const):
(WebKit::LibWebRTCCodecs::supportVP9VTB const): Deleted.
* Source/WebKit/WebProcess/Network/webrtc/LibWebRTCProvider.cpp:
(WebKit::LibWebRTCProvider::isSupportingVP9HardwareDecoder const):
(WebKit::LibWebRTCProvider::setVP9HardwareSupportForTesting):
(WebKit::LibWebRTCProvider::willCreatePeerConnectionFactory):
* Source/WebKit/WebProcess/Network/webrtc/LibWebRTCProvider.h:

Canonical link: https://commits.webkit.org/274358@main




More information about the webkit-changes mailing list