summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavformat/rdt.c4
-rw-r--r--libavformat/rdt.h3
-rw-r--r--libavformat/rtsp.c2
3 files changed, 5 insertions, 4 deletions
diff --git a/libavformat/rdt.c b/libavformat/rdt.c
index b696b329da..645b5806cd 100644
--- a/libavformat/rdt.c
+++ b/libavformat/rdt.c
@@ -45,7 +45,7 @@ struct RDTDemuxContext {
};
RDTDemuxContext *
-ff_rdt_parse_open(AVFormatContext *ic, AVStream *st,
+ff_rdt_parse_open(AVFormatContext *ic, int first_stream_of_set_idx,
void *priv_data, RTPDynamicProtocolHandler *handler)
{
RDTDemuxContext *s = av_mallocz(sizeof(RDTDemuxContext));
@@ -53,7 +53,7 @@ ff_rdt_parse_open(AVFormatContext *ic, AVStream *st,
return NULL;
s->ic = ic;
- s->st = st;
+ s->st = ic->streams[first_stream_of_set_idx];
s->prev_set_id = -1;
s->prev_timestamp = -1;
s->parse_packet = handler->parse_packet;
diff --git a/libavformat/rdt.h b/libavformat/rdt.h
index 92c33d5c58..63e4029bc7 100644
--- a/libavformat/rdt.h
+++ b/libavformat/rdt.h
@@ -28,7 +28,8 @@
typedef struct RDTDemuxContext RDTDemuxContext;
-RDTDemuxContext *ff_rdt_parse_open(AVFormatContext *ic, AVStream *st,
+RDTDemuxContext *ff_rdt_parse_open(AVFormatContext *ic,
+ int first_stream_of_set_idx,
void *priv_data,
RTPDynamicProtocolHandler *handler);
void ff_rdt_parse_close(RDTDemuxContext *s);
diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
index 4db95ee8a0..33f0e5539e 100644
--- a/libavformat/rtsp.c
+++ b/libavformat/rtsp.c
@@ -901,7 +901,7 @@ rtsp_open_transport_ctx(AVFormatContext *s, RTSPStream *rtsp_st)
s->ctx_flags |= AVFMTCTX_NOHEADER;
if (rt->transport == RTSP_TRANSPORT_RDT)
- rtsp_st->tx_ctx = ff_rdt_parse_open(s, st,
+ rtsp_st->tx_ctx = ff_rdt_parse_open(s, st->index,
rtsp_st->dynamic_protocol_context,
rtsp_st->dynamic_handler);
else