[FFmpeg-cvslog] r9099 - trunk/libavformat/rtsp.c

benoit subversion
Tue May 22 09:51:39 CEST 2007


Author: benoit
Date: Tue May 22 09:51:39 2007
New Revision: 9099

Log:

Add transport method options
patch by Thijs Vermeir thijs vermeir chez barco com
original thread:
[FFmpeg-devel] [PATCH] Add rtsp options support ( added option)



Modified:
   trunk/libavformat/rtsp.c

Modified: trunk/libavformat/rtsp.c
==============================================================================
--- trunk/libavformat/rtsp.c	(original)
+++ trunk/libavformat/rtsp.c	Tue May 22 09:51:39 2007
@@ -847,7 +847,7 @@ static int rtsp_read_header(AVFormatCont
     RTSPHeader reply1, *reply = &reply1;
     unsigned char *content = NULL;
     RTSPStream *rtsp_st;
-    int protocol_mask;
+    int protocol_mask = 0;
     AVStream *st;
 
     /* extract hostname and port */
@@ -868,9 +868,18 @@ static int rtsp_read_header(AVFormatCont
             if (option_list)
                 *(option_list++) = 0;
             /* handle the options */
+            if (strcmp(option, "udp") == 0)
+                protocol_mask = (1<< RTSP_PROTOCOL_RTP_UDP);
+            else if (strcmp(option, "multicast") == 0)
+                protocol_mask = (1<< RTSP_PROTOCOL_RTP_UDP_MULTICAST);
+            else if (strcmp(option, "tcp") == 0)
+                protocol_mask = (1<< RTSP_PROTOCOL_RTP_TCP);
         }
     }
 
+    if (!protocol_mask)
+        protocol_mask = rtsp_default_protocols;
+
     /* open the tcp connexion */
     snprintf(tcpname, sizeof(tcpname), "tcp://%s:%d", host, port);
     if (url_open(&rtsp_hd, tcpname, URL_RDWR) < 0)
@@ -901,8 +910,6 @@ static int rtsp_read_header(AVFormatCont
         goto fail;
     }
 
-    protocol_mask = rtsp_default_protocols;
-
     /* for each stream, make the setup request */
     /* XXX: we assume the same server is used for the control of each
        RTSP stream */




More information about the ffmpeg-cvslog mailing list