summaryrefslogtreecommitdiffstats
path: root/gst
AgeCommit message (Collapse)AuthorFilesLines
2007-10-02gst/sdp/Makefile.am: Forgot to commit makefile.Wim Taymans1-0/+13
Original commit message from CVS: * gst/sdp/Makefile.am: Forgot to commit makefile.
2007-10-01gst/sdp/gstsdpdemux.c: Use new function in -base to get the default clock-rate.Wim Taymans1-46/+17
Original commit message from CVS: * gst/sdp/gstsdpdemux.c: (gst_sdp_demux_media_to_caps): Use new function in -base to get the default clock-rate.
2007-10-01Added SDP demuxer element. Fixes #426657.Wim Taymans3-0/+1532
Original commit message from CVS: * configure.ac: * gst/sdp/gstsdpdemux.c: (_do_init), (gst_sdp_demux_base_init), (gst_sdp_demux_class_init), (gst_sdp_demux_init), (gst_sdp_demux_finalize), (gst_sdp_demux_set_property), (gst_sdp_demux_get_property), (find_stream_by_id), (find_stream_by_pt), (find_stream_by_udpsrc), (find_stream), (gst_sdp_demux_stream_free), (gst_sdp_demux_create_stream), (gst_sdp_demux_cleanup), (get_default_rate_for_pt), (gst_sdp_demux_parse_rtpmap), (gst_sdp_demux_media_to_caps), (new_session_pad), (request_pt_map), (gst_sdp_demux_do_stream_eos), (on_bye_ssrc), (on_timeout), (gst_sdp_demux_configure_manager), (gst_sdp_demux_stream_configure_udp), (gst_sdp_demux_stream_configure_udp_sink), (gst_sdp_demux_combine_flows), (gst_sdp_demux_stream_push_event), (gst_sdp_demux_handle_message), (gst_sdp_demux_start), (gst_sdp_demux_sink_event), (gst_sdp_demux_sink_chain), (gst_sdp_demux_change_state): * gst/sdp/gstsdpdemux.h: * gst/sdp/gstsdpelem.c: (plugin_init): Added SDP demuxer element. Fixes #426657.
2007-10-01gst/mpegtsparse/: Remove useless src pad that only results in not linked ↵mutex at runbox dot com3-19/+3
errors, fix a broken pointer dereference and... Original commit message from CVS: Patch by: mutex at runbox dot com * gst/mpegtsparse/mpegtspacketizer.c: (mpegts_packetizer_parse_adaptation_field_control): * gst/mpegtsparse/mpegtsparse.c: (mpegts_parse_base_init), (mpegts_parse_init), (mpegts_parse_push): * gst/mpegtsparse/mpegtsparse.h: Remove useless src pad that only results in not linked errors, fix a broken pointer dereference and make MAX_CONTINUITY constant conform to the standard to stop outputting corrupted data. Fixes #481276, #481279.
2007-09-29ext/mythtv/gstmythtvsrc.c: Re-apply docs patch from #468039; fix tab.Tim-Philipp Müller1-0/+3
Original commit message from CVS: * ext/mythtv/gstmythtvsrc.c: Re-apply docs patch from #468039; fix tab. * gst/mpegtsparse/.cvsignore: Ignore marshaller files generated at build time.
2007-09-28gst/rtpmanager/gstrtpbin.c: Fix crasher in dispose.Wim Taymans2-7/+8
Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (free_client): Fix crasher in dispose. * gst/rtpmanager/rtpjitterbuffer.c: (calculate_skew): Handle cases where input buffers have no timestamps so that no clock skew can be calculated, in this case interpollate timestamps based on rtp timestamp and assume a 0 clock skew.
2007-09-28gst/rtpmanager/gstrtpjitterbuffer.c: Remove jitter correction code, it's now ↵Wim Taymans3-92/+105
in the lower level object. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (apply_latency), (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_query): Remove jitter correction code, it's now in the lower level object. Use new -core method for doing a peer query. * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_init), (calculate_skew), (rtp_jitter_buffer_insert): * gst/rtpmanager/rtpjitterbuffer.h: Move jitter correction to the lowlevel jitterbuffer. Increase the max window size. When filling the window, already start estimating the skew using a parabolic weighting factor so that we have a much better startup behaviour that gets more accurate with the more samples we have. Increase the default weighting factor for the steady state to get smoother timestamps.
2007-09-27gst/librfb/gstrfbsrc.*: Added a property for incremental screen updatesThijs Vermeir2-5/+15
Original commit message from CVS: * gst/librfb/gstrfbsrc.c: * gst/librfb/gstrfbsrc.h: Added a property for incremental screen updates
2007-09-27gst/flv/gstflvparse.c: I got it wrong again, audio rate was not detected ↵Julien Moutte1-7/+6
correctly in all cases. Original commit message from CVS: 2007-09-27 Julien MOUTTE <julien@moutte.net> * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): I got it wrong again, audio rate was not detected correctly in all cases.
2007-09-26gst/rtpmanager/gstrtpbin.c: Fix cleanup crasher.Wim Taymans3-7/+15
Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_dispose), (gst_rtp_bin_finalize): Fix cleanup crasher. * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_init), (calculate_skew): * gst/rtpmanager/rtpjitterbuffer.h: Dynamically adjust the skew calculation window so that we calculate it over a period of around 2 seconds.
2007-09-26gst/librfb/gstrfbsrc.c: fix bug from generic/states.gdbThijs Vermeir1-1/+2
Original commit message from CVS: * gst/librfb/gstrfbsrc.c: fix bug from generic/states.gdb
2007-09-26gst/flv/gstflvparse.c: codec_data is needed for every tag not just the first ↵Julien Moutte1-2/+3
one. (Fix a stupid bug i introduced with... Original commit message from CVS: 2007-09-26 Julien MOUTTE <julien@moutte.net> * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): codec_data is needed for every tag not just the first one. (Fix a stupid bug i introduced without testing)
2007-09-26gst/flv/gstflvparse.c: Fix bit masks operations to be sure we detect the ↵Julien Moutte1-49/+27
codec_tags and sample rates correctly. Original commit message from CVS: 2007-09-26 Julien MOUTTE <julien@moutte.net> * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Fix bit masks operations to be sure we detect the codec_tags and sample rates correctly. Fix raw audio caps generation.
2007-09-24Massive leak fixing, plus code cleanups.Stefan Kost9-69/+111
Original commit message from CVS: * ext/audioresample/gstaudioresample.c: * ext/x264/gstx264enc.c: * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: * gst/festival/gstfestival.c: * gst/h264parse/gsth264parse.c: * gst/mpegtsparse/mpegtspacketizer.c: * gst/mpegtsparse/mpegtsparse.c: * gst/multifile/gstmultifilesink.c: * gst/multifile/gstmultifilesrc.c: * gst/nuvdemux/gstnuvdemux.c: * sys/dshowsrcwrapper/gstdshowaudiosrc.c: * sys/dshowsrcwrapper/gstdshowvideosrc.c: * sys/vcd/vcdsrc.c: Massive leak fixing, plus code cleanups.
2007-09-21gst/librfb/: Added offset-x, offset-y, width and height property for ↵Thijs Vermeir3-5/+88
selecting a region from the screen Original commit message from CVS: * gst/librfb/gstrfbsrc.c: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: Added offset-x, offset-y, width and height property for selecting a region from the screen
2007-09-21gst/librfb/gstrfbsrc.c: Minimum raw encoding is working nowThijs Vermeir2-10/+5
Original commit message from CVS: * gst/librfb/gstrfbsrc.c: Minimum raw encoding is working now * gst/librfb/rfbdecoder.c: fix address while reading from stream
2007-09-20gst/librfb/gstrfbsrc.c: raw encoding is working, but it looks like the ↵Thijs Vermeir1-17/+12
ffmpegcolorspace plugin can't handle high reso... Original commit message from CVS: * gst/librfb/gstrfbsrc.c: raw encoding is working, but it looks like the ffmpegcolorspace plugin can't handle high resolutions
2007-09-20gst/librfb/gstrfbsrc.c: bpp, depth and endianness are now set from the stream.Thijs Vermeir1-4/+6
Original commit message from CVS: * gst/librfb/gstrfbsrc.c: bpp, depth and endianness are now set from the stream.
2007-09-20Fix memory leaks. More to come.Stefan Kost1-2/+6
Original commit message from CVS: * ext/alsaspdif/alsaspdifsink.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * gst/mpegvideoparse/mpegvideoparse.c: Fix memory leaks. More to come. * tests/check/Makefile.am: * tests/check/generic/states.c: Improved state change unit test.
2007-09-20gst/rtpmanager/: Add notification of active SSRCs to various RTP elements. ↵Wim Taymans6-0/+74
Fixes #478566. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (on_ssrc_active), (create_session), (gst_rtp_bin_class_init): * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpsession.c: (on_ssrc_active), (gst_rtp_session_class_init), (gst_rtp_session_init), (gst_rtp_session_event_send_rtp_sink): * gst/rtpmanager/gstrtpsession.h: * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), (on_ssrc_active), (rtp_session_process_rb): * gst/rtpmanager/rtpsession.h: Add notification of active SSRCs to various RTP elements. Fixes #478566.
2007-09-19gst/librfb/: It is now possible to connect to a vncserver. there are still ↵Thijs Vermeir3-122/+181
some issues with the ouput of the screen. ... Original commit message from CVS: * gst/librfb/gstrfbsrc.c: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: It is now possible to connect to a vncserver. there are still some issues with the ouput of the screen. Looks like some lines are confused
2007-09-19gst/real/gstrealvideodec.*: Don't generate an error for occasional decoding ↵Wim Taymans2-11/+67
errors. Original commit message from CVS: * gst/real/gstrealvideodec.c: (gst_real_video_dec_chain), (open_library), (gst_real_video_dec_init), (gst_real_video_dec_set_property), (gst_real_video_dec_get_property), (gst_real_video_dec_class_init): * gst/real/gstrealvideodec.h: Don't generate an error for occasional decoding errors. Add max-errors property. Error out when we receive max-errors in a row. Fixes #478159.
2007-09-19gst/librfb/gstrfbsrc.c: Add password property (write only)Thijs Vermeir3-11/+55
Original commit message from CVS: * gst/librfb/gstrfbsrc.c: Add password property (write only) * gst/librfb/rfbdecoder.c: Read the reason on failure Use the password property for authentication * gst/librfb/rfbdecoder.h: Add defines for version checking
2007-09-19gst/librfb/: VNC Authentication should be working now temperaly with fake ↵Thijs Vermeir6-5/+776
password 'testtest' Original commit message from CVS: * gst/librfb/Makefile.am: * gst/librfb/d3des.c: * gst/librfb/d3des.h: * gst/librfb/rfbdecoder.c: * gst/librfb/vncauth.c: * gst/librfb/vncauth.h: VNC Authentication should be working now temperaly with fake password 'testtest'
2007-09-18gst/librfb/rfbdecoder.*: Added some documentation about security handling ↵Thijs Vermeir2-8/+48
start implementing security handling for rf... Original commit message from CVS: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: Added some documentation about security handling start implementing security handling for rfb 3.3
2007-09-18gst/spectrum/: Handling window resize.Stefan Kost2-29/+64
Original commit message from CVS: * gst/spectrum/demo-audiotest.c: * gst/spectrum/demo-osssrc.c: Handling window resize.
2007-09-18ChangeLog: Add missing newline.Stefan Kost3-19/+2
Original commit message from CVS: * ChangeLog: Add missing newline. * gst/librfb/rfbdecoder.c: Fix the build (missing stdlib.h). * gst/spectrum/gstspectrum.c: * gst/spectrum/gstspectrum.h: Use basetransform segment so that it is correctly managed on flushes and start/stop. Report message timestamp as stream time, which is what an application can understand. (Yes these are adapted from wim recent level element changes)
2007-09-17Added a new property for the rfb versionThijs Vermeir4-6/+112
Original commit message from CVS: Added a new property for the rfb version
2007-09-17gst/rtpmanager/gstrtpbin.c: Link to the right pads regardless of which one ↵Wim Taymans6-24/+56
was created first in the ssrc demuxer. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (new_ssrc_pad_found): Link to the right pads regardless of which one was created first in the ssrc demuxer. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_process_rtp), (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_chain_send_rtp): * gst/rtpmanager/rtpsource.c: (calculate_jitter): Improve debugging. * gst/rtpmanager/gstrtpssrcdemux.c: (create_demux_pad_for_ssrc), (gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_finalize), (gst_rtp_ssrc_demux_sink_event), (gst_rtp_ssrc_demux_rtcp_sink_event), (gst_rtp_ssrc_demux_chain), (gst_rtp_ssrc_demux_rtcp_chain), (gst_rtp_ssrc_demux_internal_links): * gst/rtpmanager/gstrtpssrcdemux.h: Fix race in creating the RTP and RTCP pads when a new SSRC is detected.
2007-09-16gst/rtpmanager/gstrtpbin.c: Use lock to protect variable.Wim Taymans6-139/+341
Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_set_property), (gst_rtp_bin_get_property): Use lock to protect variable. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_class_init), (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_chain), (convert_rtptime_to_gsttime), (gst_rtp_jitter_buffer_loop): Reconstruct GST timestamp from RTP timestamps based on measured clock skew and sync offset. * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_init), (rtp_jitter_buffer_set_tail_changed), (rtp_jitter_buffer_set_clock_rate), (rtp_jitter_buffer_get_clock_rate), (calculate_skew), (rtp_jitter_buffer_insert), (rtp_jitter_buffer_peek): * gst/rtpmanager/rtpjitterbuffer.h: Measure clock skew. Add callback to be notfied when a new packet was inserted at the tail. * gst/rtpmanager/rtpsource.c: (rtp_source_init), (calculate_jitter), (rtp_source_send_rtp): * gst/rtpmanager/rtpsource.h: Remove clock skew detection, it's move to the jitterbuffer now.
2007-09-15gst/rtpmanager/gstrtpbin.c: Also set NTP base time on new sessions.Wim Taymans3-6/+44
Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_session): Also set NTP base time on new sessions. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_query), (gst_rtp_jitter_buffer_set_property), (gst_rtp_jitter_buffer_get_property): Use the right lock to protect our variables. Fix some comment. * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_getcaps_send_rtp), (gst_rtp_session_chain_send_rtp), (create_send_rtp_sink): Implement getcaps on the sender sinkpad so that payloaders can negotiate the right SSRC.
2007-09-12gst/rtpmanager/: Various leak fixes.Wim Taymans7-12/+108
Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_session), (free_session), (get_client), (free_client), (gst_rtp_bin_associate), (free_stream), (gst_rtp_bin_class_init), (gst_rtp_bin_dispose), (gst_rtp_bin_finalize): * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_class_init), (gst_rtp_jitter_buffer_finalize): * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_release): * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_finalize), (gst_rtp_session_set_property), (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_chain_send_rtp): * gst/rtpmanager/gstrtpssrcdemux.c: (gst_rtp_ssrc_demux_class_init), (gst_rtp_ssrc_demux_dispose): * gst/rtpmanager/rtpsession.c: (rtp_session_finalize): * gst/rtpmanager/rtpsession.h: Various leak fixes.
2007-09-12gst/rtpmanager/gstrtpbin.c: Calculate and configure the NTP base time so ↵Wim Taymans8-39/+306
that we can generate better Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (calc_ntp_ns_base), (gst_rtp_bin_change_state), (new_payload_found), (create_send_rtp): Calculate and configure the NTP base time so that we can generate better NTP times in SR packets. Set caps on new ghostpad. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_loop): Clean debug statement. * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), (gst_rtp_session_init), (gst_rtp_session_set_property), (gst_rtp_session_get_property), (get_current_ntp_ns_time), (rtcp_thread), (gst_rtp_session_event_recv_rtp_sink), (gst_rtp_session_internal_links), (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_event_send_rtp_sink), (gst_rtp_session_chain_send_rtp), (create_recv_rtp_sink), (create_send_rtp_sink): * gst/rtpmanager/gstrtpsession.h: Add ntp-ns-base property to convert running_time to NTP time. Handle NEWSEGMENT events on send and recv RTP pads so that we can calculate the running time and thus NTP time of the packets. Simplify getting the current NTP time using the pipeline clock. Implement internal links functions. Use the buffer timestamp to calculate the NTP time instead of the clock. * gst/rtpmanager/gstrtpssrcdemux.c: (create_demux_pad_for_ssrc), (gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_sink_event), (gst_rtp_ssrc_demux_chain), (gst_rtp_ssrc_demux_rtcp_chain), (gst_rtp_ssrc_demux_internal_links), (gst_rtp_ssrc_demux_src_query): * gst/rtpmanager/gstrtpssrcdemux.h: Implement internal links function. Calculate the diff between different streams, this might be used later to get the inter stream latency. * gst/rtpmanager/rtpsession.c: (rtp_session_send_rtp): Simple cleanup. * gst/rtpmanager/rtpsource.c: (rtp_source_init), (calculate_jitter), (rtp_source_send_rtp), (rtp_source_get_new_sr): Make the clock skew window a little bigger. Apply the clock skew to all buffers, not just one with a new timestamp. Calculate and debug sender clock drift. Use extended last timestamp to interpollate for SR reports.
2007-09-12gst/: Printf format fixes (#476128).Peter Kjellerstedt4-8/+11
Original commit message from CVS: Patch by: Peter Kjellerstedt <pkj at axis com> * gst-libs/gst/app/gstappsink.c: * gst/flv/gstflvdemux.c: * gst/flv/gstflvparse.c: * gst/interleave/deinterleave.c: * gst/switch/gstswitch.c: Printf format fixes (#476128).
2007-09-07gst/spectrum/gstspectrum.c: Use the correct parameter order for the memset ↵Sebastian Dröge1-4/+4
calls. Original commit message from CVS: * gst/spectrum/gstspectrum.c: (gst_spectrum_start), (gst_spectrum_transform_ip): Use the correct parameter order for the memset calls. Thanks to Christian Schaller for noticing.
2007-09-06gst/mpegtsparse/mpegtsparse.c: Fix the build (missing stdlib.h).Stefan Kost1-0/+3
Original commit message from CVS: * gst/mpegtsparse/mpegtsparse.c: Fix the build (missing stdlib.h).
2007-09-06gst/spectrum/fix_fft.c: Remove fixed point FFT as it's not used anymore.Sebastian Dröge1-453/+0
Original commit message from CVS: * gst/spectrum/fix_fft.c: Remove fixed point FFT as it's not used anymore.
2007-09-06Port GstSpectrum to GstAudioFilter and libgstfft, add support for int32, ↵Sebastian Dröge5-143/+378
float and double, use floats for the message... Original commit message from CVS: * configure.ac: * gst/spectrum/Makefile.am: * gst/spectrum/demo-audiotest.c: (draw_spectrum), (message_handler), (main): * gst/spectrum/demo-osssrc.c: (draw_spectrum), (message_handler): * gst/spectrum/gstspectrum.c: (gst_spectrum_base_init), (gst_spectrum_class_init), (gst_spectrum_init), (gst_spectrum_dispose), (gst_spectrum_set_property), (gst_spectrum_get_property), (gst_spectrum_start), (gst_spectrum_setup), (gst_spectrum_message_new), (gst_spectrum_transform_ip): * gst/spectrum/gstspectrum.h: Port GstSpectrum to GstAudioFilter and libgstfft, add support for int32, float and double, use floats for the message contents, average all FFTs done in one interval for better results, use a better windowing function, allow posting the phase in the message and actually do an FFT with the requested number of bands instead of interpolating. * tests/check/elements/spectrum.c: (GST_START_TEST), (spectrum_suite): Improve the units tests by checking for a 11025Hz sine wave and add unit tests for all 4 supported sample types.
2007-09-05gst/real/gstrealvideodec.c: Add some more debugging.Wim Taymans1-15/+33
Original commit message from CVS: * gst/real/gstrealvideodec.c: (gst_real_video_dec_chain), (gst_real_video_dec_setcaps): Add some more debugging. Don't set LONG for width/height in caps. Set correct output buffer size when caps changed. The custom message sent to the decoder should not include the format and subformat. Fixes #471554.
2007-09-04gst/rtpmanager/gstrtpsession.c: Make compiler happy: fix compilation with ↵Tim-Philipp Müller1-2/+3
-Wall -Werror (#473562). Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: Make compiler happy: fix compilation with -Wall -Werror (#473562).
2007-09-04Nosefart -> NES Sound FormatJohan Dahlin1-1/+1
Original commit message from CVS: Nosefart -> NES Sound Format
2007-09-04gst/nsf/gstnsf.*: Add support for (very) basic tagging.Johan Dahlin2-0/+21
Original commit message from CVS: 2007-09-03 Johan Dahlin <johan@gnome.org> * gst/nsf/gstnsf.c: (gst_nsfdec_finalize), (start_play_tune): * gst/nsf/gstnsf.h: Add support for (very) basic tagging.
2007-09-03gst/rtpmanager/: Updated example pipelines in docs.Wim Taymans12-435/+1306
Original commit message from CVS: * gst/rtpmanager/gstrtpbin-marshal.list: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_get_client), (gst_rtp_bin_associate), (gst_rtp_bin_sync_chain), (create_stream), (gst_rtp_bin_init), (caps_changed), (new_ssrc_pad_found), (create_recv_rtp), (create_recv_rtcp), (create_send_rtp): * gst/rtpmanager/gstrtpbin.h: Updated example pipelines in docs. Handle sync_rtcp buffers from the SSRC demuxer to perform lip-sync. Set the default latency correctly. Add some more points where we can get caps. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_class_init), (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_query), (gst_rtp_jitter_buffer_set_property), (gst_rtp_jitter_buffer_get_property): Add ts-offset property to control timestamping. * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), (gst_rtp_session_init), (gst_rtp_session_set_property), (gst_rtp_session_get_property), (get_current_ntp_ns_time), (rtcp_thread), (stop_rtcp_thread), (gst_rtp_session_change_state), (gst_rtp_session_send_rtcp), (gst_rtp_session_sync_rtcp), (gst_rtp_session_cache_caps), (gst_rtp_session_clock_rate), (gst_rtp_session_sink_setcaps), (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_event_send_rtp_sink), (gst_rtp_session_chain_send_rtp), (create_recv_rtp_sink), (create_recv_rtcp_sink), (create_send_rtp_sink), (create_send_rtcp_src): Various cleanups. Feed rtpsession manager with NTP time based on pipeline clock when handling RTP packets and RTCP timeouts. Perform all RTCP with the system clock. Set caps on RTCP outgoing buffers. * gst/rtpmanager/gstrtpssrcdemux.c: (find_demux_pad_for_ssrc), (create_demux_pad_for_ssrc), (gst_rtp_ssrc_demux_base_init), (gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_sink_event), (gst_rtp_ssrc_demux_rtcp_sink_event), (gst_rtp_ssrc_demux_chain), (gst_rtp_ssrc_demux_rtcp_chain): * gst/rtpmanager/gstrtpssrcdemux.h: Also demux RTCP messages. * gst/rtpmanager/rtpsession.c: (rtp_session_set_callbacks), (update_arrival_stats), (rtp_session_process_rtp), (rtp_session_process_rb), (rtp_session_process_sr), (rtp_session_process_rr), (rtp_session_process_rtcp), (rtp_session_send_rtp), (rtp_session_send_bye), (session_start_rtcp), (session_report_blocks), (session_cleanup), (rtp_session_on_timeout): * gst/rtpmanager/rtpsession.h: Remove the get_time callback, the GStreamer part will feed us with enough timing information. Split sync timing and RTCP timing information. Factor out common RB handling for SR and RR. Send out SR RTCP packets for lip-sync. Move SR and RR packet info generation to the source. * gst/rtpmanager/rtpsource.c: (rtp_source_init), (rtp_source_update_caps), (get_clock_rate), (calculate_jitter), (rtp_source_process_rtp), (rtp_source_send_rtp), (rtp_source_process_sr), (rtp_source_process_rb), (rtp_source_get_new_sr), (rtp_source_get_new_rb), (rtp_source_get_last_sr): * gst/rtpmanager/rtpsource.h: * gst/rtpmanager/rtpstats.h: Use caps on incomming buffers to get timing information when they are there. Calculate clock scew of the receiver compared to the sender and adjust the rtp timestamps. Calculate the round trip in sources. Do SR and RR calculations in the source.
2007-08-31gst/rtpmanager/gstrtpjitterbuffer.c: Use extended timestamp to release ↵Wim Taymans1-13/+23
buffers from the jitterbuffer so that we can h... Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_flush_stop), (gst_rtp_jitter_buffer_change_state), (gst_rtp_jitter_buffer_loop): Use extended timestamp to release buffers from the jitterbuffer so that we can handle the rtp wraparound correctly.
2007-08-29gst/rtpmanager/gstrtpjitterbuffer.c: Improve Comments.Wim Taymans3-10/+69
Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_loop): Improve Comments. * gst/rtpmanager/gstrtpsession.c: (stop_rtcp_thread), (gst_rtp_session_change_state), (gst_rtp_session_parse_caps), (gst_rtp_session_clock_rate), (gst_rtp_session_sink_setcaps), (gst_rtp_session_event_send_rtp_sink), (create_recv_rtp_sink), (create_send_rtp_sink): Also parse the sink caps for clock-rate instead of only relying on the result of the signal. * gst/rtpmanager/rtpsource.c: (rtp_source_send_rtp): Make sure we fetch the clock rate for payloads we are sending out so that we can use it for SR reports.
2007-08-29gst/switch/gstswitch.c (gst_switch_chain, gst_switch_set_property): If all ↵Zaheer Abbas Merali1-11/+114
information is known at time of setting st... Original commit message from CVS: * gst/switch/gstswitch.c (gst_switch_chain, gst_switch_set_property): If all information is known at time of setting start-time property, send new segments then.
2007-08-29gst/rtpmanager/gstrtpsession.*: Distribute synchronisation parameters to the ↵Wim Taymans6-8/+145
session manager so that it can generate ... Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (stop_rtcp_thread), (gst_rtp_session_change_state), (gst_rtp_session_event_send_rtp_sink): * gst/rtpmanager/gstrtpsession.h: Distribute synchronisation parameters to the session manager so that it can generate correct SR packets for lip-sync. * gst/rtpmanager/rtpsession.c: (rtp_session_set_base_time), (rtp_session_set_timestamp_sync), (session_start_rtcp): * gst/rtpmanager/rtpsession.h: Add methods for setting sync parameters. Set correct RTP time in SR packets using the sync params. * gst/rtpmanager/rtpsource.c: (rtp_source_send_rtp): * gst/rtpmanager/rtpsource.h: Record last RTP <-> GST timestamp so that we can use them to convert NTP to RTP timestamps in SR packets.
2007-08-28gst/rtpmanager/gstrtpbin.c: Add some more advanced example pipelines.Wim Taymans4-7/+68
Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_clear_pt_map): Add some more advanced example pipelines. * gst/rtpmanager/gstrtpsession.c: (rtcp_thread), (stop_rtcp_thread), (gst_rtp_session_send_rtcp): Add some debug and FIXME. Release LOCK when performing session cleanup. * gst/rtpmanager/rtpsession.c: (session_report_blocks): Add some debug. * gst/rtpmanager/rtpsource.c: (calculate_jitter), (rtp_source_send_rtp): Make sure we always send RTP packets with the session SSRC.
2007-08-28gst/dvdspu/gstdvdspu.c: Don't need this include (fixes compilation in ↵Tim-Philipp Müller1-1/+0
uninstalled setup). Original commit message from CVS: * gst/dvdspu/gstdvdspu.c: Don't need this include (fixes compilation in uninstalled setup).
2007-08-27gst/rtpmanager/gstrtpjitterbuffer.c: When synchronizing buffers, take peer ↵Wim Taymans1-1/+14
latency into account. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_change_state), (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_query): When synchronizing buffers, take peer latency into account. Don't try to add our latency to invalid peer max latency values.