[webkit-changes] [WebKit/WebKit] 910edd: [MSE][GStreamer] Skip waiting for preroll when aud...
Enrique Ocaña González
noreply at github.com
Wed Oct 4 05:13:40 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 910eddedfb3559fc9ed8829ae84efad7980978a9
https://github.com/WebKit/WebKit/commit/910eddedfb3559fc9ed8829ae84efad7980978a9
Author: Enrique Ocaña González <eocanha at igalia.com>
Date: 2023-10-04 (Wed, 04 Oct 2023)
Changed paths:
M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h
M Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp
M Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.h
Log Message:
-----------
[MSE][GStreamer] Skip waiting for preroll when audio sink is non-async
https://bugs.webkit.org/show_bug.cgi?id=262492
Reviewed by Alicia Boya Garcia.
When the audio sink is non-async, the GST_STATE_CHANGE_ASYNC change will never happen. Under
these circumstances, the asyncStateChangeDone() code will never run. This patch calls that
method manually, fixing the issue. The method has been now given a better name (didPreroll()),
which better expresses the semantics.
Original author: Pawel Lampe <pawel.lampe at gmail.com>
See: https://github.com/WebPlatformForEmbedded/WPEWebKit/pull/1195
* Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
(WebCore::MediaPlayerPrivateGStreamerMSE::doSeek): Manually call asyncStateChangeDone() when the audio sink is non-async.
* Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::handleMessage): asyncStateChangeDone() renamed to didPreroll().
* Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
(WebCore::MediaPlayerPrivateGStreamer::didPreroll): Old asyncStateChangeDone().
(WebCore::MediaPlayerPrivateGStreamer::asyncStateChangeDone): Deleted.
* Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
(WebCore::MediaPlayerPrivateGStreamerMSE::doSeek): asyncStateChangeDone() renamed to didPreroll().
(WebCore::MediaPlayerPrivateGStreamerMSE::didPreroll): Old asyncStateChangeDone().
(WebCore::MediaPlayerPrivateGStreamerMSE::asyncStateChangeDone): Deleted.
* Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.h:
Canonical link: https://commits.webkit.org/268845@main
More information about the webkit-changes
mailing list