[webkit-changes] [WebKit/WebKit] 321003: [MSE] ManagedMediaSource isn't usable in a Dedicat...
Jean-Yves Avenard
noreply at github.com
Fri Mar 15 00:02:14 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 321003e22c50fc0c6997243a1a81cca118d16645
https://github.com/WebKit/WebKit/commit/321003e22c50fc0c6997243a1a81cca118d16645
Author: Jean-Yves Avenard <jya at apple.com>
Date: 2024-03-15 (Fri, 15 Mar 2024)
Changed paths:
A LayoutTests/media/media-source/worker/media-managedmse-worker-expected.txt
A LayoutTests/media/media-source/worker/media-managedmse-worker.html
A LayoutTests/media/media-source/worker/worker.js
M LayoutTests/platform/glib/TestExpectations
M Source/WebCore/Modules/mediasource/MediaSourceHandle.cpp
M Source/WebCore/Modules/mediasource/MediaSourceHandle.h
M Source/WebCore/Modules/mediasource/MediaSourceInterfaceWorker.cpp
Log Message:
-----------
[MSE] ManagedMediaSource isn't usable in a DedicatedWorker
https://bugs.webkit.org/show_bug.cgi?id=270891
rdar://124499286
Reviewed by Youenn Fablet.
The HTMLMediaElement was never attached to the MediaSource (or ManagedMediaSource) running
in the dedicated worker.
While this didn't prevent MediaSource to work, it would have caused the ManagedMediaSource
to never move to the `Open` readyState as the MMS need to check the HTMLMediaElement if
an AirPlay alternative is present.
The MediaSourceHandle uses the ensureOnDispatcher utility to dispatch to the MediaSource
dispatcher, which will not run the function should MediaSource::isClosed() return true.
We need to force the function to run when we attach the HTMLMediaElement which in turn
will move the readyState to `open`.
Added test.
* LayoutTests/media/media-source/worker/media-managedmse-worker-expected.txt: Added.
* LayoutTests/media/media-source/worker/media-managedmse-worker.html: Added.
* LayoutTests/media/media-source/worker/worker.js: Added.
(logToMain):
(onmessage):
* LayoutTests/platform/glib/TestExpectations:
* Source/WebCore/Modules/mediasource/MediaSourceHandle.cpp:
(WebCore::MediaSourceHandle::ensureOnDispatcher const):
* Source/WebCore/Modules/mediasource/MediaSourceHandle.h:
* Source/WebCore/Modules/mediasource/MediaSourceInterfaceWorker.cpp:
(WebCore::MediaSourceInterfaceWorker::attachToElement):
Canonical link: https://commits.webkit.org/276140@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