After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 758987 - hlsdemux: Resync live playlists to the 3rd newest fragment if we fall off the playlist
hlsdemux: Resync live playlists to the 3rd newest fragment if we fall off the...
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
unspecified
Other All
: Normal normal
: 1.7.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-12-03 09:53 UTC by Sebastian Dröge (slomo)
Modified: 2015-12-04 16:07 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
hlsdemux: Resync live playlists to the 3rd newest fragment if we fall off the playlist (2.05 KB, patch)
2015-12-03 09:53 UTC, Sebastian Dröge (slomo)
committed Details | Review

Description Sebastian Dröge (slomo) 2015-12-03 09:53:03 UTC
See commit message
Comment 1 Sebastian Dröge (slomo) 2015-12-03 09:53:07 UTC
Created attachment 316709 [details] [review]
hlsdemux: Resync live playlists to the 3rd newest fragment if we fall off the playlist

As HLS does not provide any way of knowing the server's clock, and we do
buffering of "live" streams, at some point we will fall behind the server in
many cases and would have to advance to a fragment that is not in the playlist
anymore.

Previously we would've just resynced to the next oldest fragment that is still
there, but this causes problems as from this point onwards we would always
fall off the playlist again all the time.
Instead we now resync and move to the 3rd newest fragment like we would do
when starting playback of a live stream.
Comment 2 Sebastian Dröge (slomo) 2015-12-04 16:07:33 UTC
commit 821320fbc4f978388a13d5862cf8872004dd26fd
Author: Sebastian Dröge <sebastian@centricular.com>
Date:   Thu Dec 3 11:46:10 2015 +0200

    hlsdemux: Resync live playlists to the 3rd newest fragment if we fall off the playlist
    
    As HLS does not provide any way of knowing the server's clock, and we do
    buffering of "live" streams, at some point we will fall behind the server in
    many cases and would have to advance to a fragment that is not in the playlist
    anymore.
    
    Previously we would've just resynced to the next oldest fragment that is still
    there, but this causes problems as from this point onwards we would always
    fall off the playlist again all the time.
    Instead we now resync and move to the 3rd newest fragment like we would do
    when starting playback of a live stream.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=758987