GNOME Bugzilla – Bug 723268
hlsdemux: Does not take into account stop time of seek events
Last modified: 2014-03-30 19:22:15 UTC
The hlsdemux does not take into account end time of seek events. You can easily reproduce using: gst-validate-1.0 --set-scenario seek_forward playbin uri=http://devimages.apple.com/iphone/samples/bipbop/gear4/prog_index.m3u8 And will notice that the last seek has stop=30 * GST_SECOND but the video keeps running until the end. No code implements that logic in hlsdemux.
And of course the decoders can't handle that either because they might be replaced since the seek event already. hlsdemux should keep the stop time in its segment that is sent to the downstream elements, but itself also stop at a fragment that starts after the stop time.
commit d2880dce68591d9b85ba777abcb4f4e4f6baa70c Author: Sebastian Dröge <sebastian@centricular.com> Date: Thu Mar 6 23:14:10 2014 +0100 hlsdemux: Implement proper segment handling https://bugzilla.gnome.org/show_bug.cgi?id=695846 https://bugzilla.gnome.org/show_bug.cgi?id=723268
And a bit more commit 89ca4535ebdf6272f7767934d66052d160327313 Author: Sebastian Dröge <sebastian@centricular.com> Date: Sun Mar 30 18:12:07 2014 +0200 hlsdemux: Go EOS if the end of the segment is reached