summaryrefslogtreecommitdiffstats
path: root/gst/rtsp/gstrtspsrc.c
Commit message (Collapse)AuthorAgeFilesLines
...
* gst/rtsp/gstrtspsrc.c: Pause the RTSP stream before doing a new play request.Eric Zhang2008-11-101-0/+5
| | | | | | | | | | Original commit message from CVS: Based on patch by: Eric Zhang <chao.zhang at access-company dot com> * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_perform_seek), (gst_rtspsrc_stream_configure_udp_sink): Pause the RTSP stream before doing a new play request. Make sure that adding the udpsinks does not cause the rtspsrc to become a sink. Fixes #559547.
* gst/rtsp/gstrtspsrc.c: Return TRUE instead of FALSE from the event handler ↵Wim Taymans2008-10-091-1/+1
| | | | | | | | | when we swallowed the event. Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_handle_src_event): Return TRUE instead of FALSE from the event handler when we swallowed the event.
* gst/rtsp/gstrtspsrc.c: Don't assume the server supports PAUSE by default. ↵Wim Taymans2008-09-251-3/+3
| | | | | | | | Fixes #551048. Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_parse_methods): Don't assume the server supports PAUSE by default. Fixes #551048.
* gst/rtsp/gstrtspsrc.c: Handle the case where we cannot do desribe or when ↵Wim Taymans2008-09-231-0/+15
| | | | | | | | | the describe result does not contain a vali... Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_open): Handle the case where we cannot do desribe or when the describe result does not contain a valid SDP message.
* gst/rtsp/: Add google RTSP extension, it can only handle udp and responds ↵Wim Taymans2008-08-201-25/+47
| | | | | | | | | | | | | | | | | | | | | | | | | with unsupported if we do anything else. Fi... Original commit message from CVS: * gst/rtsp/Makefile.am: * gst/rtsp/gstrtsp.c: (plugin_init): * gst/rtsp/gstrtspgoogle.c: (gst_rtsp_google_before_send), (gst_rtsp_google_after_send), (gst_rtsp_google_get_transports), (_do_init), (gst_rtsp_google_base_init), (gst_rtsp_google_class_init), (gst_rtsp_google_init), (gst_rtsp_google_finalize), (gst_rtsp_google_change_state), (gst_rtsp_google_extension_init): * gst/rtsp/gstrtspgoogle.h: Add google RTSP extension, it can only handle udp and responds with unsupported if we do anything else. Fixes #546465. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_connection_send), (gst_rtspsrc_connection_receive), (gst_rtspsrc_loop_send_cmd), (gst_rtspsrc_create_transports_string), (gst_rtspsrc_setup_streams), (gst_rtspsrc_open), (gst_rtspsrc_close), (gst_rtspsrc_pause): Make transport setup code a bit better using GString. Add some more debug. Check for closed connections before doing anything on them.
* gst/rtsp/gstrtspsrc.c: Don't try to configure RTCP back to the server when ↵Wim Taymans2008-08-201-0/+10
| | | | | | | | | the server did not give us a valid port nu... Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_udp_sink): Don't try to configure RTCP back to the server when the server did not give us a valid port number.
* gst/rtsp/gstrtspsrc.c: Improve udp port setup. Fixes #545710.Aurelien Grimaud2008-08-051-39/+51
| | | | | | | Original commit message from CVS: Patch by: Aurelien Grimaud <gstelzz at yahoo dot fr> * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_alloc_udp_ports): Improve udp port setup. Fixes #545710.
* gst/rtp/gstrtpvrawdepay.c: Include stdlib.h for atoi().Stefan Kost2008-07-071-1/+1
| | | | | | | | Original commit message from CVS: * gst/rtp/gstrtpvrawdepay.c: Include stdlib.h for atoi(). * gst/rtsp/gstrtspsrc.c: Use floating point math for latencies < 0 sec in log output.
* gst/rtsp/gstrtspsrc.c: Set udpsrc for receiving data from multicast groups ↵Wim Taymans2008-06-121-2/+2
| | | | | | | | | to PAUSED instead of leaving them in READY... Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_mcast): Set udpsrc for receiving data from multicast groups to PAUSED instead of leaving them in READY. Fixes #537832.
* gst/rtsp/gstrtspsrc.c: Use the new gst_rtsp_connection_get_ip() to access ↵Peter Kjellerstedt2008-06-041-2/+3
| | | | | | | | | the IP address of a GstRTSPConnection since... Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_udp_sink): Use the new gst_rtsp_connection_get_ip() to access the IP address of a GstRTSPConnection since it is a private member.
* Don't use gst_element_get_pad(), it's a bad method.Wim Taymans2008-05-211-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: * ext/gconf/gstgconfaudiosrc.c: (gst_gconf_audio_src_reset), (do_toggle_element): * ext/gconf/gstgconfvideosink.c: (gst_gconf_video_sink_reset), (do_toggle_element): * ext/gconf/gstgconfvideosrc.c: (gst_gconf_video_src_reset), (do_toggle_element): * ext/gconf/gstswitchsink.c: (gst_switch_commit_new_kid): * ext/hal/gsthalaudiosink.c: (gst_hal_audio_sink_reset), (do_toggle_element): * ext/hal/gsthalaudiosrc.c: (gst_hal_audio_src_reset), (do_toggle_element): * gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_reset), (gst_auto_audio_sink_detect): * gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_reset), (gst_auto_video_sink_detect): * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_stream_free), (gst_rtspsrc_stream_configure_udp), (gst_rtspsrc_stream_configure_udp_sink), (gst_rtspsrc_skip_lws), (gst_rtspsrc_unskip_lws), (gst_rtspsrc_skip_commas), (gst_rtspsrc_skip_item), (gst_rtsp_decode_quoted_string), (gst_rtspsrc_parse_digest_challenge), (gst_rtspsrc_parse_auth_hdr): * tests/icles/videocrop-test.c: (test_with_caps), (video_crop_get_test_caps): Don't use gst_element_get_pad(), it's a bad method.
* gst/rtsp/gstrtspsrc.c: Support Digest authentication. Fixes #532065.Wouter Cloetens2008-05-081-6/+127
| | | | | | | | | | | | Original commit message from CVS: Based on patch by: Wouter Cloetens <wouter at mind be> * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_skip_lws), (gst_rtspsrc_unskip_lws), (gst_rtspsrc_skip_commas), (gst_rtspsrc_skip_item), (gst_rtsp_decode_quoted_string), (gst_rtspsrc_parse_digest_challenge), (gst_rtspsrc_parse_auth_hdr), (gst_rtspsrc_setup_auth): Support Digest authentication. Fixes #532065.
* gst/rtsp/gstrtspsrc.c: Don't leak file descriptors on error. Fixes #531532.Sjoerd Simons2008-05-051-0/+4
| | | | | | | Original commit message from CVS: Patch by: Sjoerd Simons <sjoerd at luon dot net> * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_open): Don't leak file descriptors on error. Fixes #531532.
* gst/rtsp/gstrtspsrc.c: Ref caps as the return value for the request_pt_map ↵Wim Taymans2008-04-211-4/+3
| | | | | | | | | | signal. Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (request_pt_map), (gst_rtspsrc_configure_caps): Ref caps as the return value for the request_pt_map signal. Remove some caps weirdness when configuring a stream. See #528245.
* gst/rtsp/gstrtspsrc.c: Call WSAStartup() and WSACleanup before using the ↵Ole André Vadla Ravnås2008-03-171-0/+16
| | | | | | | | | | | Winsock API. Original commit message from CVS: Patch by: Ole André Vadla Ravnås <ole.andre.ravnas@tandberg.com> * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_finalize): Call WSAStartup() and WSACleanup before using the Winsock API. See #520808.
* gst/rtsp/gstrtspsrc.c: Post the server response code in an error message ↵Wim Taymans2008-02-221-2/+10
| | | | | | | | | instead of a generic 'error' message. Fixes ... Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_setup_streams): Post the server response code in an error message instead of a generic 'error' message. Fixes #517237.
* gst/rtsp/gstrtspsrc.c: Init values to -1 instead of the default 0 value.Wim Taymans2008-02-181-0/+2
| | | | | | | Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_create_stream): Init values to -1 instead of the default 0 value. Fixes #516524.
* gst/rtsp/gstrtspsrc.c: Include unistd.h only if HAVE_UNISTD_H is definedSébastien Moutte2008-02-071-0/+2
| | | | | | | | | | | | | | | | | Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: Include unistd.h only if HAVE_UNISTD_H is defined * win32/common/config.h.in: * win32/common/config.h: Define socklen_t as it seems it's not defined in default Visual Studio headers. * win32/vs6/libgstalpha.dsp: * win32/vs6/libgstapetag.dsp: * win32/vs6/libgstavi.dsp: * win32/vs6/libgstrtp.dsp: * win32/vs6/libgstrtsp.dsp: * win32/vs6/libgstvideomixer.dsp: Update project file dependencies and add new source files
* gst/rtsp/gstrtspsrc.c: Use g_ascii_strtoll() instead of atoll, which is only ↵Tim-Philipp Müller2008-01-281-3/+3
| | | | | | | | | available in C99. Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_parse_rtpinfo): Use g_ascii_strtoll() instead of atoll, which is only available in C99.
* As found by: Tommi Myöhänen <ext-tommi.myohanen nokia com>Wim Taymans2008-01-141-1/+1
| | | | | | | Original commit message from CVS: As found by: Tommi Myöhänen <ext-tommi.myohanen nokia com> * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_parse_rtpinfo): Use atoll to parse the rtptime with enough precision. Fixes #509329.
* gst/: Initialise variables to work around (false) 'foo might be used ↵Tim-Philipp Müller2008-01-141-2/+2
| | | | | | | | | | uninitialized in this function' warnings by gcc-... Original commit message from CVS: * gst/avi/gstavisubtitle.c: (gst_avi_subtitle_extract_file): * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_send): Initialise variables to work around (false) 'foo might be used uninitialized in this function' warnings by gcc-3.3.3 (#509298).
* gst/rtsp/gstrtspsrc.*: Implement redirect for the DESCRIBE reply. Fixes #506025.Wim Taymans2007-12-311-6/+56
| | | | | | | Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_send), (gst_rtspsrc_open): * gst/rtsp/gstrtspsrc.h: Implement redirect for the DESCRIBE reply. Fixes #506025.
* gst/rtsp/gstrtspsrc.c: Fix some more leaks. Fixes #497007.Tommi Myöhänen2007-11-151-0/+3
| | | | | | | Original commit message from CVS: Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com> * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_setup_streams): Fix some more leaks. Fixes #497007.
* gst/rtsp/gstrtspsrc.c: Fix 3 pad leaks. Fixes #496983.Tommi Myöhänen2007-11-151-2/+10
| | | | | | | | Original commit message from CVS: Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com> * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_free), (gst_rtspsrc_stream_configure_tcp): Fix 3 pad leaks. Fixes #496983.
* gst/rtsp/gstrtspsrc.c: Don't leak sdp message contents (fixes #496773).Tim-Philipp Müller2007-11-141-0/+2
| | | | | | | | Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_open): Don't leak sdp message contents (fixes #496773). * gst/udp/gstudpsink.c: (gst_udpsink_finalize): Don't leak URI string.
* gst/rtsp/gstrtspsrc.c: Don't leak event, don't leak range (fixes #496752).Tommi Myöhänen2007-11-141-0/+3
| | | | | | | | Original commit message from CVS: Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com> * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_handle_src_event), (gst_rtspsrc_parse_range): Don't leak event, don't leak range (fixes #496752).
* gst/rtsp/gstrtspsrc.c: Fix race when pausing a RTSP stream in interleaved.Tommi Myöhänen2007-10-221-0/+17
| | | | | | | | Original commit message from CVS: Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com> * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_loop_interleaved): Fix race when pausing a RTSP stream in interleaved. Fixes #475784.
* gst/rtsp/gstrtspsrc.c: Use allowed name for the GstStructure.Wim Taymans2007-10-171-1/+1
| | | | | | Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_open): Use allowed name for the GstStructure.
* gst/rtsp/gstrtspsrc.c: Fix compiler warning by using GST_CLOCK_TIME_NONE to ↵Jan Schmidt2007-10-081-1/+1
| | | | | | | | | initialise a GstClockTime. Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_flush): Fix compiler warning by using GST_CLOCK_TIME_NONE to initialise a GstClockTime.
* gst/rtsp/gstrtspsrc.c: More seeking fixes, mostly passing around the new ↵Wim Taymans2007-10-081-38/+45
| | | | | | | | | | | | | | | playback segment in order to configure it pr... Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_flush), (gst_rtspsrc_do_seek), (gst_rtspsrc_perform_seek), (gst_rtspsrc_configure_caps), (gst_rtspsrc_loop_udp), (gst_rtspsrc_parse_range), (gst_rtspsrc_open), (gst_rtspsrc_play), (gst_rtspsrc_change_state): More seeking fixes, mostly passing around the new playback segment in order to configure it properly. Also reset base_time of udp sources when setting them back to PLAYING as a temporary hack until core supports seek in live sources properly.
* gst/rtsp/gstrtspsrc.c: Improve flushing behaviour.Wim Taymans2007-10-051-17/+93
| | | | | | | | | | | | | | Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_flush), (gst_rtspsrc_perform_seek), (gst_rtspsrc_handle_src_event), (gst_rtspsrc_handle_internal_src_query), (gst_rtspsrc_handle_src_query), (new_session_pad), (gst_rtspsrc_stream_configure_tcp), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_loop_send_cmd): Improve flushing behaviour. Set state of the udp sources to PAUSE/PLAYING correctly. Handle events and queries for UDP and TCP transport now.
* gst/rtsp/gstrtspsrc.*: Parse bandwidth modifiers, they are not yet ↵Wim Taymans2007-10-011-0/+51
| | | | | | | | | | | | configured in the session manager because we don't... Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_get_bandwidth), (gst_rtspsrc_collect_bandwidth), (gst_rtspsrc_create_stream), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_loop_interleaved): * gst/rtsp/gstrtspsrc.h: Parse bandwidth modifiers, they are not yet configured in the session manager because we don't have an API for that yet.
* gst/rtsp/gstrtspsrc.c: Use shiny new function in -base to get the default ↵Wim Taymans2007-10-011-50/+22
| | | | | | | | | | clock-rate. Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_parse_rtpmap), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_loop_interleaved): Use shiny new function in -base to get the default clock-rate. Update some docs.
* gst/rtsp/gstrtspsrc.*: In TCP mode, only timestamp the first buffer. TCP is ↵Wim Taymans2007-09-281-9/+21
| | | | | | | | | | | | not real time and it does not make sense ... Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_play): * gst/rtsp/gstrtspsrc.h: In TCP mode, only timestamp the first buffer. TCP is not real time and it does not make sense to try to skew compensate, also some servers send the first batch of data in a burst.
* gst/rtsp/gstrtspsrc.*: Set timestamps on RTP buffers in interleaved mode.Wim Taymans2007-09-261-8/+19
| | | | | | | | | | | Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_create_stream), (gst_rtspsrc_handle_src_query), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_close): * gst/rtsp/gstrtspsrc.h: Set timestamps on RTP buffers in interleaved mode. Mark first buffers with a DISCONT. Remove flush hack now that sync for live sources has been figured out.
* gst/: Fix compiler warnings shown with Forte.Jan Schmidt2007-09-171-7/+16
| | | | | | | | | | Original commit message from CVS: * gst/audiofx/audiodynamic.c: (gst_audio_dynamic_class_init): * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_create_stream), (new_session_pad), (request_pt_map), (gst_rtspsrc_do_stream_eos), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_parse_rtpinfo), (gst_rtspsrc_handle_message): Fix compiler warnings shown with Forte.
* gst/rtsp/gstrtspsrc.c: Give meaningfull error when all streams failed to ↵Wim Taymans2007-09-171-4/+18
| | | | | | | | | | configure for some reason. Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_setup_streams), (gst_rtspsrc_dup_printf): Give meaningfull error when all streams failed to configure for some reason.
* gst/rtsp/gstrtspsrc.c: Use new basesink async property to make sparse RTCP ↵Wim Taymans2007-08-291-0/+2
| | | | | | | | | | packet not wait for preroll. Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_udp_sink), (gst_rtspsrc_dup_printf): Use new basesink async property to make sparse RTCP packet not wait for preroll.
* gst/rtsp/gstrtspsrc.c: Make sure we generate and parse floating point values ↵Wim Taymans2007-08-231-5/+38
| | | | | | | | | | in the POSIX locale instead of the curre... Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_dup_printf), (gst_rtspsrc_get_float), (gst_rtspsrc_play): Make sure we generate and parse floating point values in the POSIX locale instead of the current locale.
* gst/rtsp/gstrtspsrc.*: Fix method detection again.Wim Taymans2007-08-221-21/+63
| | | | | | | | | | | | Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_do_seek), (gst_rtspsrc_parse_methods), (gst_rtspsrc_open), (gst_rtspsrc_play): * gst/rtsp/gstrtspsrc.h: Fix method detection again. Keep track of when we must send a Range header. Use segment values for Range, Speed and Scale headers. Parse Speed and Scale headers to update the segment values.
* gst/rtsp/gstrtspsrc.c: Refactor the udp and interleaved loop function a bit.Wim Taymans2007-08-181-84/+48
| | | | | | | | Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_loop_send_cmd), (gst_rtspsrc_loop): Refactor the udp and interleaved loop function a bit.
* gst/rtsp/gstrtspsrc.*: Protect connection activity with a new lock, avoids ↵Wim Taymans2007-08-171-24/+62
| | | | | | | | | | | | | | | deadlocks when going to PAUSED. Fixes #455... Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_finalize), (gst_rtspsrc_connection_send), (gst_rtspsrc_connection_receive), (gst_rtspsrc_sink_chain), (gst_rtspsrc_handle_request), (gst_rtspsrc_send_keep_alive), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_try_send), (gst_rtspsrc_pause): * gst/rtsp/gstrtspsrc.h: Protect connection activity with a new lock, avoids deadlocks when going to PAUSED. Fixes #455808.
* gst/rtsp/gstrtspsrc.c: Fix stray %u in debug line as spotted by Saur on IRC.Wim Taymans2007-08-171-1/+1
| | | | | | Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_do_stream_eos): Fix stray %u in debug line as spotted by Saur on IRC.
* gst/rtsp/gstrtspsrc.*: Improve timeout handling.Wim Taymans2007-08-171-75/+188
| | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_set_property), (gst_rtspsrc_flush), (gst_rtspsrc_sink_chain), (gst_rtspsrc_stream_configure_udp_sink), (gst_rtspsrc_send_keep_alive), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_loop_send_cmd), (gst_rtspsrc_try_send), (gst_rtspsrc_send), (gst_rtspsrc_parse_methods), (gst_rtspsrc_parse_range), (gst_rtspsrc_open), (gst_rtspsrc_close), (gst_rtspsrc_pause), (gst_rtspsrc_handle_message), (gst_rtspsrc_change_state): * gst/rtsp/gstrtspsrc.h: Improve timeout handling. Use the same socket for sending and receiving RTCP packets so that some servers can track clients better. Improve connection closed handling. Try to reconnect. Don't overwrite our content base with NULL. Improve debugging. Improve range parsing and handling. Remove flushing hack now that core does the right thing.
* gst/rtsp/gstrtpdec.*: Add (dummy) SSRC management signals.Wim Taymans2007-08-161-58/+145
| | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: * gst/rtsp/gstrtpdec.c: (gst_rtp_dec_marshal_VOID__UINT_UINT), (gst_rtp_dec_class_init): * gst/rtsp/gstrtpdec.h: Add (dummy) SSRC management signals. * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_class_init), (gst_rtspsrc_set_property), (gst_rtspsrc_get_property), (find_stream), (gst_rtspsrc_create_stream), (new_session_pad), (request_pt_map), (gst_rtspsrc_do_stream_eos), (on_bye_ssrc), (on_timeout), (gst_rtspsrc_stream_configure_manager), (gst_rtspsrc_stream_push_event), (gst_rtspsrc_push_event), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_parse_rtpinfo), (gst_rtspsrc_handle_message), (gst_rtspsrc_change_state): * gst/rtsp/gstrtspsrc.h: Add connection-speed property. Add find_stream helper functions. Handle stream EOS based on BYE messages or SSRC timeout. Returns SUCCESS from the state change function as we hide our async elements from the parent.
* gst/rtsp/gstrtspsrc.c: Fix default clock-rate for realmedia.Wim Taymans2007-08-031-5/+14
| | | | | | | | | | | Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (get_default_rate_for_pt), (gst_rtspsrc_parse_rtpmap), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_stream_configure_tcp), (gst_rtspsrc_stream_configure_udp_sink): Fix default clock-rate for realmedia. Fix parsing of transport. Don't try to link NULL pads.
* gst/rtsp/gstrtspsrc.c: If we don't hav a session manager, set the caps on ↵Wim Taymans2007-07-271-2/+23
| | | | | | | | | | | | | | | outgoing buffers ourselves. Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_activate_streams), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_parse_methods), (gst_rtspsrc_create_transports_string), (gst_rtspsrc_prepare_transports): If we don't hav a session manager, set the caps on outgoing buffers ourselves. Force PAUSE/PLAY methods for now until the extensions can overwrite. Append final bit of the transport string even when it does not contain a placeholder.
* gst/rtsp/: Clean up the interface list.Wim Taymans2007-07-271-29/+15
| | | | | | | | | | | | | | Original commit message from CVS: * gst/rtsp/gstrtspext.c: (gst_rtsp_ext_list_free), (gst_rtsp_ext_list_connect): * gst/rtsp/gstrtspext.h: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init), (gst_rtspsrc_finalize), (gst_rtspsrc_send_cb): Clean up the interface list. Allow connecting to interface signals for the extensions. Remove old extension code. Free list on cleanup. Allow extensions to send additional RTSP messages.
* gst/rtsp/: Use rank to filter out extensions.Wim Taymans2007-07-261-1/+1
| | | | | | | | | | Original commit message from CVS: * gst/rtsp/gstrtspext.c: (gst_rtsp_ext_list_filter), (gst_rtsp_ext_list_stream_select): * gst/rtsp/gstrtspext.h: * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_setup_streams): Use rank to filter out extensions. Add url to stream_select interface call.
* gst/rtsp/: Use shiny new RTSP and SDP library.Wim Taymans2007-07-251-302/+333
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: * gst/rtsp/Makefile.am: * gst/rtsp/base64.c: * gst/rtsp/base64.h: * gst/rtsp/gstrtspext.c: (gst_rtsp_ext_list_filter), (gst_rtsp_ext_list_init), (gst_rtsp_ext_list_get), (gst_rtsp_ext_list_detect_server), (gst_rtsp_ext_list_before_send), (gst_rtsp_ext_list_after_send), (gst_rtsp_ext_list_parse_sdp), (gst_rtsp_ext_list_setup_media), (gst_rtsp_ext_list_configure_stream), (gst_rtsp_ext_list_get_transports), (gst_rtsp_ext_list_stream_select): * gst/rtsp/gstrtspext.h: * gst/rtsp/gstrtspsrc.c: (gst_rtsp_lower_trans_get_type), (gst_rtspsrc_class_init), (gst_rtspsrc_init), (gst_rtspsrc_finalize), (gst_rtspsrc_create_stream), (gst_rtspsrc_parse_rtpmap), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_flush), (gst_rtspsrc_do_seek), (gst_rtspsrc_sink_chain), (gst_rtspsrc_stream_configure_manager), (gst_rtspsrc_stream_configure_tcp), (gst_rtspsrc_stream_configure_mcast), (gst_rtspsrc_stream_configure_udp), (gst_rtspsrc_stream_configure_udp_sink), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_handle_request), (gst_rtspsrc_send_keep_alive), (gst_rtspsrc_loop_interleaved), (gst_rtspsrc_loop_udp), (gst_rtspsrc_loop_send_cmd), (gst_rtsp_auth_method_to_string), (gst_rtspsrc_parse_auth_hdr), (gst_rtspsrc_setup_auth), (gst_rtspsrc_try_send), (gst_rtspsrc_send), (gst_rtspsrc_parse_methods), (gst_rtspsrc_create_transports_string), (gst_rtspsrc_prepare_transports), (gst_rtspsrc_setup_streams), (gst_rtspsrc_parse_range), (gst_rtspsrc_open), (gst_rtspsrc_close), (gst_rtspsrc_play), (gst_rtspsrc_pause), (gst_rtspsrc_change_state), (gst_rtspsrc_uri_set_uri): * gst/rtsp/gstrtspsrc.h: * gst/rtsp/rtsp.h: * gst/rtsp/rtspconnection.c: * gst/rtsp/rtspconnection.h: * gst/rtsp/rtspdefs.c: * gst/rtsp/rtspdefs.h: * gst/rtsp/rtspext.h: * gst/rtsp/rtspextwms.c: * gst/rtsp/rtspextwms.h: * gst/rtsp/rtspmessage.c: * gst/rtsp/rtspmessage.h: * gst/rtsp/rtsprange.c: * gst/rtsp/rtsprange.h: * gst/rtsp/rtsptransport.c: * gst/rtsp/rtsptransport.h: * gst/rtsp/rtspurl.c: * gst/rtsp/rtspurl.h: * gst/rtsp/sdp.h: * gst/rtsp/sdpmessage.c: * gst/rtsp/sdpmessage.h: * gst/rtsp/test.c: Use shiny new RTSP and SDP library. Implement RTSP extensions using the new interface. Remove a lot of old code.