OSDN Git Service

Change function prototype from taking an AVStream to taking an index to the
authorRonald S. Bultje <rsbultje@gmail.com>
Sun, 30 Nov 2008 20:39:16 +0000 (20:39 +0000)
committerRonald S. Bultje <rsbultje@gmail.com>
Sun, 30 Nov 2008 20:39:16 +0000 (20:39 +0000)
stream itself, plus a name change to signify that there may be multiple
AVStreams per RDT set. See discussion in "[PATCH] RDT/Realmedia patches #2"
thread on ML.

Originally committed as revision 15962 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/rdt.c
libavformat/rdt.h
libavformat/rtsp.c

index b696b32..645b580 100644 (file)
@@ -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;
index 92c33d5..63e4029 100644 (file)
@@ -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);
index 4db95ee..33f0e55 100644 (file)
@@ -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