Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4f5245c3949d20a65be88d92a1ea84e6364e7373
      
https://github.com/WebKit/WebKit/commit/4f5245c3949d20a65be88d92a1ea84e6364e7373
  Author: Youenn Fablet <youe...@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


_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to