diff rtsp.c @ 3905:91987686113d libavformat

Implement RDT-specific data parsing routines. After these changes, simple playback of RTSP/RDT streams should work. See discussion in "Realmedia patch" thread on ML.
author rbultje
date Sun, 07 Sep 2008 01:25:47 +0000
parents 52e586c04402
children 1879eab34f88
line wrap: on
line diff
--- a/rtsp.c	Sun Sep 07 01:24:01 2008 +0000
+++ b/rtsp.c	Sun Sep 07 01:25:47 2008 +0000
@@ -1326,7 +1326,10 @@
 
     /* get next frames from the same RTP packet */
     if (rt->cur_rtp) {
-        ret = rtp_parse_packet(rt->cur_rtp, pkt, NULL, 0);
+        if (rt->server_type == RTSP_SERVER_RDT)
+            ret = ff_rdt_parse_packet(rt->cur_rtp, pkt, NULL, 0);
+        else
+            ret = rtp_parse_packet(rt->cur_rtp, pkt, NULL, 0);
         if (ret == 0) {
             rt->cur_rtp = NULL;
             return 0;
@@ -1353,7 +1356,10 @@
     }
     if (len < 0)
         return len;
-    ret = rtp_parse_packet(rtsp_st->rtp_ctx, pkt, buf, len);
+    if (rt->server_type == RTSP_SERVER_RDT)
+        ret = ff_rdt_parse_packet(rtsp_st->rtp_ctx, pkt, buf, len);
+    else
+        ret = rtp_parse_packet(rtsp_st->rtp_ctx, pkt, buf, len);
     if (ret < 0)
         goto redo;
     if (ret == 1) {