Commit graph

1114 commits

Author SHA1 Message Date
Wim Taymans
120c55eb27 gst/rtpmanager/gstrtpjitterbuffer.c: Remove private version of a function that is in -base now.
Original commit message from CVS:
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_init), (gst_rtp_jitter_buffer_flush_stop),
(gst_rtp_jitter_buffer_src_event), (gst_rtp_jitter_buffer_chain),
(gst_rtp_jitter_buffer_loop):
Remove private version of a function that is in -base now.
Add src event handler.
Rework the jitterbuffer pushing loop so that it can quickly react to
lost packets and instruct the depayloader of them. This can then be used
to implement error concealment data.
2008-04-25 09:35:43 +00:00
Wim Taymans
5fe12accc9 gst/rtpmanager/gstrtpsession.c: Set up some internal links functions for the RTCP and sync pads because the defaults ...
Original commit message from CVS:
* gst/rtpmanager/gstrtpsession.c:
(gst_rtp_session_query_send_rtcp_src), (create_recv_rtcp_sink),
(create_send_rtcp_src):
Set up some internal links functions for the RTCP and sync pads because
the defaults are really not correct.
Implement a query handler for the RTCP src pad, mostly to correctly
report about the latency.
2008-04-25 08:21:06 +00:00
Wim Taymans
9285e110cc gst/rtpmanager/: Also keep track of the first buffer timestamp together with the first
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate),
(gst_rtp_bin_sync_chain):
* gst/rtpmanager/rtpsession.c: (update_arrival_stats),
(rtp_session_process_sr), (rtp_session_on_timeout):
* gst/rtpmanager/rtpsource.c: (rtp_source_init),
(calculate_jitter):
* gst/rtpmanager/rtpsource.h:
* gst/rtpmanager/rtpstats.h:
Also keep track of the first buffer timestamp together with the first
RTP timestamp as they both are needed to construct the timing of
outgoing packets in the jitterbuffer and are therefore also needed to
manage lip-sync. This fixes lip-sync if the first RTP packets arrive
with a wildly different gap.
2008-04-25 08:15:58 +00:00
Wim Taymans
af19b91216 gst/flv/gstflvdemux.c: Forward unknown queries upstream instead of returning FALSE on them.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_query):
Forward unknown queries upstream instead of returning FALSE on them.
2008-04-25 08:07:36 +00:00
Wim Taymans
c64da4164b gst/sdp/gstsdpdemux.c: Ref caps, see #528245.
Original commit message from CVS:
* gst/sdp/gstsdpdemux.c: (request_pt_map):
Ref caps, see #528245.
2008-04-22 08:18:05 +00:00
Olivier Crete
4be1b4a30a gst/rtpmanager/gstrtpbin.c: Ref caps when inserting into the cache.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map),
(new_ssrc_pad_found):
Ref caps when inserting into the cache.
Don't leak pads.
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_get_clock_rate),
(gst_rtp_jitter_buffer_query):
Avoid a caps leak.
Don't leak refcount in query.
* gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_get_caps),
(gst_rtp_pt_demux_chain):
Avoid caps leaks.
* gst/rtpmanager/gstrtpsession.c: (source_get_sdes_structure),
(gst_rtp_session_init), (return_true),
(gst_rtp_session_clear_pt_map), (gst_rtp_session_cache_caps),
(gst_rtp_session_clock_rate):
Ref caps when inserting into the cache.
Fix some more caps leaks. Fixes #528245.
2008-04-21 08:26:37 +00:00
Wim Taymans
0fcc94b64e gst/rtpmanager/: Unset GValues after g_signal_emitv so that we avoid a refcount leak.
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (get_pt_map), (free_client),
(gst_rtp_bin_associate), (gst_rtp_bin_get_free_pad_name):
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_get_clock_rate):
* gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_get_caps):
* gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_clock_rate):
Unset GValues after g_signal_emitv so that we avoid a refcount leak.
Don't leak a padname.
Don't leak client streams list.
Lock rtpbin when associating streams. Fixes #528245.
2008-04-17 07:31:44 +00:00
Tim-Philipp Müller
d548425062 gst/flv/gstflvparse.c: Handle NULL returns from FLV_GET_STRING() more gracefully. Fixes crash caused by a strlen on a...
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_metadata_item),
(gst_flv_parse_tag_script):
Handle NULL returns from FLV_GET_STRING() more gracefully. Fixes
crash caused by a strlen on a NULL string (#527622).
2008-04-11 23:19:21 +00:00
Tim-Philipp Müller
a1023d43ce configure.ac: Bump core/base requirements to released versions to avoid confusion.
Original commit message from CVS:
* configure.ac:
Bump core/base requirements to released versions to avoid
confusion.
* gst/deinterlace/gstdeinterlace.c: (deinterlace_debug),
(GST_CAT_DEFAULT), (gst_deinterlace_base_init),
(gst_deinterlace_set_caps), (plugin_init):
Add debug category, use _set_element_details_simple and
remove special code path for Y42B to calculate offsets and
strides; libgstvideo knows how to handle this format now.
2008-04-11 13:57:03 +00:00
Tim-Philipp Müller
2079938fc2 gst/cdxaparse/: Port VCD parser (formerly cdxastrip) from 0.8 to 0.10. Doesn't do anything the 0.8 version didn't do ...
Original commit message from CVS:
* gst/cdxaparse/Makefile.am:
* gst/cdxaparse/gstcdxaparse.c:
* gst/cdxaparse/gstcdxastrip.c:
* gst/cdxaparse/gstcdxastrip.h:
* gst/cdxaparse/gstvcdparse.c:
* gst/cdxaparse/gstvcdparse.h:
Port VCD parser (formerly cdxastrip) from 0.8 to 0.10. Doesn't do
anything the 0.8 version didn't do though.
2008-04-11 13:08:24 +00:00
Tim-Philipp Müller
c1193130c2 gst/nsf/nsf.h: Change prototype of process function here too to avoid 'incompatible assignment' warnings.
Original commit message from CVS:
* gst/nsf/nsf.h:
Change prototype of process function here too to avoid
'incompatible assignment' warnings.
2008-04-10 10:01:48 +00:00
Peter Kjellerstedt
fbc2a12aa5 gst/rtpmanager/: Avoid leaking pads in the RTP manager.
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (free_session):
* gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_finalize):
Avoid leaking pads in the RTP manager.
2008-04-09 22:27:50 +00:00
Jan Schmidt
ad302618b6 gst/nsf/nes_apu.*: Don't do void pointer arithmetic - it's a gcc extension.
Original commit message from CVS:
* gst/nsf/nes_apu.c: (apu_process):
* gst/nsf/nes_apu.h:
Don't do void pointer arithmetic - it's a gcc extension.
2008-04-09 13:43:51 +00:00
Tim-Philipp Müller
61ab5ecfee gst/subenc/gstsrtenc.*: GstSrtenc => GstSrtEnc and gst_srtenc_ => gst_srt_enc_.
Original commit message from CVS:
* gst/subenc/gstsrtenc.c:
* gst/subenc/gstsrtenc.h:
GstSrtenc => GstSrtEnc and gst_srtenc_ => gst_srt_enc_.
2008-04-04 20:43:18 +00:00
Tim-Philipp Müller
3e89814bb1 Rename new srtenc plugin to subenc.
Original commit message from CVS:
* configure.ac:
* gst-plugins-bad.spec.in:
* gst/srtenc/Makefile.am:
* gst/srtenc/gstsrtenc.c:
* gst/srtenc/gstsrtenc.h:
* gst/subenc/Makefile.am:
* gst/subenc/gstsrtenc.c: (plugin_init):
Rename new srtenc plugin to subenc.
2008-04-01 22:40:49 +00:00
Zaheer Abbas Merali
4f42eb7ef9 gst/mpegtsparse/mpegtspacketizer.c: Cable delivery subsystem descriptors' frequency's bcd is measured in 100Hz units ...
Original commit message from CVS:
* gst/mpegtsparse/mpegtspacketizer.c:
Cable delivery subsystem descriptors' frequency's bcd
is measured in 100Hz units so adjust multiplier accordingly.
2008-04-01 19:53:53 +00:00
Thijs Vermeir
eaa8e58f0c Add srt subtitle encoder
Original commit message from CVS:
* configure.ac:
* gst/srtenc/Makefile.am:
* gst/srtenc/gstsrtenc.c:
* gst/srtenc/gstsrtenc.h:
Add srt subtitle encoder
2008-04-01 13:42:55 +00:00
Sebastian Dröge
ccf0b720ba gst/nsf/: Remove memguard again and apply hopefully all previously dropped local patches. Should be really better tha...
Original commit message from CVS:
* gst/nsf/Makefile.am:
* gst/nsf/fds_snd.c:
* gst/nsf/mmc5_snd.c:
* gst/nsf/nsf.c:
* gst/nsf/types.h:
* gst/nsf/vrc7_snd.c:
* gst/nsf/vrcvisnd.c:
* gst/nsf/memguard.c:
* gst/nsf/memguard.h:
Remove memguard again and apply hopefully all previously dropped
local patches. Should be really better than the old version now.
2008-03-26 07:40:58 +00:00
Wim Taymans
6763549151 gst/nsf/: Unbreak compilation by disabling memguard and doing some dirty hack fixes to make it compile on 64bits.
Original commit message from CVS:
* gst/nsf/memguard.c: (_my_free):
* gst/nsf/types.h:
Unbreak compilation by disabling memguard and doing some dirty hack
fixes to make it compile on 64bits.
2008-03-25 16:58:53 +00:00
Andreas Henriksson
a4d0dacec2 gst/nsf/: Update our internal nosefart to nosefart-2.7-mls to fix segfaults on some files. Fixes bug #498237.
Original commit message from CVS:
Patch by: Andreas Henriksson <andreas at fatal dot set>
* gst/nsf/Makefile.am:
* gst/nsf/dis6502.h:
* gst/nsf/fds_snd.c:
* gst/nsf/fds_snd.h:
* gst/nsf/fmopl.c:
* gst/nsf/fmopl.h:
* gst/nsf/gstnsf.c:
* gst/nsf/log.c:
* gst/nsf/log.h:
* gst/nsf/memguard.c:
* gst/nsf/memguard.h:
* gst/nsf/mmc5_snd.c:
* gst/nsf/mmc5_snd.h:
* gst/nsf/nes6502.c:
* gst/nsf/nes6502.h:
* gst/nsf/nes_apu.c:
* gst/nsf/nes_apu.h:
* gst/nsf/nsf.c:
* gst/nsf/nsf.h:
* gst/nsf/osd.h:
* gst/nsf/types.h:
* gst/nsf/vrc7_snd.c:
* gst/nsf/vrc7_snd.h:
* gst/nsf/vrcvisnd.c:
* gst/nsf/vrcvisnd.h:
Update our internal nosefart to nosefart-2.7-mls to fix segfaults
on some files. Fixes bug #498237.
Remove some // comments, fix some compiler warnings and use pow()
instead of a slow, selfmade implementation.
2008-03-25 15:56:13 +00:00
Rene Stadler
fe1f183340 Make rganalysis and rglimiter elements GAP-flag aware.
Original commit message from CVS:
* gst/replaygain/gstrganalysis.c (gst_rg_analysis_init),
(gst_rg_analysis_transform_ip):
* gst/replaygain/gstrglimiter.c (gst_rg_limiter_init),
(gst_rg_limiter_transform_ip):
Make rganalysis and rglimiter elements GAP-flag aware.
* tests/check/elements/rganalysis.c: (test_gap_buffers),
(rganalysis_suite):
* tests/check/elements/rglimiter.c (test_gap), (rglimiter_suite):
Add tests to verify gap-awareness.
2008-03-24 12:32:59 +00:00
Sebastian Dröge
180aee532b Use G_PARAM_STATIC_STRINGS everywhere for GParamSpecs that use static strings (i.e. all). This gives us less memory u...
Original commit message from CVS:
* configure.ac:
* ext/alsa/gstalsamixerelement.c:
(gst_alsa_mixer_element_class_init):
* ext/alsa/gstalsasink.c: (gst_alsasink_class_init):
* ext/alsa/gstalsasrc.c: (gst_alsasrc_class_init):
* ext/cdparanoia/gstcdparanoiasrc.c:
(gst_cd_paranoia_src_class_init):
* ext/gio/gstgiosink.c: (gst_gio_sink_class_init):
* ext/gio/gstgiosrc.c: (gst_gio_src_class_init):
* ext/gio/gstgiostreamsink.c: (gst_gio_stream_sink_class_init):
* ext/gio/gstgiostreamsrc.c: (gst_gio_stream_src_class_init):
* ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_class_init):
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_class_init):
* ext/ogg/gstoggmux.c: (gst_ogg_mux_class_init):
* ext/pango/gsttextoverlay.c: (gst_text_overlay_class_init):
* ext/pango/gsttextrender.c: (gst_text_render_class_init):
* ext/theora/theoradec.c: (gst_theora_dec_class_init):
* ext/theora/theoraenc.c: (gst_theora_enc_class_init):
* ext/theora/theoraparse.c: (gst_theora_parse_class_init):
* ext/vorbis/vorbisenc.c: (gst_vorbis_enc_class_init):
* gst-libs/gst/audio/gstaudiofiltertemplate.c:
(gst_audio_filter_template_class_init):
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_class_init):
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_class_init):
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_class_init):
* gst-libs/gst/interfaces/mixertrack.c:
(gst_mixer_track_class_init):
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_class_init):
* gst-libs/gst/rtp/gstbasertppayload.c:
(gst_basertppayload_class_init):
* gst/audioconvert/gstaudioconvert.c:
(gst_audio_convert_class_init):
* gst/audiorate/gstaudiorate.c: (gst_audio_rate_class_init):
* gst/audioresample/gstaudioresample.c:
(gst_audioresample_class_init):
* gst/audiotestsrc/gstaudiotestsrc.c:
(gst_audio_test_src_class_init):
* gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init):
* gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init):
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init),
(preroll_unlinked):
* gst/playback/gstplaybin.c: (gst_play_bin_class_init):
* gst/playback/gstplaybin2.c: (gst_play_bin_class_init):
* gst/playback/gstplaysink.c: (gst_play_sink_class_init):
* gst/playback/gstqueue2.c: (gst_queue_class_init):
* gst/playback/gststreaminfo.c: (gst_stream_info_class_init):
* gst/playback/gststreamselector.c: (gst_selector_pad_class_init),
(gst_stream_selector_class_init):
* gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_class_init):
* gst/subparse/gstsubparse.c: (gst_sub_parse_class_init):
* gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init):
* gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_class_init):
* gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_class_init):
* gst/tcp/gsttcpserversink.c: (gst_tcp_server_sink_class_init):
* gst/tcp/gsttcpserversrc.c: (gst_tcp_server_src_class_init):
* gst/videorate/gstvideorate.c: (gst_video_rate_class_init):
* gst/videoscale/gstvideoscale.c: (gst_video_scale_class_init):
* gst/videotestsrc/gstvideotestsrc.c:
(gst_video_test_src_class_init):
* gst/volume/gstvolume.c: (gst_volume_class_init):
* sys/v4l/gstv4lelement.c: (gst_v4lelement_class_init):
* sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_class_init):
* sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_class_init):
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_class_init):
* sys/ximage/ximagesink.c: (gst_ximagesink_class_init):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_class_init):
Use G_PARAM_STATIC_STRINGS everywhere for GParamSpecs that use
static strings (i.e. all). This gives us less memory usage,
fewer allocations and thus less memory defragmentation. Depend
on core CVS for this. Fixes bug #523806.
2008-03-22 15:00:47 +00:00
Wim Taymans
29d918352b gst/selector/gstinputselector.c: Do g_object_notify() only when not holding the lock to get the property because othe...
Original commit message from CVS:
* gst/selector/gstinputselector.c:
(gst_input_selector_set_active_pad), (gst_input_selector_switch):
Do g_object_notify() only when not holding the lock to get the property
because otherwise we run into a deadlock with the deep-notify handlers
that are possibly installed.
2008-03-20 18:10:29 +00:00
Wim Taymans
1cb3f3903b gst/selector/gstinputselector.c: Release the selector lock when pad alloc happens on a non selected pad.
Original commit message from CVS:
* gst/selector/gstinputselector.c: (gst_selector_pad_class_init),
(gst_selector_pad_event), (gst_selector_pad_bufferalloc),
(gst_selector_pad_chain), (gst_input_selector_set_active_pad):
Release the selector lock when pad alloc happens on a non selected pad.
2008-03-20 17:48:49 +00:00
Wim Taymans
e20e15e5a2 gst/selector/gstinputselector.c: Add pad property to configure behaviour of the unselected pad, it can return OK or N...
Original commit message from CVS:
* gst/selector/gstinputselector.c: (gst_selector_pad_class_init),
(gst_selector_pad_init), (gst_selector_pad_set_property),
(gst_selector_pad_get_property), (gst_selector_pad_event),
(gst_selector_pad_bufferalloc), (gst_selector_pad_chain),
(gst_input_selector_set_active_pad):
Add pad property to configure behaviour of the unselected pad, it can
return OK or NOT_LINKED, based on the use case.
2008-03-20 17:07:07 +00:00
Wim Taymans
a00c9300d4 gst/selector/gstinputselector.*: Figure out the locking a bit more.
Original commit message from CVS:
* gst/selector/gstinputselector.c:
(gst_selector_pad_get_running_time), (gst_selector_pad_reset),
(gst_selector_pad_event), (gst_selector_pad_bufferalloc),
(gst_input_selector_wait), (gst_selector_pad_chain),
(gst_input_selector_class_init), (gst_input_selector_init),
(gst_input_selector_dispose), (gst_segment_set_start),
(gst_input_selector_set_active_pad),
(gst_input_selector_set_property),
(gst_input_selector_get_property),
(gst_input_selector_get_linked_pad),
(gst_input_selector_is_active_sinkpad),
(gst_input_selector_activate_sinkpad),
(gst_input_selector_request_new_pad),
(gst_input_selector_release_pad),
(gst_input_selector_change_state), (gst_input_selector_block),
(gst_input_selector_switch):
* gst/selector/gstinputselector.h:
Figure out the locking a bit more.
Mark buffers with discont after switching.
Fix initial segment forwarding, make sure to only forward one segment
regardless of what the sequence of buffers/segments is. See #522203.
Improve flushing when blocked.
Return NOT_LINKED when a stream is not selected.
Not API change for the switch signal in the docs.
Fix start/time/accum values of the new segment.
Correctly unlock and flush a blocking selector when going to READY.
2008-03-20 16:48:46 +00:00
Stefan Kost
7a1019a2b3 gst/bayer/gstbayer2rgb.c: Include stdlib.h for abs.
Original commit message from CVS:
* gst/bayer/gstbayer2rgb.c:
Include stdlib.h for abs.
2008-03-20 15:49:22 +00:00
Stefan Kost
1d98211b08 gst/freeze/: Add example to source code documentation blob and remove the 3 line
Original commit message from CVS:
* gst/freeze/FAQ:
* gst/freeze/Makefile.am:
* gst/freeze/gstfreeze.c:
Add example to source code documentation blob and remove the 3 line
FAQ.
* gst/interleave/interleave.c:
Add a source code documentation blob.
2008-03-19 19:56:59 +00:00
William M. Brack
80b032ef17 gst/bayer/gstbayer2rgb.c: Significant improvements. Fixes #521392.
Original commit message from CVS:
Patch by: William M. Brack
* gst/bayer/gstbayer2rgb.c: Significant improvements.  Fixes #521392.
2008-03-14 17:38:10 +00:00
Wim Taymans
665be109b1 gst/selector/gstinputselector.c: Add lots of debugging.
Original commit message from CVS:
* gst/selector/gstinputselector.c: (gst_selector_pad_event),
(gst_selector_pad_bufferalloc), (gst_selector_pad_chain),
(gst_input_selector_class_init),
(gst_input_selector_set_active_pad),
(gst_input_selector_set_property),
(gst_input_selector_push_pending_stop):
Add lots of debugging.
Fix time member in the newsegment event.
2008-03-14 17:22:21 +00:00
Wim Taymans
48d66c2c1f gst/selector/gstinputselector.*: Various cleanups.
Original commit message from CVS:
* gst/selector/gstinputselector.c: (gst_selector_pad_class_init),
(gst_selector_pad_finalize), (gst_selector_pad_get_property),
(gst_selector_pad_event), (gst_input_selector_class_init),
(gst_input_selector_init), (gst_input_selector_set_active_pad),
(gst_input_selector_set_property),
(gst_input_selector_get_property),
(gst_input_selector_request_new_pad),
(gst_input_selector_release_pad),
(gst_input_selector_push_pending_stop),
(gst_input_selector_switch):
* gst/selector/gstinputselector.h:
Various cleanups.
Added tags to the pads.
Select active pad based on the pad object instead of its name.
Fix refcount in set_active_pad.
Add property to get the number of pads.
* gst/selector/gstoutputselector.c:
(gst_output_selector_class_init),
(gst_output_selector_set_property),
(gst_output_selector_get_property):
Various cleanups.
Select the active pad based on the pad object instead of its name.
Fix locking when setting the active pad.
* gst/selector/gstselector-marshal.list:
* tests/check/elements/selector.c: (cleanup_pad),
(selector_set_active_pad), (run_input_selector_buffer_count):
Fixes for pad instead of padname for pad selection.
2008-03-13 16:46:04 +00:00
Sebastian Dröge
e4476e15e0 Use GST_LICENSE, GST_PACKAGE_NAME and GST_PACKAGE_ORIGIN instead of hardcoding values where possible. Fixes bug #522212.
Original commit message from CVS:
* ext/alsaspdif/alsaspdifsink.c:
* ext/gsm/gstgsm.c:
* ext/jack/gstjack.c:
* ext/libmms/gstmms.c:
* ext/neon/gstneonhttpsrc.c:
* ext/shout/gstshout.c:
* ext/timidity/gsttimidity.c:
* ext/timidity/gstwildmidi.c:
* gst/nuvdemux/gstnuvdemux.c:
* gst/tta/gsttta.c:
Use GST_LICENSE, GST_PACKAGE_NAME and GST_PACKAGE_ORIGIN instead
of hardcoding values where possible. Fixes bug #522212.
2008-03-13 14:25:20 +00:00
Olivier Crete
fe7b1e82ee gst/rtpmanager/rtpsession.*: Implement collision and loop detection in rtpmanager.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtpmanager/rtpsession.c: (find_add_conflicting_addresses),
(check_collision), (obtain_source), (rtp_session_create_new_ssrc),
(rtp_session_create_source), (rtp_session_process_rtp),
(rtp_session_process_sr), (rtp_session_process_rr),
(rtp_session_process_sdes), (rtp_session_process_bye),
(rtp_session_send_bye_locked), (rtp_session_send_bye),
(rtp_session_on_timeout):
* gst/rtpmanager/rtpsession.h:
Implement collision and loop detection in rtpmanager.
Fixes #520626.
* gst/rtpmanager/rtpsource.c: (rtp_source_reset),
(rtp_source_init):
* gst/rtpmanager/rtpsource.h:
Add method to reset stats.
2008-03-11 12:40:58 +00:00
Ole André Vadla Ravnås
0b94354a0d gst/rtpmanager/gstrtpsession.c: Avoid a deadlock when joining the RTCP thread in PAUSED because it might be blocked d...
Original commit message from CVS:
Based on patch by: Ole André Vadla Ravnås  <ole.andre.ravnas@tandberg.com>
* gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_init),
(rtcp_thread), (start_rtcp_thread), (stop_rtcp_thread),
(join_rtcp_thread), (gst_rtp_session_change_state):
Avoid a deadlock when joining the RTCP thread in PAUSED because it might
be blocked downstream. Also avoid spawning multiple rtcp threads.
Fixes #520894.
2008-03-11 11:36:03 +00:00
Stefan Kost
4e64ace712 gst/rtpmanager/rtpjitterbuffer.c: Don't try to reset the clock skew when we have no timestamps.
Original commit message from CVS:
Patch by: Stefan Kost <ensonic@users.sf.net>
* gst/rtpmanager/rtpjitterbuffer.c: (calculate_skew):
Don't try to reset the clock skew when we have no timestamps.
Fixes #519005.
2008-03-11 10:43:32 +00:00
Zaheer Abbas Merali
15ac9f5a13 gst/mpegtsparse/: Add parsing of cable delivery system descriptor.
Original commit message from CVS:
* gst/mpegtsparse/gstmpegdesc.h:
* gst/mpegtsparse/mpegtspacketizer.c:
Add parsing of cable delivery system descriptor.
2008-03-04 17:49:15 +00:00
Sebastian Dröge
286ade379b Correct all relevant warnings found by the sparse semantic code analyzer. This include marking several symbols static...
Original commit message from CVS:
* ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_get_type):
* ext/alsa/gstalsasink.c: (set_hwparams):
* ext/alsa/gstalsasrc.c: (set_hwparams):
* ext/gio/gstgio.c: (gst_gio_uri_handler_get_uri):
* ext/ogg/gstoggmux.h:
* ext/ogg/gstogmparse.c:
* gst-libs/gst/audio/audio.c:
* gst-libs/gst/fft/kiss_fft_f64.c: (kiss_fft_f64_alloc):
* gst-libs/gst/pbutils/missing-plugins.c:
(gst_missing_uri_sink_message_new),
(gst_missing_element_message_new),
(gst_missing_decoder_message_new),
(gst_missing_encoder_message_new):
* gst-libs/gst/rtp/gstbasertppayload.c:
* gst-libs/gst/rtp/gstrtcpbuffer.c:
(gst_rtcp_packet_bye_get_reason):
* gst/audioconvert/gstaudioconvert.c:
* gst/audioresample/gstaudioresample.c:
* gst/ffmpegcolorspace/imgconvert.c:
* gst/playback/test.c: (gen_video_element), (gen_audio_element):
* gst/typefind/gsttypefindfunctions.c:
* gst/videoscale/vs_4tap.c:
* gst/videoscale/vs_4tap.h:
* sys/v4l/gstv4lelement.c:
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_get_any_caps):
* sys/v4l/v4l_calls.c:
* sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_capture_init),
(gst_v4lsrc_try_capture):
* sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls),
(gst_ximagesink_ximage_new):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls),
(gst_xvimagesink_xvimage_new):
* tests/check/elements/audioconvert.c:
* tests/check/elements/audioresample.c:
(fail_unless_perfect_stream):
* tests/check/elements/audiotestsrc.c: (setup_audiotestsrc):
* tests/check/elements/decodebin.c:
* tests/check/elements/gdpdepay.c: (setup_gdpdepay),
(setup_gdpdepay_streamheader):
* tests/check/elements/gdppay.c: (setup_gdppay), (GST_START_TEST),
(setup_gdppay_streamheader):
* tests/check/elements/gnomevfssink.c: (setup_gnomevfssink):
* tests/check/elements/multifdsink.c: (setup_multifdsink):
* tests/check/elements/textoverlay.c:
* tests/check/elements/videorate.c: (setup_videorate):
* tests/check/elements/videotestsrc.c: (setup_videotestsrc):
* tests/check/elements/volume.c: (setup_volume):
* tests/check/elements/vorbisdec.c: (setup_vorbisdec):
* tests/check/elements/vorbistag.c:
* tests/check/generic/clock-selection.c:
* tests/check/generic/states.c: (setup), (teardown):
* tests/check/libs/cddabasesrc.c:
* tests/check/libs/video.c:
* tests/check/pipelines/gio.c:
* tests/check/pipelines/oggmux.c:
* tests/check/pipelines/simple-launch-lines.c:
(simple_launch_lines_suite):
* tests/check/pipelines/streamheader.c:
* tests/check/pipelines/theoraenc.c:
* tests/check/pipelines/vorbisdec.c:
* tests/check/pipelines/vorbisenc.c:
* tests/examples/seek/scrubby.c:
* tests/examples/seek/seek.c: (query_positions_elems),
(query_positions_pads):
* tests/icles/stress-xoverlay.c: (myclock):
Correct all relevant warnings found by the sparse semantic code
analyzer. This include marking several symbols static, using
NULL instead of 0 for pointers and using "foo (void)" instead
of "foo ()" for declarations.
* win32/common/libgstrtp.def:
Add gst_rtp_buffer_set_extension_data to the symbol definition file.
2008-03-03 06:04:02 +00:00
Jens Granseuer
3f4628dd47 gst/mve/gstmvedemux.c: Fix audio discontinuity that happens when silent chunks are followed by real data again. Fixes...
Original commit message from CVS:
Patch by: Jens Granseuer <jensgr at gmx dot net>
* gst/mve/gstmvedemux.c: (gst_mve_audio_data),
(gst_mve_demux_get_type):
Fix audio discontinuity that happens when silent chunks are
followed by real data again. Fixes bug #519905.
2008-03-03 04:39:48 +00:00
Zaheer Abbas Merali
adf2d86155 gst/mpegtsparse/mpegtsparse.c: Only send PMTs to program pads that the PMT is for even if on same pid.
Original commit message from CVS:
* gst/mpegtsparse/mpegtsparse.c:
Only send PMTs to program pads that the PMT is for even if
on same pid.
As a by-product, we now no longer hardcode any psi pid numbers.
Also remove pcr stream from old pmt when we apply a new pmt.
2008-02-28 13:22:24 +00:00
Stefan Kost
84ac3f0c56 gst/selector/gstoutputselector.c: Fix changing to same pad twice before a chain call.
Original commit message from CVS:
* gst/selector/gstoutputselector.c:
Fix changing to same pad twice before a chain call.
2008-02-26 12:01:37 +00:00
Stefan Kost
188190e0e8 gst/selector/gstinputselector.*: Added "select-all" property to make it work like aggregator in 0.8.
Original commit message from CVS:
* gst/selector/gstinputselector.c:
* gst/selector/gstinputselector.h:
Added "select-all" property to make it work like aggregator in 0.8.
* gst/selector/gstoutputselector.c:
Fix resend-latest behavoiur.
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/selector.c:
Add unit tests for selector.
2008-02-25 08:53:51 +00:00
Tim-Philipp Müller
77d09884c6 Check for and define ERROR_CXXFLAGS and GST_CXXFLAGS and use them when building C++ code.
Original commit message from CVS:
* configure.ac:
* ext/mpeg2enc/Makefile.am:
* ext/soundtouch/Makefile.am:
* gst/modplug/Makefile.am:
Check for and define ERROR_CXXFLAGS and GST_CXXFLAGS and use them
when building C++ code.
2008-02-23 15:01:32 +00:00
Jens Granseuer
266e4741cd Some C89 fixes, moving variable declarations to the beginning of a block. Fixes bug #517937.
Original commit message from CVS:
Patch by: Jens Granseuer <jensgr at gmx dot net>
* gst/librfb/gstrfbsrc.c: (gst_rfb_property_set_version):
* gst/librfb/rfbdecoder.c: (rfb_decoder_message_set_encodings),
(rfb_decoder_state_set_encodings):
* gst/mpegtsparse/mpegtspacketizer.c:
(mpegts_packetizer_parse_nit), (mpegts_packetizer_parse_sdt),
(mpegts_packetizer_parse_eit):
* sys/fbdev/gstfbdevsink.c: (gst_fbdevsink_getcaps),
(gst_fbdevsink_setcaps), (gst_fbdevsink_render):
Some C89 fixes, moving variable declarations to the beginning
of a block. Fixes bug #517937.
2008-02-22 05:33:59 +00:00
Olivier Crete
d12d2dacde gst/rtpmanager/gstrtpbin.c: Fix small memory leak, leaking caps. Fixes #bug 517571.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtpmanager/gstrtpbin.c: (new_ssrc_pad_found):
Fix small memory leak, leaking caps. Fixes #bug 517571.
2008-02-20 09:33:25 +00:00
Sebastian Dröge
d6ca4483a8 gst/tta/Makefile.am: Link tta plugin with libm. Fixes bug #517391.
Original commit message from CVS:
* gst/tta/Makefile.am:
Link tta plugin with libm. Fixes bug #517391.
2008-02-19 10:51:34 +00:00
Olivier Crete
c5b175a689 gst/rtpmanager/gstrtpbin.c: Ignore streams that did not receive an SR packet when doing synchronisation. Fixes #516160.
Original commit message from CVS:
Patch by: Olivier Crete <tester@tester.ca>
* gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate):
Ignore streams that did not receive an SR packet when doing
synchronisation. Fixes #516160.
2008-02-14 16:25:51 +00:00
Sebastian Dröge
4219829c50 gst/dvdspu/gstdvdspu.c: Set n_line_ctrl_i to 0 whenever we free line_ctrl_i. Patch based on an idea by Jan Schmidt, f...
Original commit message from CVS:
* gst/dvdspu/gstdvdspu.c: (gst_dvd_spu_handle_new_spu_buf):
Set n_line_ctrl_i to 0 whenever we free line_ctrl_i. Patch based
on an idea by Jan Schmidt, fixes bug #516436.
2008-02-14 14:33:27 +00:00
Zaheer Abbas Merali
8ede0678be gst/mpegtsparse/: Make sure the gstmpegdesc debug lines do not critical when GST_DEBUG is enabled and also actually o...
Original commit message from CVS:
* gst/mpegtsparse/gstmpegdesc.c:
* gst/mpegtsparse/gstmpegdesc.h:
* gst/mpegtsparse/mpegtsparse.c:
Make sure the gstmpegdesc debug lines do not critical
when GST_DEBUG is enabled and also actually output.
Thanks to Alessandro Decina for spotting.
Fixes #516448
2008-02-14 14:22:57 +00:00
Josep Torra Valles
2e9945f377 gst/h264parse/gsth264parse.c: Fix potential buffer leak in reverse mode. Re-Fixes #516061.
Original commit message from CVS:
Patch by: Josep Torra Valles <josep@fluendo.com>
* gst/h264parse/gsth264parse.c: (gst_h264_parse_chain_reverse):
Fix potential buffer leak in reverse mode. Re-Fixes #516061.
2008-02-13 14:40:33 +00:00
Josep Torra Valles
fe7d133879 gst/h264parse/gsth264parse.c: Fix potential buffer leak in reverse mode. Fixes #516061.
Original commit message from CVS:
Patch by: Josep Torra Valles <josep@fluendo.com>
* gst/h264parse/gsth264parse.c: (gst_h264_parse_chain_reverse):
Fix potential buffer leak in reverse mode. Fixes #516061.
2008-02-12 18:29:29 +00:00