2008-11-11 Wim Taymans <wim.taymans@collabora.co.uk>
+ * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_create_transports_string),
+ (gst_rtspsrc_change_state):
+ Only send one transport at a time for improved compatibility with some
+ broken servers. See #537832.
+
+2008-11-11 Wim Taymans <wim.taymans@collabora.co.uk>
+
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_do_seek),
(gst_rtspsrc_perform_seek):
Only pause/play in the seek handler when the source was playing.
if (add_udp_str)
g_string_append (result, "/UDP");
g_string_append (result, ";unicast;client_port=%%u1-%%u2");
- }
- if (protocols & GST_RTSP_LOWER_TRANS_UDP_MCAST) {
+ } else if (protocols & GST_RTSP_LOWER_TRANS_UDP_MCAST) {
GST_DEBUG_OBJECT (src, "adding UDP multicast");
/* we don't have to allocate any UDP ports yet, if the selected transport
if (add_udp_str)
g_string_append (result, "/UDP");
g_string_append (result, ";multicast");
- }
- if (protocols & GST_RTSP_LOWER_TRANS_TCP) {
+ } else if (protocols & GST_RTSP_LOWER_TRANS_TCP) {
GST_DEBUG_OBJECT (src, "adding TCP");
if (result->len > 0)
open_failed:
{
+ GST_DEBUG_OBJECT (rtspsrc, "open failed");
return GST_STATE_CHANGE_FAILURE;
}
}