Commit 607fa48a authored by Wim Taymans's avatar Wim Taymans
Browse files

gst-libs/gst/rtsp/gstrtsptransport.c: Add rdt manager for rdt transport.

Original commit message from CVS:
* gst-libs/gst/rtsp/gstrtsptransport.c: (gst_rtsp_transport_parse):
Add rdt manager for rdt transport.
Fix parsing of RDT transport.
parent 2f6e0e7b
2007-08-03 Wim Taymans <wim.taymans@gmail.com>
* gst-libs/gst/rtsp/gstrtsptransport.c: (gst_rtsp_transport_parse):
Add rdt manager for rdt transport.
Fix parsing of RDT transport.
2007-08-03 Jan Schmidt <thaytan@mad.scientist.com> 2007-08-03 Jan Schmidt <thaytan@mad.scientist.com>
   
* configure.ac: * configure.ac:
...@@ -87,8 +87,8 @@ typedef struct ...@@ -87,8 +87,8 @@ typedef struct
static const GstRTSPTransMap transports[] = { static const GstRTSPTransMap transports[] = {
{"rtp", GST_RTSP_TRANS_RTP, "application/x-rtp", {"gstrtpbin", "rtpdec"}}, {"rtp", GST_RTSP_TRANS_RTP, "application/x-rtp", {"gstrtpbin", "rtpdec"}},
{"x-real-rdt", GST_RTSP_TRANS_RDT, "application/x-rdt", {NULL, NULL}}, {"x-real-rdt", GST_RTSP_TRANS_RDT, "application/x-rdt", {"rdtmanager", NULL}},
{"x-pn-tng", GST_RTSP_TRANS_RDT, "application/x-rdt", {NULL, NULL}}, {"x-pn-tng", GST_RTSP_TRANS_RDT, "application/x-rdt", {"rdtmanager", NULL}},
{NULL, GST_RTSP_TRANS_UNKNOWN, NULL, {NULL, NULL}} {NULL, GST_RTSP_TRANS_UNKNOWN, NULL, {NULL, NULL}}
}; };
...@@ -358,7 +358,7 @@ gst_rtsp_transport_parse (const gchar * str, GstRTSPTransport * transport) ...@@ -358,7 +358,7 @@ gst_rtsp_transport_parse (const gchar * str, GstRTSPTransport * transport)
{ {
gchar **split, *down, **transp = NULL; gchar **split, *down, **transp = NULL;
guint transport_params = 0; guint transport_params = 0;
gint i; gint i, count;
g_return_val_if_fail (transport != NULL, GST_RTSP_EINVAL); g_return_val_if_fail (transport != NULL, GST_RTSP_EINVAL);
g_return_val_if_fail (str != NULL, GST_RTSP_EINVAL); g_return_val_if_fail (str != NULL, GST_RTSP_EINVAL);
...@@ -385,14 +385,21 @@ gst_rtsp_transport_parse (const gchar * str, GstRTSPTransport * transport) ...@@ -385,14 +385,21 @@ gst_rtsp_transport_parse (const gchar * str, GstRTSPTransport * transport)
break; break;
transport->trans = transports[i].mode; transport->trans = transports[i].mode;
for (i = 0; profiles[i].name; i++) if (transport->trans != GST_RTSP_TRANS_RDT) {
if (strcmp (transp[1], profiles[i].name) == 0) for (i = 0; profiles[i].name; i++)
break; if (strcmp (transp[1], profiles[i].name) == 0)
transport->profile = profiles[i].profile; break;
transport->profile = profiles[i].profile;
count = 2;
} else {
/* RDT has transport/lower_transport */
transport->profile = GST_RTSP_PROFILE_AVP;
count = 1;
}
if (transp[2] != NULL) { if (transp[count] != NULL) {
for (i = 0; ltrans[i].name; i++) for (i = 0; ltrans[i].name; i++)
if (strcmp (transp[2], ltrans[i].name) == 0) if (strcmp (transp[count], ltrans[i].name) == 0)
break; break;
transport->lower_transport = ltrans[i].ltrans; transport->lower_transport = ltrans[i].ltrans;
} else { } else {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment