summaryrefslogtreecommitdiffstats
path: root/gst/rtsp
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@gmail.com>2005-08-18 20:14:46 +0000
committerWim Taymans <wim.taymans@gmail.com>2005-08-18 20:14:46 +0000
commit3e064477cf6aef0a38c23d67bf8628869f3cf7f9 (patch)
tree5d1b5115f3a8c8a0898b5f0322ba58fd15555b2a /gst/rtsp
parent519f58bb6b618f1603b91ebb02290aeb8560769a (diff)
gst/rtp/gstrtpamrdec.c: Fix up amr depayloader a bit.
Original commit message from CVS: * gst/rtp/gstrtpamrdec.c: (gst_rtpamrdec_init), (gst_rtpamrdec_chain): Fix up amr depayloader a bit. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_send), (gst_rtspsrc_open), (gst_rtspsrc_close), (gst_rtspsrc_play): Look for options result in Public and Allow header fields.. spec says Allow but some servers return Public...
Diffstat (limited to 'gst/rtsp')
-rw-r--r--gst/rtsp/gstrtspsrc.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/gst/rtsp/gstrtspsrc.c b/gst/rtsp/gstrtspsrc.c
index 1e04ef7c..5ac136a6 100644
--- a/gst/rtsp/gstrtspsrc.c
+++ b/gst/rtsp/gstrtspsrc.c
@@ -581,9 +581,15 @@ gst_rtspsrc_open (GstRTSPSrc * src)
gchar **options;
gint i;
- rtsp_message_get_header (&response, RTSP_HDR_PUBLIC, &respoptions);
- if (!respoptions)
- goto no_options;
+ /* Try Allow Header first */
+ rtsp_message_get_header (&response, RTSP_HDR_ALLOW, &respoptions);
+ if (!respoptions) {
+ /* Then maybe Public Header... */
+ rtsp_message_get_header (&response, RTSP_HDR_PUBLIC, &respoptions);
+ if (!respoptions) {
+ goto no_options;
+ }
+ }
/* parse options */
options = g_strsplit (respoptions, ",", 0);