Branch: refs/heads/webkitglib/2.50
Home: https://github.com/WebKit/WebKit
Commit: 05649a51a6fb9bf9e4b9a7acd539d2896c6e34e8
https://github.com/WebKit/WebKit/commit/05649a51a6fb9bf9e4b9a7acd539d2896c6e34e8
Author: Enrique Ocaña González <[email protected]>
Date: 2025-08-08 (Fri, 08 Aug 2025)
Changed paths:
M
Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp
Log Message:
-----------
Cherry-pick 298239@main (ff888612263c).
https://bugs.webkit.org/show_bug.cgi?id=295289
[MSE][GStreamer] Make fake preroll asynchronous
https://bugs.webkit.org/show_bug.cgi?id=295289
Reviewed by Alicia Boya Garcia.
With the current implementation the whole seek flow as executed in a
single main loop cycle. As a result, the JS app had no chance to spot
that video.seeking attribute is ever set to true. Also some apps listen
to video.onseeking and expects that video.seeking attribute to be true
in such case. That wasn't a valid assumption.
Also, the behaviour isn't the same in <video> elements that are
audio-only as in <audio> elements.
This happens on the Amlogic platform, that doesn't have asynchronous
state changes on its audio sink. Spotify is broken there because of this
problem.
See:
https://github.com/WebPlatformForEmbedded/WPEWebKit/pull/1232
https://github.com/WebPlatformForEmbedded/WPEWebKit/pull/1527
This patch calls didPreroll() also for <video> elements that are
audio-only. Also makes that call async by putting it on the HTML media
element task queue to make sure it is executed after dispatching
'seeking' event to JS so the app has a chance to notice that
HTMLmedia.seeking attribute is 'true'.
Original author: Andrzej Surdej
<[email protected]>
*
Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
(WebCore::MediaPlayerPrivateGStreamerMSE::doSeek): Find the actual final
audio sink. Call didPreroll() asynchronously for any media element having only
audio.
Canonical link: https://commits.webkit.org/298239@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes