[webkit-changes] [WebKit/WebKit] de73a0: Move VideoCodecType to WebCore

youennf noreply at github.com
Thu Aug 29 00:20:40 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: de73a0a263d1fef28da13f544e872aa1873ea28a
      https://github.com/WebKit/WebKit/commit/de73a0a263d1fef28da13f544e872aa1873ea28a
  Author: Youenn Fablet <youenn at apple.com>
  Date:   2024-08-29 (Thu, 29 Aug 2024)

  Changed paths:
    M Source/WebCore/Headers.cmake
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    A Source/WebCore/platform/video-codecs/VideoCodecType.h
    M Source/WebCore/platform/video-codecs/cocoa/WebRTCVideoDecoder.h
    M Source/WebCore/platform/video-codecs/cocoa/WebRTCVideoDecoder.mm
    M Source/WebKit/CMakeLists.txt
    M Source/WebKit/DerivedSources-input.xcfilelist
    M Source/WebKit/DerivedSources.make
    M Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.h
    M Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.messages.in
    M Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.mm
    R Source/WebKit/Shared/VideoCodecType.h
    R Source/WebKit/Shared/VideoCodecType.serialization.in
    M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
    M Source/WebKit/WebKit.xcodeproj/project.pbxproj
    M Source/WebKit/WebProcess/GPU/media/RemoteVideoCodecFactory.cpp
    M Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp
    M Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.h

  Log Message:
  -----------
  Move VideoCodecType to WebCore
rdar://134711158
https://bugs.webkit.org/show_bug.cgi?id=278663

Reviewed by Alex Christensen.

We move more decoder creation in WebRTCVideoDecoder class.
The end goal is to handle frame reordering in this class and properly notify the web process when a decoding task is completed.
The first step is to mvoe VideoCodecType to WebCore and move creation of the decoders inside WebRTCVideoDecoder.

* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/platform/video-codecs/VideoCodecType.h: Added.
* Source/WebCore/platform/video-codecs/cocoa/WebRTCVideoDecoder.h:
* Source/WebCore/platform/video-codecs/cocoa/WebRTCVideoDecoder.mm:
(WebCore::WebRTCVideoDecoder::create):
(WebCore::WebRTCVideoDecoder::createFromLocalDecoder): Deleted.
(WebCore::createAV1VTBDecoder): Deleted.
* Source/WebKit/CMakeLists.txt:
* Source/WebKit/DerivedSources-input.xcfilelist:
* Source/WebKit/DerivedSources.make:
* Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.h:
* Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.messages.in:
* Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.mm:
(WebKit::LibWebRTCCodecsProxy::createLocalDecoder):
(WebKit::validateCodecString):
(WebKit::LibWebRTCCodecsProxy::createDecoder):
(WebKit::validateEncoderConfiguration):
(WebKit::LibWebRTCCodecsProxy::createEncoder):
* Source/WebKit/Shared/VideoCodecType.h: Removed.
* Source/WebKit/Shared/VideoCodecType.serialization.in: Removed.
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Source/WebKit/WebProcess/GPU/media/RemoteVideoCodecFactory.cpp:
(WebKit::shouldUseLocalDecoder):
(WebKit::RemoteVideoCodecFactory::createEncoder):
* Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp:
(WebKit::createVideoDecoder):
(WebKit::LibWebRTCCodecs::videoCodecTypeFromWebCodec):
(WebKit::LibWebRTCCodecs::videoEncoderTypeFromWebCodec):
(WebKit::createVideoEncoder):
(WebKit::LibWebRTCCodecs::createDecoder):
(WebKit::LibWebRTCCodecs::createDecoderAndWaitUntilReady):
(WebKit::LibWebRTCCodecs::createDecoderInternal):
(WebKit::sendFrameToDecode):
(WebKit::toWebRTCCodecType):
(WebKit::LibWebRTCCodecs::createEncoder):
(WebKit::LibWebRTCCodecs::createEncoderAndWaitUntilInitialized):
(WebKit::LibWebRTCCodecs::createEncoderInternal):
* Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.h:

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



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list