Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 9886ad7abe71b691066baa91b8ae6e13a1014063 https://github.com/WebKit/WebKit/commit/9886ad7abe71b691066baa91b8ae6e13a1014063 Author: Youenn Fablet <youe...@gmail.com> Date: 2024-02-02 (Fri, 02 Feb 2024)
Changed paths: M Source/WebCore/Sources.txt M Source/WebCore/SourcesCocoa.txt M Source/WebCore/WebCore.xcodeproj/project.pbxproj M Source/WebCore/platform/graphics/cocoa/AV1UtilitiesCocoa.h M Source/WebCore/platform/graphics/cocoa/AV1UtilitiesCocoa.mm M Source/WebCore/platform/graphics/cocoa/MediaEngineConfigurationFactoryCocoa.cpp M Source/WebCore/platform/graphics/cocoa/VP9UtilitiesCocoa.h M Source/WebCore/platform/graphics/cocoa/VP9UtilitiesCocoa.mm R Source/WebCore/platform/mediastream/cocoa/WebRTCVideoDecoder.h R Source/WebCore/platform/mediastream/cocoa/WebRTCVideoDecoder.mm A Source/WebCore/platform/video-codecs/BitReader.cpp A Source/WebCore/platform/video-codecs/BitReader.h A Source/WebCore/platform/video-codecs/cocoa/RTCVideoDecoderVTBAV1.h A Source/WebCore/platform/video-codecs/cocoa/RTCVideoDecoderVTBAV1.mm A Source/WebCore/platform/video-codecs/cocoa/WebRTCVideoDecoder.h A Source/WebCore/platform/video-codecs/cocoa/WebRTCVideoDecoder.mm M Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp M Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.mm M Source/WebKit/Shared/GPUProcessConnectionParameters.h M Source/WebKit/Shared/GPUProcessConnectionParameters.serialization.in M Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp M Source/WebKit/UIProcess/GPU/GPUProcessProxy.h M Source/WebKit/UIProcess/GPU/GPUProcessProxy.messages.in M Source/WebKit/WebProcess/GPU/GPUProcessConnection.cpp M Source/WebKit/WebProcess/GPU/GPUProcessConnectionInfo.h M Source/WebKit/WebProcess/GPU/GPUProcessConnectionInfo.serialization.in M Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp M Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.h M Source/WebKit/WebProcess/WebPage/WebPage.cpp Log Message: ----------- Upstream WebRTC AV1 decoder support https://bugs.webkit.org/show_bug.cgi?id=262481 rdar://116343842 Reviewed by Eric Carlson. Add Source/WebCore/platform/video-codecs/cocoa folder for WebRTC/WebCodecs platform decoders and encoders Add AV1 VTB decoder support class as RTCVideoDecoderVTBAV1. In the future, we should add H264 and H265 encoders and decoders as well. * Source/WebCore/Sources.txt: * Source/WebCore/SourcesCocoa.txt: * Source/WebCore/WebCore.xcodeproj/project.pbxproj: * Source/WebCore/platform/graphics/cocoa/AV1UtilitiesCocoa.h: * Source/WebCore/platform/graphics/cocoa/AV1UtilitiesCocoa.mm: (WebCore::av1HardwareDecoderAvailable): * Source/WebCore/platform/graphics/cocoa/VP9UtilitiesCocoa.h: * Source/WebCore/platform/graphics/cocoa/VP9UtilitiesCocoa.mm: (WebCore::hasVP9ExtensionSupport): Deleted. * Source/WebCore/platform/video-codecs/BitReader.cpp: Copied from Source/WebCore/platform/mediastream/cocoa/WebRTCVideoDecoder.h. (WebCore::BitReader::read): (WebCore::BitReader::readBit): * Source/WebCore/platform/video-codecs/BitReader.h: Copied from Source/WebCore/platform/graphics/cocoa/AV1UtilitiesCocoa.h. (WebCore::BitReader::BitReader): * Source/WebCore/platform/video-codecs/cocoa/RTCVideoDecoderVTBAV1.h: Copied from Source/WebCore/platform/graphics/cocoa/AV1UtilitiesCocoa.h. * Source/WebCore/platform/video-codecs/cocoa/RTCVideoDecoderVTBAV1.mm: Added. (BitReader::BitReader): (BitReader::read): (BitReader::readBit): (readULEBSize): (getSequenceHeaderOBU): (parseSequenceHeaderOBU): (computeAV1InputFormat): (av1BufferToCMSampleBuffer): (av1DecompressionOutputCallback): (-[RTCVideoDecoderVTBAV1 init]): (-[RTCVideoDecoderVTBAV1 dealloc]): (-[RTCVideoDecoderVTBAV1 setWidth:height:]): (-[RTCVideoDecoderVTBAV1 decodeData:size:timeStamp:]): (-[RTCVideoDecoderVTBAV1 setCallback:]): (-[RTCVideoDecoderVTBAV1 setError:]): (-[RTCVideoDecoderVTBAV1 releaseDecoder]): (-[RTCVideoDecoderVTBAV1 resetDecompressionSession]): (-[RTCVideoDecoderVTBAV1 configureDecompressionSession]): (-[RTCVideoDecoderVTBAV1 destroyDecompressionSession]): (-[RTCVideoDecoderVTBAV1 flush]): * Source/WebCore/platform/video-codecs/cocoa/WebRTCVideoDecoder.h: Renamed from Source/WebCore/platform/mediastream/cocoa/WebRTCVideoDecoder.h. * Source/WebCore/platform/video-codecs/cocoa/WebRTCVideoDecoder.mm: Renamed from Source/WebCore/platform/mediastream/cocoa/WebRTCVideoDecoder.mm. (WebCore::createAV1VTBDecoder): * Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp: (WebKit::m_preferences): * Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.mm: (WebKit::LibWebRTCCodecsProxy::createLocalDecoder): * Source/WebKit/Shared/GPUProcessConnectionParameters.h: * Source/WebKit/Shared/GPUProcessConnectionParameters.serialization.in: * Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp: (WebKit::GPUProcessProxy::createGPUProcessConnection): * Source/WebKit/UIProcess/GPU/GPUProcessProxy.h: * Source/WebKit/UIProcess/GPU/GPUProcessProxy.messages.in: * Source/WebKit/WebKit.xcodeproj/project.pbxproj: * Source/WebKit/WebProcess/GPU/GPUProcessConnection.cpp: (WebKit::GPUProcessConnection::didInitialize): * Source/WebKit/WebProcess/GPU/GPUProcessConnectionInfo.h: * Source/WebKit/WebProcess/GPU/GPUProcessConnectionInfo.serialization.in: * Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp: (WebKit::createVideoDecoder): (WebKit::LibWebRTCCodecs::videoCodecTypeFromWebCodec): (WebKit::LibWebRTCCodecs::setHasAV1HardwareDecoder): (WebKit::LibWebRTCCodecs::setHasVP9ExtensionSupport): Deleted. * Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.h: (WebKit::LibWebRTCCodecs::hasAV1HardwareDecoder const): (WebKit::LibWebRTCCodecs::hasVP9ExtensionSupport const): Deleted. * Source/WebKit/WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::updatePreferences): Canonical link: https://commits.webkit.org/274002@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes