rtspsrc: fix requested range

When the server replies with a range "now-", it is presumed to
be a "live" stream and we should request a similar range.

This was the case prior to my refactoring to make use of
gst_rtsp_range_to_string in 5f1a732bc7,
this commit restores the behaviour for that case.
This commit is contained in:
Mathieu Duponchelle 2020-02-11 21:52:41 +01:00 committed by GStreamer Merge Bot
parent 57b0522cd7
commit 1471100f37

View file

@ -8378,10 +8378,20 @@ gen_range_header (GstRTSPSrc * src, GstSegment * segment)
g_date_time_unref (prime_epoch);
} else {
range.unit = GST_RTSP_RANGE_NPT;
range.min.type = GST_RTSP_TIME_SECONDS;
range.min.seconds = begin_seconds;
range.max.type = GST_RTSP_TIME_SECONDS;
range.max.seconds = end_seconds;
if (src->range && src->range->min.type == GST_RTSP_TIME_NOW) {
range.min.type = GST_RTSP_TIME_NOW;
} else {
range.min.type = GST_RTSP_TIME_SECONDS;
range.min.seconds = begin_seconds;
}
if (src->range && src->range->max.type == GST_RTSP_TIME_END) {
range.max.type = GST_RTSP_TIME_END;
} else {
range.max.type = GST_RTSP_TIME_SECONDS;
range.max.seconds = end_seconds;
}
}
/* Don't set end bounds when not required to */