dashdemux: fix off by one seeking issue

When seeking to the last second of a mpd it would reject the seek
because the comparison was < instead of <=

This fails the important use case of seeking to the end of a file
to play it back in reverse from the end
This commit is contained in:
Thiago Santos 2015-08-16 08:49:35 -03:00
parent 7ea4a66b9f
commit ae5befef5f

View file

@ -1187,10 +1187,13 @@ gst_dash_demux_seek (GstAdaptiveDemux * demux, GstEvent * seek)
period = list->data;
current_pos = period->start;
current_period = period->number;
GST_DEBUG_OBJECT (demux, "Looking at period %u pos %" GST_TIME_FORMAT,
current_period, GST_TIME_ARGS (current_pos));
GST_DEBUG_OBJECT (demux, "Looking at period %u) start:%"
GST_TIME_FORMAT " - duration:%"
GST_TIME_FORMAT ") for position %" GST_TIME_FORMAT,
current_period, GST_TIME_ARGS (current_pos),
GST_TIME_ARGS (period->duration), GST_TIME_ARGS (target_pos));
if (current_pos <= target_pos
&& target_pos < current_pos + period->duration) {
&& target_pos <= current_pos + period->duration) {
break;
}
}