diff rtsp.c @ 2094:b4d5d85d6d0b libavformat

Add support for options patch by Thijs Vermeir thijs vermeir chez barco com original thread: [FFmpeg-devel] [PATCH] Add rtsp options support ( added option)
author benoit
date Tue, 22 May 2007 07:47:04 +0000
parents 9f93361c3dc2
children 2daf4caeba36
line wrap: on
line diff
--- a/rtsp.c	Mon May 21 16:08:03 2007 +0000
+++ b/rtsp.c	Tue May 22 07:47:04 2007 +0000
@@ -841,7 +841,7 @@
                             AVFormatParameters *ap)
 {
     RTSPState *rt = s->priv_data;
-    char host[1024], path[1024], tcpname[1024], cmd[2048];
+    char host[1024], path[1024], tcpname[1024], cmd[2048], *option_list, *option;
     URLContext *rtsp_hd;
     int port, i, j, ret, err;
     RTSPHeader reply1, *reply = &reply1;
@@ -856,6 +856,21 @@
     if (port < 0)
         port = RTSP_DEFAULT_PORT;
 
+    /* search for options */
+    option_list = strchr(path, '?');
+    if (option_list) {
+        /* remove the options from the path */
+        *option_list++ = 0;
+        while(option_list) {
+            /* move the option pointer */
+            option = option_list;
+            option_list = strchr(option_list, '&');
+            if (option_list)
+                *(option_list++) = 0;
+            /* handle the options */
+        }
+    }
+
     /* open the tcp connexion */
     snprintf(tcpname, sizeof(tcpname), "tcp://%s:%d", host, port);
     if (url_open(&rtsp_hd, tcpname, URL_RDWR) < 0)