[webkit-changes] [WebKit/WebKit] 611380: [GStreamer][MSE] Reinstall matroskademuxForceSegme...
Enrique Ocaña González
noreply at github.com
Fri Feb 24 04:41:18 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 61138013faef34e38bdfec03db5e23790bbeaced
https://github.com/WebKit/WebKit/commit/61138013faef34e38bdfec03db5e23790bbeaced
Author: Enrique Ocaña González <eocanha at igalia.com>
Date: 2023-02-24 (Fri, 24 Feb 2023)
Changed paths:
M Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp
Log Message:
-----------
[GStreamer][MSE] Reinstall matroskademuxForceSegmentStartToEqualZero probe on relinking
https://bugs.webkit.org/show_bug.cgi?id=252480
When a matroskademux src pad is relinked (because the old one was removed), the
probe that corrects the segment start is lost with the disappearing pad and
never reinstalled on the replacing one. This can cause issues, for instance,
while doing trick playback in reverse on Broadcom devices, which don't need
parsers.
During trickplay, pads between demux and appsink elements are relinked.
GstBuffers related to trick playback are rejected/clipped by appsink (more
precisely, by its base class: GstBaseSink), because GstSegment start position
value don't match to those GstBuffers.
See: https://github.com/WebPlatformForEmbedded/WPEWebKit/pull/1033
Co-authored by: Jacek Skiba <jacek.skiba at consult.red>
Reviewed by Alicia Boya Garcia.
* Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:
(WebCore::AppendPipeline::recycleTrackForPad): Reinstall the probe.
Canonical link: https://commits.webkit.org/260794@main
More information about the webkit-changes
mailing list