tsdemux: always take the seek segment stop into account
authorMathieu Duponchelle <mathieu@centricular.com>
Tue, 29 Jan 2019 20:57:44 +0000 (21:57 +0100)
committerJan Schmidt <jan@centricular.com>
Wed, 7 Aug 2019 06:39:21 +0000 (16:39 +1000)
Even if an accurate seek was not requested, we should still
respect the seek stop.

gst/mpegtsdemux/tsdemux.c

index 84f26c3..0ac3661 100644 (file)
@@ -2507,9 +2507,11 @@ calculate_and_push_newsegment (GstTSDemux * demux, TSDemuxStream * stream,
       GstSegment *seg = &base->out_segment;
       GstClockTime base =
           seg->base + seg->position - (seg->start + seg->offset);
+      GstClockTime stop = seg->stop;
+
       gst_segment_init (seg, GST_FORMAT_TIME);
       seg->start = firstts;
-      seg->stop = GST_CLOCK_TIME_NONE;
+      seg->stop = MAX (seg->start, stop);
       seg->position = firstts;
       seg->time = firstts;
       seg->rate = demux->rate;