Original commit message from CVS:
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace2_class_init), (gst_deinterlace2_init),
(gst_deinterlace2_set_property), (gst_deinterlace2_get_property):
Bring properties into this century.
Original commit message from CVS:
* gst/mpegdemux/gstmpegtsdemux.c:
Make private section pads have a caps set so they are not tried
to be linked in parse_launch for example.
Original commit message from CVS:
patch by: Josep Torra
* gst/mpegdemux/gstmpegtsdemux.c:
No need to reclaculate flush in this case.
Fixes some bad decode errors introduced.
Original commit message from CVS:
patch by: Sebastian Pölsterl
* gst/mpegdemux/gstmpegdesc.c:
Length should be a guint8 not a gint.
* gst/mpegdemux/mpegtspacketizer.c:
Convert text to utf8 for each descriptor separately and not
concatenate them first and convert after.
Original commit message from CVS:
* gst/speexresample/gstspeexresample.c:
(gst_speex_resample_convert_buffer):
Add TODO at the top of the file for enabling SSE/ARM specific
optimizations and choosing the fastest implementation at runtime.
Add g_assert_not_reached() at two places that should really never
be reached.
Original commit message from CVS:
* gst/speexresample/gstspeexresample.c:
(gst_speex_resample_check_discont):
Fix format string and arguments.
* gst/speexresample/resample_sse.h:
Add missing file.
Original commit message from CVS:
* gst/speexresample/Makefile.am:
* gst/speexresample/gstspeexresample.c:
(gst_speex_resample_base_init), (gst_speex_resample_get_funcs),
(gst_speex_resample_convert_buffer), (_benchmark_int_float),
(_benchmark_int_int), (_benchmark_integer_resampling),
(plugin_init):
* gst/speexresample/gstspeexresample.h:
* gst/speexresample/resample.c:
* gst/speexresample/speex_resampler_double.c:
* gst/speexresample/speex_resampler_float.c:
* gst/speexresample/speex_resampler_int.c:
* gst/speexresample/speex_resampler_wrapper.h:
Add missing headers to Makefile.am.
Update copyright, years and my mail address.
Benchmark the integer resampling implementation against the
float implementation and use the faster one for 8/16 bit integer
input. On most recent systems the floating point version is faster.
Original commit message from CVS:
* gst/speexresample/gstspeexresample.c:
(gst_speex_resample_convert_buffer):
The length for the buffer conversion function is the number of
audio frames, i.e. we need to multiply it by the number of channels
to get the number of values. Also spotted by the unit test after
running in valgrind.
Original commit message from CVS:
* tests/check/elements/speexresample.c: (element_message_cb),
(eos_message_cb), (test_pipeline), (GST_START_TEST),
(speexresample_suite):
Add pipeline unit tests for testing all supported formats with
up/downsampling and different in/outrates.
* gst/speexresample/gstspeexresample.c:
(gst_speex_resample_push_drain), (gst_speex_resample_process):
* gst/speexresample/speex_resampler_wrapper.h:
Fix bugs identified by the testsuite.
Original commit message from CVS:
* gst/speexresample/gstspeexresample.c: (gst_speex_resample_stop),
(gst_speex_resample_get_funcs),
(gst_speex_resample_transform_size),
(gst_speex_resample_convert_buffer),
(gst_speex_resample_push_drain), (gst_speex_resample_process):
* gst/speexresample/gstspeexresample.h:
* gst/speexresample/speex_resampler_wrapper.h:
Add support for int8, int24 and int32 input by converting internally
to/from int16 or double.
Original commit message from CVS:
* gst/audiobuffer/Makefile.am:
* gst/audiobuffer/gstaudioringbuffer.c:
(gst_int_ring_buffer_acquire), (gst_int_ring_buffer_release),
(gst_int_ring_buffer_start), (gst_int_ring_buffer_base_init),
(gst_int_ring_buffer_class_init), (gst_int_ring_buffer_init),
(gst_int_ring_buffer_new), (gst_audio_ringbuffer_get_type),
(gst_audio_ringbuffer_class_init), (gst_audio_ringbuffer_init),
(gst_audio_ringbuffer_finalize), (gst_audio_ringbuffer_getcaps),
(gst_audio_ringbuffer_setcaps), (gst_audio_ringbuffer_bufferalloc),
(gst_audio_ringbuffer_handle_sink_event),
(gst_audio_ringbuffer_render), (gst_audio_ringbuffer_chain),
(gst_audio_ringbuffer_handle_src_event),
(gst_audio_ringbuffer_handle_src_query),
(gst_audio_ringbuffer_get_range),
(gst_audio_ringbuffer_src_checkgetrange_function),
(gst_audio_ringbuffer_sink_activate_push),
(gst_audio_ringbuffer_src_activate_push),
(gst_audio_ringbuffer_src_activate_pull),
(gst_audio_ringbuffer_change_state),
(gst_audio_ringbuffer_set_property),
(gst_audio_ringbuffer_get_property), (plugin_init):
Add first version of an audioringbuffer element that can be inserted in
the pipeline to convert push-based upstream into a pull-based
downstream.
Original commit message from CVS:
Patch by: Robin Stocker <robin at nibor dot org>
* gst/real/gstrealvideodec.c: (gst_real_video_dec_setcaps):
A RealVideo video inside a container (for example MKV) should use the
PAR which is specified on the sinkpad caps. Fixes#558416.
Original commit message from CVS:
* gst/speexresample/gstspeexresample.c: (gst_speex_resample_start),
(gst_speex_resample_get_unit_size),
(gst_speex_resample_push_drain), (gst_speex_resample_event),
(gst_speex_resample_check_discont), (gst_speex_resample_process),
(gst_speex_resample_transform):
* gst/speexresample/gstspeexresample.h:
Rewrite timestamp tracking to make it more robust and guarantee
a continous stream.
* tests/check/Makefile.am:
* tests/check/elements/speexresample.c: (setup_speexresample),
(cleanup_speexresample), (fail_unless_perfect_stream),
(test_perfect_stream_instance), (GST_START_TEST),
(test_discont_stream_instance), (live_switch_alloc_only_48000),
(live_switch_get_sink_caps), (live_switch_push),
(speexresample_suite):
Add unit tests for speexresample based on the audioresample unit tests.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup),
(gst_flv_demux_loop), (gst_flv_demux_handle_seek_push),
(gst_flv_demux_handle_seek_pull), (gst_flv_demux_sink_event),
(gst_flv_demux_dispose), (gst_flv_demux_init):
* gst/flv/gstflvdemux.h:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video), (gst_flv_parse_tag_timestamp):
Put the GstSegment directly into the instance struct instead of
allocating and free'ing it again.
Push tags already if only one pad was added, no need to wait for
the second one.
When generating our index set has_video and has_audio if we find
video or audio in case the FLV header has incorrect data.
Original commit message from CVS:
* gst/speexresample/gstspeexresample.c:
(gst_speex_resample_class_init), (gst_speex_resample_fixate_caps),
(gst_speex_resample_process):
Fixate to the nearest supported rate instead of the first one.
Original commit message from CVS:
* gst/audioresample/gstaudioresample.c:
(gst_audioresample_class_init), (audioresample_fixate_caps):
Fixate the rate to the nearest supported rate instead of
the first one. Fixes bug #549510.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_chain),
(gst_flv_demux_pull_tag), (gst_flv_demux_pull_header),
(gst_flv_demux_create_index):
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_script),
(gst_flv_parse_tag_audio), (gst_flv_parse_tag_video),
(gst_flv_parse_tag_timestamp), (gst_flv_parse_tag_type),
(gst_flv_parse_header):
* gst/flv/gstflvparse.h:
Don't memcpy() all data we want to push downstream, instead just
create subbuffers and push them downstream.
Fix some minor memory leaks.
Original commit message from CVS:
* gst/flv/Makefile.am:
Fix (non-critical) syntax error and add all required CFLAGS and LIBS.
* gst/flv/gstflvparse.c: (FLV_GET_STRING),
(gst_flv_parse_metadata_item), (gst_flv_parse_tag_script),
(gst_flv_parse_tag_audio), (gst_flv_parse_tag_video),
(gst_flv_parse_tag_timestamp), (gst_flv_parse_tag_type):
Rewrite the script tag parsing to make sure we don't try to read
more data than we have. Also use GST_READ_UINT24_BE directly and
fix some minor memory leaks.
This should make all crashes on fuzzed FLV files disappear.
Original commit message from CVS:
* gst/flv/gstflvparse.c: (FLV_GET_STRING),
(gst_flv_parse_tag_audio), (gst_flv_parse_tag_video),
(gst_flv_parse_tag_type), (gst_flv_parse_header):
Properly check everywhere that we have enough data to parse and
don't read outside the allocated memory region.
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video):
If the caps change during playback and negotiation fails error out
instead of trying to continue.
Original commit message from CVS:
* gst/flv/gstflvmux.c: (gst_flv_mux_audio_pad_setcaps),
(gst_flv_mux_request_new_pad), (gst_flv_mux_write_buffer),
(gst_flv_mux_collected):
* gst/flv/gstflvmux.h:
* gst/flv/gstflvparse.c: (gst_flv_parse_audio_negotiate):
Add support for Speex audio and allow buffers without valid
timestamp in the muxer.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_loop),
(gst_flv_demux_find_offset), (gst_flv_demux_handle_seek_push),
(gst_flv_demux_handle_seek_pull):
Don't post an error message on the bus if sending EOS downstream
didn't work. Fixes bug #550454.
Fix seek event handling to look at the flags of the seek event
instead of assuming some random flags, don't send segment-start
messages when operating in push mode and push seek events upstream
if we couldn't handle them.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_create_index),
(gst_flv_demux_loop):
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_script),
(gst_flv_parse_tag_audio), (gst_flv_parse_tag_video),
(gst_flv_parse_tag_timestamp):
* gst/flv/gstflvparse.h:
In pull mode we create our own index before doing anything else
and don't use the index provided by some files (which are more than
often incorrect and cause failed seeks).
For push mode we still use the index provided by the file and extend it
while doing the playback.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_push_src_event),
(gst_flv_demux_loop), (gst_flv_demux_handle_seek_pull),
(gst_flv_demux_sink_event):
Instead of using gst_pad_event_default() use a small
gst_pad_push_event() wrapper that only does what we want and is much
more simple.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_change_state),
(gst_flv_demux_set_index), (gst_flv_demux_init):
* gst/flv/gstflvdemux.h:
If our index was created by the element and not provided from the
outside we should destroy it when starting a new stream to get
all old entries removed.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_pull_range):
Improve debugging a bit when pulling a buffer from upstream fails.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup),
(gst_flv_demux_handle_seek_pull), (gst_flv_demux_dispose):
* gst/flv/gstflvdemux.h:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video):
Close the currently playing segment from the streaming thread
instead of the thread where the seek event is handled.
Original commit message from CVS:
Patch by: David Härdeman <david at hardeman dot nu>
* gst/mpegdemux/mpegtspacketizer.c: (mpegts_packetizer_parse_nit):
Add support for the frequency list descriptor, which provides
additional frequencies that should be scanned by a DVB application.
Fixes bug #557814.
Original commit message from CVS:
Patch by: vanista <vanista at gmail dot com>
* gst/mpegtsmux/mpegtsmux.c: (mpegtsmux_choose_best_stream):
Fix EOS logic by correctly popping the collect pad buffers only
when we've chosen to use them instead of popping them always and
storing them in a private queue.
Before the pipeline would deadlock if all pads go EOS at the same
time. Fixes bug #557763.
Original commit message from CVS:
Patch by: Josep Torra
* gst/mpegdemux/gstmpegtsdemux.c:
* gst/mpegdemux/gstmpegtsdemux.h:
Properly handle some resync cases in the optimised
buffering strategy.
Original commit message from CVS:
* gst/flv/gstflvmux.c: (gst_flv_mux_audio_pad_setcaps),
(gst_flv_mux_write_buffer):
Don't set video_codec to the value that actually should go
into audio codec, otherwise we create invalid files.
Fixes bug #556564.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_jitter_buffer_sink_parse_caps),
(gst_rtp_jitter_buffer_flush_start),
(gst_rtp_jitter_buffer_flush_stop), (gst_rtp_jitter_buffer_chain),
(gst_rtp_jitter_buffer_loop):
Fix problem with using the output seqnum counter to check for input
seqnum discontinuities.
Improve gap detection and recovery, reset and flush the jitterbuffer on
seqnum restart. Fixes#556520.
* gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_insert):
Fix wrong G_LIKELY.
Original commit message from CVS:
* gst/rtpmanager/gstrtpsession.c:
(gst_rtp_session_event_send_rtcp_src), (create_send_rtcp_src):
Install event handler on the rtcp_src pad, make LATENCY event return
TRUE.
Original commit message from CVS:
* gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_send_data):
Make sure the mpegpsdemux element creates valid newsegment events.
Fixes#556428
Original commit message from CVS:
patch by: Sebastian Pölsterl
* gst/mpegdemux/mpegtspacketizer.c:
Fixes segfault in get_encoding_and_convert.
Fixes#556482
Original commit message from CVS:
patch by: Josep Torra
* gst/mpegdemux/gstmpegtsdemux.c:
Fixes a segfault in the adaptation buffer size strategy.
Fixes#556440
Original commit message from CVS:
* gst/selector/gstinputselector.c: (gst_input_selector_event),
(gst_input_selector_query):
Gracefully handle the cases when we dont' have otherpad.
Fixes#556430
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video):
Use gst_pad_alloc_buffer_and_set_caps() to make sure we get
a buffer with caps that we can work with (i.e. the pad's caps).
Add non-keyframe video frames to the index too but without the
keyframe flag.
Add audio frames to the index only if we have no video stream.
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video):
Create pads from the pad templates, use fixed caps on them
and only activate them after the caps are set.
Original commit message from CVS:
2008-10-10 Jan Schmidt <jan.schmidt@sun.com>
* gst/flacparse/gstbaseparse.c (gst_base_parse_push_buffer),
(gst_base_parse_update_upstream_durations):
Fix compiler warning on OS/X about parameters not matching
the debug format string.
Original commit message from CVS:
* gst/deinterlace2/tvtime/tomsmocomp.c:
(gst_deinterlace_method_tomsmocomp_class_init):
Fix unused variable compiler warning when not building
X86 assembly.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_loop):
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_timestamp):
* gst/flv/gstflvparse.h:
Get an approximate duration of the file by looking at the timestamp
of the last tag in pull mode. If we get (maybe better) duration from
metadata later we'll use that instead.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_pull_range),
(gst_flv_demux_pull_tag), (gst_flv_demux_pull_header):
Refactor _pull_range() logic with checks into a seperate function
to make things a bit more readable.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_chain),
(gst_flv_demux_base_init):
Use gst_element_class_set_details_simple().
If we get GST_FLOW_NOT_LINKED in the parse loop but at least
one of the pads is linked continue the loop.
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_audio_negotiate),
(gst_flv_parse_tag_audio), (gst_flv_parse_video_negotiate):
Correct caps for video codec id 5: It's On2 VP6 with alpha channel
which needs a different decoder and has different caps.
Add support for audio codec id 14, which is MP3 with 8kHz sampling
rate.
Fix endianness and signedness for raw audio codec ids.
Add support for alaw and mulaw audio.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_chain):
Go out of the parse loop as soon as we get an error instead
of parsing until the GstAdapter is empty.
Add some explanations about the header and tag size.
Don't print synchronizing message if everything is fine.
Original commit message from CVS:
* gst/flv/Makefile.am:
* gst/flv/gstflvdemux.c: (plugin_init):
* gst/flv/gstflvmux.c: (gst_flv_mux_base_init),
(gst_flv_mux_class_init), (gst_flv_mux_init),
(gst_flv_mux_finalize), (gst_flv_mux_reset),
(gst_flv_mux_handle_src_event), (gst_flv_mux_handle_sink_event),
(gst_flv_mux_video_pad_setcaps), (gst_flv_mux_audio_pad_setcaps),
(gst_flv_mux_request_new_pad), (gst_flv_mux_release_pad),
(gst_flv_mux_write_header), (gst_flv_mux_write_buffer),
(gst_flv_mux_collected), (gst_flv_mux_change_state):
* gst/flv/gstflvmux.h:
Add first version of a FLV muxer. The only missing feature is writing
of stream metadata.
Original commit message from CVS:
* gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_send_data),
(gst_flups_demux_parse_pack_start):
Prevent a division by zero if last mux rate was zero.
If we're going to send a NEWSEGMENT event but the segment start
and the current buffer timestamp differ by more than a second we
will start the NEWSEGMENT at the buffer timestamp.
This fixes playback of the tv2-1_25.mpg file, which has 0 as first SCR
but the first PTS are around 1 hour and 40 minutes.
Fixes bug #553755.
Original commit message from CVS:
Patch by: Håvard Graff <havard dot graff at tandberg dot com>
* gst/rtpmanager/gstrtpbin-marshal.list:
Add marshaller for new action signal.
* gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_get_internal_session),
(gst_rtp_bin_class_init):
* gst/rtpmanager/gstrtpbin.h:
Add action signal to retrieve the internal RTPSession object.
* gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init),
(gst_rtp_session_get_property), (gst_rtp_session_release_pad):
Add property to access the internal RTPSession object.
* gst/rtpmanager/rtpsession.c: (rtp_session_class_init),
(check_collision):
* gst/rtpmanager/rtpsession.h:
Add action signal to retrieve an RTPSource object by SSRC.
See #555396.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_jitter_buffer_sink_parse_caps):
Only update the seqnum-base when it was not already configured for the
streams.
Original commit message from CVS:
* gst/mpegtsparse/mpegtsparse.c:
Actually copy the structure passed in when assigning it because
it gets freed straight after the function call.
Re: pat_info and pmt_info GstStructures.
Original commit message from CVS:
Patch by: Josep Torra
* gst/mpegdemux/gstmpegtsdemux.c:
Fix wrong firing of critical introduced by previous optimisation.
Original commit message from CVS:
* gst/flacparse/gstbaseparse.c: (gst_base_parse_finalize),
(gst_base_parse_class_init), (gst_base_parse_push_buffer),
(gst_base_parse_change_state), (gst_base_parse_set_index),
(gst_base_parse_get_index):
Add support for GstIndex.
Original commit message from CVS:
* gst/flacparse/gstbaseparse.c: (gst_base_parse_class_init),
(gst_base_parse_push_buffer),
(gst_base_parse_update_upstream_durations),
(gst_base_parse_convert), (gst_base_parse_frame_in_segment):
* gst/flacparse/gstbaseparse.h:
Provide a vfunc for the subclass to decide whether a frame is inside
the segment or not and add a default implementation.
Fix approximate bitrate calculations.
Original commit message from CVS:
* gst/flacparse/gstbaseparse.c: (gst_base_parse_class_init),
(gst_base_parse_init), (gst_base_parse_push_buffer),
(gst_base_parse_update_upstream_durations), (gst_base_parse_chain),
(gst_base_parse_loop), (gst_base_parse_activate),
(gst_base_parse_convert), (gst_base_parse_query):
Approximate the average bitrate, duration and size if possible
and add a default conversion function which uses this for
time<->byte conversions.
* gst/flacparse/gstflacparse.c: (gst_flac_parse_get_frame_size):
Fix parsing if upstream gives -1 as duration.
Original commit message from CVS:
* gst/rtpmanager/rtpsession.c: (on_new_ssrc), (on_ssrc_collision),
(on_ssrc_validated), (on_ssrc_active), (on_ssrc_sdes),
(on_bye_ssrc), (on_bye_timeout), (on_timeout), (on_sender_timeout):
Ref the rtpsource object before we release the session lock when we emit
the signals.
Original commit message from CVS:
Patch from: Josep Torra
* gst/mpegdemux/gstmpegtsdemux.c:
* gst/mpegdemux/gstmpegtsdemux.h:
Use a preallocated buffer per stream for PES packets sent on src pads.
Adaptively adjust buffer size appropriately.
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (create_session),
(gst_rtp_bin_associate), (gst_rtp_bin_sync_chain):
Do not try to adjust the offset of streams for which we have not yet
seen an SR packet. Avoids large ts-offsets in some cases.
Original commit message from CVS:
* gst/aiffparse/aiffparse.c:
Support chunks in AIFF in any order in pull mode, and any order so
long as we get COMM before the actual data (SSND) in push mode.
Fixes playback of AIFC files.
Original commit message from CVS:
* gst/selector/gstinputselector.c: (gst_selector_pad_reset),
(gst_input_selector_reset), (gst_input_selector_change_state):
Reset the selector state when going to READY.
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (on_sender_timeout),
(create_session), (gst_rtp_bin_associate),
(gst_rtp_bin_sync_chain), (gst_rtp_bin_class_init),
(gst_rtp_bin_request_new_pad):
* gst/rtpmanager/gstrtpbin.h:
Add signal to notify listeners when a sender becomes a receiver.
Tweak lip-sync code, don't store our own copy of the ts-offset of the
jitterbuffer, don't adjust sync if the change is less than 4msec.
Get the RTP timestamp <-> GStreamer timestamp relation directly from
the jitterbuffer instead of our inaccurate version from the source.
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop),
(gst_rtp_jitter_buffer_get_sync):
* gst/rtpmanager/gstrtpjitterbuffer.h:
Add G_LIKELY macros, use global defines for max packet reorder and
dropouts.
Reset the jitterbuffer clock skew detection when packets seqnums are
changed unexpectedly.
* gst/rtpmanager/gstrtpsession.c: (on_sender_timeout),
(gst_rtp_session_class_init), (gst_rtp_session_init):
* gst/rtpmanager/gstrtpsession.h:
Add sender timeout signal.
* gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew),
(calculate_skew), (rtp_jitter_buffer_insert),
(rtp_jitter_buffer_get_sync):
* gst/rtpmanager/rtpjitterbuffer.h:
Add some G_LIKELY macros.
Keep track of the extended RTP timestamp so that we can report the RTP
timestamp <-> GStreamer timestamp relation for lip-sync.
Remove server timestamp gap detection code, the server can sometimes
make a huge gap in timestamps (talk spurts,...) see #549774.
Detect timetamp weirdness instead by observing the sender/receiver
timestamp relation and resync if it changes more than 1 second.
Add method to report about the current rtp <-> gst timestamp relation
which is needed for lip-sync.
* gst/rtpmanager/rtpsession.c: (rtp_session_class_init),
(on_sender_timeout), (check_collision), (rtp_session_process_sr),
(session_cleanup):
* gst/rtpmanager/rtpsession.h:
Add sender timeout signal.
Remove inaccurate rtp <-> gst timestamp relation code, the
jitterbuffer can now do an accurate reporting about this.
* gst/rtpmanager/rtpsource.c: (rtp_source_init),
(rtp_source_update_caps), (calculate_jitter),
(rtp_source_process_rtp):
* gst/rtpmanager/rtpsource.h:
Remove inaccurate rtp <-> gst timestamp relation code.
* gst/rtpmanager/rtpstats.h:
Define global max-reorder and max-dropout constants for use in various
subsystems.
Original commit message from CVS:
* gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_parse_pack_start):
* gst/mpegdemux/gstmpegtsdemux.c: (gst_fluts_demux_data_cb):
Fix build on macosx.