[Bug 724983] New: hlsdemux: Invalid timestamps generated for live streams and otherwise broken for live streams

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Sat Feb 22 14:58:56 PST 2014


https://bugzilla.gnome.org/show_bug.cgi?id=724983
  GStreamer | gst-plugins-bad | git

           Summary: hlsdemux: Invalid timestamps generated for live
                    streams and otherwise broken for live streams
    Classification: Platform
           Product: GStreamer
           Version: git
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gst-plugins-bad
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: slomo at coaxion.net
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


a) Currently hlsdemux generates timestamps by summing all the fragment
durations in the playlist. Only that this will lead to invalid timestamps
because the playlists are like a ringbuffer, only having a few fragments and
not all since the beginning of time. We could keep all fragments around forever
or try to assign a timestamp to the beginning of the playlist by looking at the
sequence numbers of the fragments, but this is going to fail once we e.g.
switch from one bitrate to another. Also it will fail if after a playlist
update we have no old fragments around... we can't know how much gap there was
in between.

b) If we pause the pipeline, we will lack behind... and can easily get to a
point where all fragments have disappeared already. We need to resync then, and
probably always resync whenever we unpause.

c) Due to us and the sender having different clocks, we will run out of sync at
some point. Either being in the future for the sender (downloading fragments
that don't exist yet) or too far in the past (downloading fragments that
disappeared already). We need some resync logic for that. Probably rather
unlikely case as it requires a lot of clock drift and everybody using HLS for
such long-term live streaming doesn't deserve something else ;)


a) and b) definitely need to be fixed, c) would be bonus if someone is bored :)

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list