[webkit-changes] [WebKit/WebKit] 9faed3: Run MockMediaSource in the GPU Process

Jean-Yves Avenard noreply at github.com
Mon Mar 27 13:52:06 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9faed3b669e65d2fcb6157b6aa8c483500d22547
      https://github.com/WebKit/WebKit/commit/9faed3b669e65d2fcb6157b6aa8c483500d22547
  Author: Jean-Yves Avenard <jya at apple.com>
  Date:   2023-03-27 (Mon, 27 Mar 2023)

  Changed paths:
    M LayoutTests/media/media-source/media-source-minimumupcomingpresentationtime.html
    M Source/WebCore/html/HTMLMediaElement.cpp
    M Source/WebCore/html/HTMLMediaElement.h
    M Source/WebCore/page/DeprecatedGlobalSettings.cpp
    M Source/WebCore/platform/MediaStrategy.cpp
    M Source/WebCore/platform/MediaStrategy.h
    M Source/WebCore/platform/graphics/MediaPlayer.cpp
    M Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.cpp
    M Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.h
    M Source/WebCore/platform/mock/mediasource/MockSourceBufferPrivate.h
    M Source/WebCore/testing/Internals.cpp
    M Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp
    M Source/WebKit/GPUProcess/GPUConnectionToWebProcess.h
    M Source/WebKit/GPUProcess/GPUConnectionToWebProcess.messages.in
    M Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.cpp
    M Source/WebKit/GPUProcess/media/RemoteSourceBufferProxy.cpp
    M Source/WebKit/GPUProcess/media/RemoteSourceBufferProxy.h
    M Source/WebKit/GPUProcess/media/RemoteSourceBufferProxy.messages.in
    M Source/WebKit/WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp
    M Source/WebKit/WebProcess/GPU/media/SourceBufferPrivateRemote.cpp
    M Source/WebKit/WebProcess/GPU/media/SourceBufferPrivateRemote.h
    M Source/WebKit/WebProcess/GPU/media/WebMediaStrategy.cpp
    M Source/WebKit/WebProcess/GPU/media/WebMediaStrategy.h

  Log Message:
  -----------
  Run MockMediaSource in the GPU Process
https://bugs.webkit.org/show_bug.cgi?id=254074
rdar://106858091

Reviewed by Youenn Fablet.

Related changes:
- Fix crashes when running/media/media-source/media-source-minimumupcomingpresentationtime.html,
some missing methods with the RemoteSourceBufferProxy required to run this
test.
- Use C++11 initializers in MockMediaPlayerMediaSource

Covered by existing tests.

* LayoutTests/media/media-source/media-source-minimumupcomingpresentationtime.html: whitespace changes.
* Source/WebCore/html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::resetMediaEngines): Deleted.
* Source/WebCore/html/HTMLMediaElement.h: Delete resetMediaEngines, use mediaStragegy's resetMediaEngines instead.
* Source/WebCore/page/DeprecatedGlobalSettings.cpp: Use resetMediaEngines from mediaStrategy.
(WebCore::DeprecatedGlobalSettings::setAVFoundationEnabled):
(WebCore::DeprecatedGlobalSettings::setGStreamerEnabled):
* Source/WebCore/platform/MediaStrategy.cpp:
(WebCore::MediaStrategy::resetMediaEngines):
(WebCore::MediaStrategy::enableMockMediaSource):
(WebCore::MediaStrategy::mockMediaSourceEnabled const):
(WebCore::MediaStrategy::addMockMediaSourceEngine):
* Source/WebCore/platform/MediaStrategy.h:
* Source/WebCore/platform/graphics/MediaPlayer.cpp:
(buildMediaEnginesVector()): Add MockMSE support to registerRemoteEngine.
* Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.cpp: Use C++11 initializers.
(WebCore::MockMediaPlayerMediaSource::MockMediaPlayerMediaSource):
* Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.h:
* Source/WebCore/platform/mock/mediasource/MockSourceBufferPrivate.h:
* Source/WebCore/testing/Internals.cpp:
(WebCore::Internals::initializeMockMediaSource):
* Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:
(WebKit::GPUConnectionToWebProcess::enableMockMediaSource):
* Source/WebKit/GPUProcess/GPUConnectionToWebProcess.h:
* Source/WebKit/GPUProcess/GPUConnectionToWebProcess.messages.in:
* Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.cpp:
(WebKit::RemoteMediaPlayerProxy::updateCachedState):
* Source/WebKit/GPUProcess/media/RemoteSourceBufferProxy.cpp:
(WebKit::RemoteSourceBufferProxy::minimumUpcomingPresentationTimeForTrackID):
(WebKit::RemoteSourceBufferProxy::setMaximumQueueDepthForTrackID):
* Source/WebKit/GPUProcess/media/RemoteSourceBufferProxy.h:
* Source/WebKit/GPUProcess/media/RemoteSourceBufferProxy.messages.in:
* Source/WebKit/WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp:
(WebKit::MediaPlayerPrivateRemote::load):
* Source/WebKit/WebProcess/GPU/media/SourceBufferPrivateRemote.cpp:
(WebKit::SourceBufferPrivateRemote::minimumUpcomingPresentationTimeForTrackID):
(WebKit::SourceBufferPrivateRemote::setMaximumQueueDepthForTrackID):
* Source/WebKit/WebProcess/GPU/media/SourceBufferPrivateRemote.h:
* Source/WebKit/WebProcess/GPU/media/WebMediaStrategy.cpp:
(WebKit::WebMediaStrategy::enableMockMediaSource):
* Source/WebKit/WebProcess/GPU/media/WebMediaStrategy.h:
(WebKit::WebMediaStrategy::enableMockMediaSource): Add method

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




More information about the webkit-changes mailing list