GNOME Bugzilla – Bug 766650
adaptivedemux: Set DISCONT on startup and after seeks
Last modified: 2016-07-25 15:51:23 UTC
See commit
Created attachment 328176 [details] [review] adaptivedemux: Set DISCONT on startup and after seeks Initial buffers after STREAM_START and seeks should always have the DISCONT flag set.
Review of attachment 328176 [details] [review]: Looks good, just some minor comments. ::: gst-libs/gst/adaptivedemux/gstadaptivedemux.c @@ +1041,3 @@ stream->pending_segment = gst_event_new_segment (&stream->segment); gst_event_set_seqnum (stream->pending_segment, demux->priv->segment_seqnum); + stream->discont = TRUE; This seems to be redundant, it should already be true after the change above. @@ +1467,3 @@ gst_event_unref (seg_evt); + /* Make sure the first buffer after a seek has the discont flag */ + stream->discont = TRUE; Is it worth verifying if start/stop was set to avoid sending a discont if position didn't change?
Review of attachment 328176 [details] [review]: ::: gst-libs/gst/adaptivedemux/gstadaptivedemux.c @@ +1044,1 @@ } Which change are you talking about ? @@ +1467,3 @@ gst_event_unref (seg_evt); + /* Make sure the first buffer after a seek has the discont flag */ + stream->discont = TRUE; Good idea
(In reply to Edward Hervey from comment #3) > Review of attachment 328176 [details] [review] [review]: > > ::: gst-libs/gst/adaptivedemux/gstadaptivedemux.c > @@ +1044,1 @@ > } > > Which change are you talking about ? The hunk above, line 881 :)
Created attachment 328868 [details] [review] adaptivedemux: Set DISCONT on startup and after seeks Initial buffers after STREAM_START and seeks should always have the DISCONT flag set.
Created attachment 328869 [details] [review] adaptivedemux: Set DISCONT on startup, resume and after seeks Initial buffers after STREAM_START and seeks should always have the DISCONT flag set.
Comment on attachment 328868 [details] [review] adaptivedemux: Set DISCONT on startup and after seeks Also setting discont when resuming a stream now.
Attachment 328869 [details] pushed as 9296b26 - adaptivedemux: Set DISCONT on startup, resume and after seeks
This commit made the hls_demux test a bit racy. The commit seems OK though, so it's probably the test: elements/adaptive_demux_common.c:260:F:basicTest:testSeekUpdateStopPosition:0: size validation failed, expected 33840 received 22560