summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libavformat/rtspdec.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/libavformat/rtspdec.c b/libavformat/rtspdec.c
index cdcef38..a7a7e2d 100644
--- a/libavformat/rtspdec.c
+++ b/libavformat/rtspdec.c
@@ -67,21 +67,18 @@ static int rtsp_read_play(AVFormatContext *s)
if (reply->status_code != RTSP_STATUS_OK) {
return -1;
}
- if (rt->transport == RTSP_TRANSPORT_RTP) {
+ if (rt->transport == RTSP_TRANSPORT_RTP &&
+ reply->range_start != AV_NOPTS_VALUE) {
for (i = 0; i < rt->nb_rtsp_streams; i++) {
RTSPStream *rtsp_st = rt->rtsp_streams[i];
RTPDemuxContext *rtpctx = rtsp_st->transport_priv;
AVStream *st = NULL;
- if (!rtpctx)
+ if (!rtpctx || rtsp_st->stream_index < 0)
continue;
- if (rtsp_st->stream_index >= 0)
- st = s->streams[rtsp_st->stream_index];
- if (reply->range_start != AV_NOPTS_VALUE) {
- if (st)
+ st = s->streams[rtsp_st->stream_index];
rtpctx->range_start_offset =
av_rescale_q(reply->range_start, AV_TIME_BASE_Q,
st->time_base);
- }
}
}
}
OpenPOWER on IntegriCloud