Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f9e9fc8f8b1b89d88194a1fc76dd13031749b87f
      
https://github.com/WebKit/WebKit/commit/f9e9fc8f8b1b89d88194a1fc76dd13031749b87f
  Author: Youenn Fablet <[email protected]>
  Date:   2023-06-07 (Wed, 07 Jun 2023)

  Changed paths:
    M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any.worker_h264_annexb-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any.worker_h264_avc-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any_h264_annexb-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any_h264_avc-expected.txt
    M Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/base/RTCVideoEncoder.h
    M 
Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/components/video_codec/RTCVideoEncoderH264.mm
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/platform/VideoEncoder.h
    A Source/WebCore/platform/VideoEncoderActiveConfiguration.h
    M Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.mm
    M Source/WebKit/WebProcess/GPU/media/RemoteVideoCodecFactory.cpp
    M Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp
    M Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.h
    M Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.messages.in

  Log Message:
  -----------
  [Cocoa] Expose colorSpace in HW encoders VideoDecoderConfig
https://bugs.webkit.org/show_bug.cgi?id=257742
rdar://problem/110310512

Reviewed by Eric Carlson.

We were setting colorSpace for libvpx encoders but not for remote encoders.
Add support for this in LibWebRTCCodecsProxy.
We make changes to RTCVideoEncoderH264 to trigger the description callback in 
the annexB case too so that we can send the color space.
In the future, RTCVideoEncoderH264 and others might send themselves their color 
space.

Update WebProcess side to create the VideoEncoderActiveConfiguration with 
colorSpace in LibWebRTCCodecs.
We separate VideoEncoderActiveConfiguration in its own file to reduce header 
and it might be useful in
the future to directly send VideoEncoderActiveConfiguration from GPUProcess to 
WebProcess.

* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any.worker_h264_annexb-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any.worker_h264_avc-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any_h264_annexb-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any_h264_avc-expected.txt:
* Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/base/RTCVideoEncoder.h:
* 
Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/components/video_codec/RTCVideoEncoderH264.mm:
(-[RTCVideoEncoderH264 initWithCodecInfo:]):
(-[RTCVideoEncoderH264 setUseAnnexB:]):
(-[RTCVideoEncoderH264 
frameWasEncoded:flags:sampleBuffer:codecSpecificInfo:width:height:renderTimeMs:timestamp:rotation:isKeyFrameRequired:]):
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/platform/VideoEncoder.h:
* Source/WebCore/platform/VideoEncoderActiveConfiguration.h: Added.
* Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.mm:
(WebKit::LibWebRTCCodecsProxy::createEncoder):
* Source/WebKit/WebProcess/GPU/media/RemoteVideoCodecFactory.cpp:
(WebKit::RemoteVideoEncoder::RemoteVideoEncoder):
(WebKit::RemoteVideoEncoderCallbacks::notifyEncoderDescription):
* Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp:
(WebKit::LibWebRTCCodecs::setEncodingConfiguration):
(WebKit::LibWebRTCCodecs::setEncodingDescription): Deleted.
* Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.h:
* Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.messages.in:

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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to