gstreamer/subprojects/gst-plugins-good/ext/adaptivedemux2
Edward Hervey 98e4d90519 adaptivedemux2: Don't send FLUSH_{START|STOP} when losing sync
The initial goal was to support the case where we are paused watching a live
stream, and when we resume we can no longer resume from the previously
downloaded position. In that case we internally do a flushing seek back to the
"current live head position". This was also extended since to be able to
handle (utterly broken) servers when we can't really figure out where we are
anymore and therefore trigger that lost sync so we can try to get back on our
feet.

This does fix the issue... but results in spurious FLUSH_{START|STOP} events
being sent downstream. While that's fine for regular playback scenarios, it's a
bit of a wild scenario since a lot of pipelines/applications don't expect such
events when it wasn't triggered by downstream/application.

Fixes #3605

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7005>
2024-06-12 06:05:24 +00:00
..
dash dashdemux2: Basic support for container-specific-track-id tag 2024-02-12 10:37:29 +00:00
hls hlsdemux2: Minor refactoring of starting segment check 2024-05-28 14:00:57 +00:00
mss adaptivedemux2: Don't leak taglist 2023-02-03 16:52:24 +00:00
downloadhelper.c adaptivedemux2: Add libsoup tracing debug 2024-03-20 09:48:12 +00:00
downloadhelper.h adaptivedemux2: Define RFC8673_LAST_BYTE_POS 2023-02-03 16:52:22 +00:00
downloadrequest.c adaptivedemux2: Do not submit_transfer when cancelled 2023-10-05 20:55:00 +00:00
downloadrequest.h adaptivedemux2: Do not submit_transfer when cancelled 2023-10-05 20:55:00 +00:00
gstadaptivedemux-period.c adaptivedemux2: Add gst_adaptive_demux_period_add_stream() 2023-02-03 16:52:23 +00:00
gstadaptivedemux-private.h adaptivedemux2: Don't send FLUSH_{START|STOP} when losing sync 2024-06-12 06:05:24 +00:00
gstadaptivedemux-stream.c adaptivedemux2: Only set DISCONT on beginning of fragments 2024-05-28 14:00:57 +00:00
gstadaptivedemux-stream.h adaptivedemux2: Fix download error handling more 2023-02-03 16:52:23 +00:00
gstadaptivedemux-track.c adaptivedemux2: Don't send FLUSH_{START|STOP} when losing sync 2024-06-12 06:05:24 +00:00
gstadaptivedemux-types.h adaptivedemux2: Refactor stream methods into the stream 2022-11-05 04:00:31 +11:00
gstadaptivedemux.c adaptivedemux2: Don't send FLUSH_{START|STOP} when losing sync 2024-06-12 06:05:24 +00:00
gstadaptivedemux.h gst: Move GstQueueArray as GstVecDeque to core 2024-05-06 18:25:42 +00:00
gstadaptivedemuxelement.c soup: Link to libsoup in all cases on non-Linux 2024-02-21 09:27:59 +05:30
gstadaptivedemuxelements.h adaptivedemux2: fix plugin/element init 2022-05-30 13:13:48 +00:00
gstadaptivedemuxutils.c adaptivedemux2: Handle context going away 2024-03-19 13:25:41 +00:00
gstadaptivedemuxutils.h New HLS, DASH and MSS adaptive demuxer elements 2022-04-18 14:11:23 +00:00
gstisoff.c New HLS, DASH and MSS adaptive demuxer elements 2022-04-18 14:11:23 +00:00
gstisoff.h New HLS, DASH and MSS adaptive demuxer elements 2022-04-18 14:11:23 +00:00
meson.build adaptivedemux2: fix build with recent meson 2024-02-21 13:53:40 +00:00
plugin.c adaptivedemux2: fix plugin/element init 2022-05-30 13:13:48 +00:00