[webkit-changes] [WebKit/WebKit] 4f5245: [WebCodecs] Expose decoded video frames colorSpace
youennf
noreply at github.com
Thu Oct 27 09:02:47 PDT 2022
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 4f5245c3949d20a65be88d92a1ea84e6364e7373
https://github.com/WebKit/WebKit/commit/4f5245c3949d20a65be88d92a1ea84e6364e7373
Author: Youenn Fablet <youennf at gmail.com>
Date: 2022-10-27 (Thu, 27 Oct 2022)
Changed paths:
A LayoutTests/http/wpt/webcodecs/videoFrame-colorSpace-expected.txt
A LayoutTests/http/wpt/webcodecs/videoFrame-colorSpace.html
M Source/ThirdParty/libwebrtc/Configurations/libwebrtc.iOS.exp
M Source/ThirdParty/libwebrtc/Configurations/libwebrtc.iOSsim.exp
M Source/ThirdParty/libwebrtc/Configurations/libwebrtc.mac.exp
M Source/WebCore/Modules/webcodecs/WebCodecsVideoDecoder.cpp
M Source/WebCore/Modules/webcodecs/WebCodecsVideoFrame.cpp
M Source/WebCore/Modules/webcodecs/WebCodecsVideoFrame.h
M Source/WebCore/Modules/webcodecs/WebCodecsVideoFrameData.h
M Source/WebCore/platform/LibWebRTCVPXVideoDecoder.cpp
M Source/WebCore/platform/VideoFrame.cpp
M Source/WebCore/platform/VideoFrame.h
M Source/WebCore/platform/graphics/cv/VideoFrameCV.h
M Source/WebCore/platform/graphics/cv/VideoFrameCV.mm
M Source/WebCore/platform/mediastream/libwebrtc/VideoFrameLibWebRTC.cpp
M Source/WebCore/platform/mediastream/libwebrtc/VideoFrameLibWebRTC.h
M Source/WebCore/platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.mm
M Source/WebKit/WebProcess/GPU/media/RemoteVideoFrameProxy.cpp
M Source/WebKit/WebProcess/GPU/media/RemoteVideoFrameProxy.h
Log Message:
-----------
[WebCodecs] Expose decoded video frames colorSpace
https://bugs.webkit.org/show_bug.cgi?id=247060
rdar://problem/101584578
Reviewed by Eric Carlson.
Add colorSpace information to VideoFrame and allow to pass it through IPC in VideoFrameCV and RemoteVideoFrameProxy.
Compute color space from CVPixelBuffer or from rtc VideoFrame.
For rtc vpx frames, use the default 601 profile if none is provided.
* LayoutTests/http/wpt/webcodecs/videoFrame-colorSpace-expected.txt: Added.
* LayoutTests/http/wpt/webcodecs/videoFrame-colorSpace.html: Added.
* Source/ThirdParty/libwebrtc/Configurations/libwebrtc.iOS.exp:
* Source/ThirdParty/libwebrtc/Configurations/libwebrtc.iOSsim.exp:
* Source/ThirdParty/libwebrtc/Configurations/libwebrtc.mac.exp:
* Source/WebCore/Modules/webcodecs/WebCodecsVideoFrame.cpp:
(WebCore::WebCodecsVideoFrame::colorSpace const):
* Source/WebCore/platform/LibWebRTCVPXVideoDecoder.cpp:
(WebCore::LibWebRTCVPXInternalVideoDecoder::Decoded):
* Source/WebCore/platform/VideoFrame.cpp:
(WebCore::VideoFrame::VideoFrame):
* Source/WebCore/platform/VideoFrame.h:
(WebCore::VideoFrame::colorSpace const):
(WebCore::VideoFrame::VideoFrame):
* Source/WebCore/platform/graphics/cv/VideoFrameCV.h:
(WebCore::VideoFrameCV::encode const):
(WebCore::VideoFrameCV::decode):
* Source/WebCore/platform/graphics/cv/VideoFrameCV.mm:
(WebCore::computeVideoFrameColorSpace):
(WebCore::VideoFrameCV::VideoFrameCV):
* Source/WebCore/platform/mediastream/libwebrtc/VideoFrameLibWebRTC.cpp:
(WebCore::defaultVPXColorSpace):
(WebCore::VideoFrameLibWebRTC::create):
(WebCore::VideoFrameLibWebRTC::colorSpaceFromFrame):
(WebCore::VideoFrameLibWebRTC::VideoFrameLibWebRTC):
* Source/WebCore/platform/mediastream/libwebrtc/VideoFrameLibWebRTC.h:
* Source/WebCore/platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.mm:
(WebCore::RealtimeIncomingVideoSourceCocoa::toVideoFrame):
* Source/WebKit/WebProcess/GPU/media/RemoteVideoFrameProxy.cpp:
(WebKit::RemoteVideoFrameProxy::RemoteVideoFrameProxy):
* Source/WebKit/WebProcess/GPU/media/RemoteVideoFrameProxy.h:
(WebKit::RemoteVideoFrameProxy::Properties::encode const):
(WebKit::RemoteVideoFrameProxy::Properties::decode):
Canonical link: https://commits.webkit.org/256068@main
More information about the webkit-changes
mailing list