summaryrefslogtreecommitdiffstats
path: root/gst
AgeCommit message (Collapse)AuthorFilesLines
2008-10-09gst/flv/gstflvparse.c: Correct caps for video codec id 5: It's On2 VP6 with ↵Sebastian Dröge1-3/+24
alpha channel which needs a different dec... 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.
2008-10-09gst/flv/gstflvdemux.c: Go out of the parse loop as soon as we get an error ↵Sebastian Dröge1-1/+9
instead of parsing until the GstAdapter is... 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.
2008-10-09gst/flv/: Add first version of a FLV muxer. The only missing feature is ↵Sebastian Dröge4-9/+849
writing of stream metadata. 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.
2008-10-08gst/mpegdemux/: Add Fluendo to the Long Name.Zaheer Abbas Merali2-3/+3
Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegtsdemux.c: Add Fluendo to the Long Name.
2008-10-08Move of mpegtsparse to mpegdemux.Zaheer Abbas Merali8-69/+3898
Original commit message from CVS: * configure.ac: * gst-plugins-bad.spec.in: * gst/mpegdemux/Makefile.am: * gst/mpegdemux/flumpegdemux.c: * gst/mpegdemux/gstmpegdesc.c: * gst/mpegdemux/gstmpegdesc.h: * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtspacketizer.h: * gst/mpegdemux/mpegtsparse.c: * gst/mpegdemux/mpegtsparse.h: Move of mpegtsparse to mpegdemux. Fixes #555193.
2008-10-08Move of mpegtsparse to mpegdemuxZaheer Abbas Merali1-10/+5
Original commit message from CVS: Move of mpegtsparse to mpegdemux
2008-10-08gst/mpegdemux/gstmpegdemux.c: Prevent a division by zero if last mux rate ↵Sebastian Dröge1-8/+14
was zero. 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.
2008-10-07gst/rtpmanager/gstrtpbin-marshal.list: Add marshaller for new action signal.Håvard Graff6-16/+85
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.
2008-10-07gst/selector/gstoutputselector.c: Choose right pad for sending events. Fixes ↵Stefan Kost1-2/+5
#555244 Original commit message from CVS: * gst/selector/gstoutputselector.c: Choose right pad for sending events. Fixes #555244
2008-10-07gst/rtpmanager/gstrtpbin.c: Release pads of the session manager.Wim Taymans2-4/+197
Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (find_session_by_pad), (free_session), (gst_rtp_bin_dispose), (remove_recv_rtp), (remove_recv_rtcp), (remove_send_rtp), (remove_rtcp), (gst_rtp_bin_release_pad): Release pads of the session manager. Start implementing releasing pads of gstrtpbin. * gst/rtpmanager/gstrtpsession.c: (remove_recv_rtp_sink), (remove_recv_rtcp_sink), (remove_send_rtp_sink), (remove_send_rtcp_src), (gst_rtp_session_release_pad): Implement releasing pads in gstrtpsession.
2008-10-07gst/rtpmanager/gstrtpjitterbuffer.c: Only update the seqnum-base when it was ↵Wim Taymans1-5/+7
not already configured for the streams. 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.
2008-10-06gst/mpegtsparse/mpegtsparse.c: Actually copy the structure passed in when ↵Zaheer Abbas Merali1-3/+5
assigning it because it gets freed straight... 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.
2008-10-06gst/mpegdemux/gstmpegtsdemux.c: Fix wrong firing of critical introduced by ↵Zaheer Abbas Merali1-6/+6
previous optimisation. Original commit message from CVS: Patch by: Josep Torra * gst/mpegdemux/gstmpegtsdemux.c: Fix wrong firing of critical introduced by previous optimisation.
2008-10-03gst/mpegtsparse/mpegtsparse.c: Fix possible crash where pat is pointing to a ↵Zaheer Abbas Merali1-2/+5
freed structure. Original commit message from CVS: * gst/mpegtsparse/mpegtsparse.c: Fix possible crash where pat is pointing to a freed structure.
2008-09-30gst/flacparse/gstbaseparse.c: Add support for GstIndex.Sebastian Dröge1-3/+91
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.
2008-09-30gst/flacparse/gstbaseparse.*: Provide a vfunc for the subclass to decide ↵Sebastian Dröge2-34/+57
whether a frame is inside the segment or not... 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.
2008-09-30gst/flacparse/gstbaseparse.c: Approximate the average bitrate, duration and ↵Sebastian Dröge2-76/+190
size if possible and add a default conver... 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.
2008-09-30gst/rtpmanager/rtpsession.c: Ref the rtpsource object before we release the ↵Wim Taymans1-0/+18
session lock when we emit the signals. 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.
2008-09-29Add FLAC parser, based on GstBaseParse. Also add the bit and byte reader ↵Sebastian Dröge10-0/+5247
that will be added to libgstbase later. Original commit message from CVS: * configure.ac: * gst/flacparse/Makefile.am: * gst/flacparse/gstbaseparse.c: (gst_base_parse_get_type), (gst_base_parse_base_init), (gst_base_parse_base_finalize), (gst_base_parse_finalize), (gst_base_parse_class_init), (gst_base_parse_init), (gst_base_parse_check_frame), (gst_base_parse_parse_frame), (gst_base_parse_bytepos_to_time), (gst_base_parse_sink_event), (gst_base_parse_sink_eventfunc), (gst_base_parse_src_event), (gst_base_parse_src_eventfunc), (gst_base_parse_is_seekable), (gst_base_parse_push_buffer), (gst_base_parse_handle_and_push_buffer), (gst_base_parse_drain), (gst_base_parse_chain), (gst_base_parse_pull_range), (gst_base_parse_loop), (gst_base_parse_sink_activate), (gst_base_parse_activate), (gst_base_parse_sink_activate_push), (gst_base_parse_sink_activate_pull), (gst_base_parse_set_duration), (gst_base_parse_set_min_frame_size), (gst_base_parse_get_querytypes), (gst_base_parse_query), (gst_base_parse_handle_seek), (gst_base_parse_sink_setcaps): * gst/flacparse/gstbaseparse.h: * gst/flacparse/gstbitreader.c: (gst_bit_reader_new), (gst_bit_reader_new_from_buffer), (gst_bit_reader_free), (gst_bit_reader_init), (gst_bit_reader_init_from_buffer), (gst_bit_reader_set_pos), (gst_bit_reader_get_pos), (gst_bit_reader_get_remaining), (gst_bit_reader_skip), (gst_bit_reader_skip_to_byte): * gst/flacparse/gstbitreader.h: * gst/flacparse/gstbytereader.c: (GDOUBLE_SWAP_LE_BE), (GFLOAT_SWAP_LE_BE), (gst_byte_reader_new), (gst_byte_reader_new_from_buffer), (gst_byte_reader_free), (gst_byte_reader_init), (gst_byte_reader_init_from_buffer), (gst_byte_reader_set_pos), (gst_byte_reader_get_pos), (gst_byte_reader_get_remaining), (gst_byte_reader_skip), (gst_byte_reader_get_uint8), (gst_byte_reader_get_int8), (gst_byte_reader_peek_uint8), (gst_byte_reader_peek_int8), (gst_byte_reader_get_uint24_le), (gst_byte_reader_get_uint24_be), (gst_byte_reader_get_int24_le), (gst_byte_reader_get_int24_be), (gst_byte_reader_peek_uint24_le), (gst_byte_reader_peek_uint24_be), (gst_byte_reader_peek_int24_le), (gst_byte_reader_peek_int24_be): * gst/flacparse/gstbytereader.h: * gst/flacparse/gstflac.c: (plugin_init): * gst/flacparse/gstflacparse.c: (gst_flac_parse_base_init), (gst_flac_parse_class_init), (gst_flac_parse_init), (gst_flac_parse_finalize), (gst_flac_parse_start), (gst_flac_parse_stop), (gst_flac_parse_get_frame_size), (gst_flac_parse_check_valid_frame), (gst_flac_parse_handle_streaminfo), (gst_flac_parse_handle_vorbiscomment), (gst_flac_parse_handle_picture), (_value_array_append_buffer), (gst_flac_parse_handle_headers), (gst_flac_parse_generate_headers), (gst_flac_parse_parse_frame): * gst/flacparse/gstflacparse.h: Add FLAC parser, based on GstBaseParse. Also add the bit and byte reader that will be added to libgstbase later. The FLAC parser is currently not 100% bug free and fails to get the correct frame size for some frames in some streams.
2008-09-23gst/rtpmanager/: Fix some docs.Wim Taymans3-1/+4
Original commit message from CVS: * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_insert), (rtp_jitter_buffer_get_sync): * gst/rtpmanager/rtpsession.c: (on_sender_timeout), (session_cleanup): * gst/rtpmanager/rtpsource.c: Fix some docs.
2008-09-23Patch from: Josep TorraZaheer Abbas Merali2-10/+96
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.
2008-09-17Fix compiler warnings on OS/XJan Schmidt1-1/+1
Original commit message from CVS: * ext/jack/gstjackaudiosink.c: (jack_process_cb): * gst/rtpmanager/rtpjitterbuffer.c: (calculate_skew): Fix compiler warnings on OS/X
2008-09-15ext/celt/gstceltenc.h: Help gtk-doc to parse this correctly.Stefan Kost1-0/+2
Original commit message from CVS: * ext/celt/gstceltenc.h: Help gtk-doc to parse this correctly. * gst/pcapparse/gstpcapparse.c: Add missing include.
2008-09-13gst/rtpmanager/gstrtpbin.c: Do not try to adjust the offset of streams for ↵Wim Taymans1-7/+34
which we have not yet seen an SR packet. A... 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.
2008-09-09gst/mpegdemux/: Fix conflicting public names in new mpeg demuxers.Edward Hervey3-10/+10
Original commit message from CVS: * gst/mpegdemux/flumpegdemux.c: (plugin_init): * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_sync_get_type), (gst_flups_demux_get_type), (gst_flups_demux_plugin_init): * gst/mpegdemux/gstmpegtsdemux.c: (gst_fluts_demux_get_type), (gst_fluts_demux_plugin_init): Fix conflicting public names in new mpeg demuxers. Fixes #550468
2008-09-09gst/aiffparse/aiffparse.c: Support chunks in AIFF in any order in pull mode, ↵Michael Smith1-60/+81
and any order so long as we get COMM bef... 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.
2008-09-08gst/selector/gstinputselector.c: Reset the selector state when going to READY.Wim Taymans1-0/+37
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.
2008-09-05gst/rtpmanager/gstrtpbin.*: Add signal to notify listeners when a sender ↵Wim Taymans13-107/+218
becomes a receiver. 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.
2008-09-02gst/mpegdemux/: Fix build on macosx.Edward Hervey2-2/+2
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.
2008-09-02Add Fluendo MPEG PS and TS demuxers to gst-plugins-bad. This is now dual ↵Zaheer Abbas Merali19-0/+7401
licensed MPL and LGPL. Original commit message from CVS: * configure.ac: * gst/mpegdemux/Makefile.am: * gst/mpegdemux/flumpegdemux.c: * gst/mpegdemux/flutspatinfo.c: * gst/mpegdemux/flutspatinfo.h: * gst/mpegdemux/flutspmtinfo.c: * gst/mpegdemux/flutspmtinfo.h: * gst/mpegdemux/flutspmtstreaminfo.c: * gst/mpegdemux/flutspmtstreaminfo.h: * gst/mpegdemux/gstmpegdefs.h: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: * gst/mpegdemux/gstmpegdesc.c: * gst/mpegdemux/gstmpegdesc.h: * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: * gst/mpegdemux/gstpesfilter.c: * gst/mpegdemux/gstpesfilter.h: * gst/mpegdemux/gstsectionfilter.c: * gst/mpegdemux/gstsectionfilter.h: Add Fluendo MPEG PS and TS demuxers to gst-plugins-bad. This is now dual licensed MPL and LGPL.
2008-09-02gst/mpegtsmux/mpegtsmux.c: Set caps on outgoing buffers.Wim Taymans1-0/+4
Original commit message from CVS: * gst/mpegtsmux/mpegtsmux.c: (new_packet_cb): Set caps on outgoing buffers.
2008-09-02Enable/fix up translations for these plugins.Tim-Philipp Müller1-0/+7
Original commit message from CVS: * ext/resindvd/plugin.c: (plugin_init): * ext/resindvd/resindvdsrc.c: * ext/twolame/gsttwolame.c: (plugin_init): * gst/aiffparse/aiffparse.c: (plugin_init): Enable/fix up translations for these plugins. * po/LINGUAS: Add 'ca' to LINGUAS. * po/POTFILES.in: * po/POTFILES.skip: Add more files for translation and more files which tools should skip.
2008-09-02gst/mpegtsmux/tsmux/tsmux.c: Fix build on macosx.Edward Hervey1-3/+1
Original commit message from CVS: * gst/mpegtsmux/tsmux/tsmux.c: (tsmux_write_ts_header): Fix build on macosx.
2008-09-01gst/mpegtsmux/mpegtsmux_aac.c: Allocate a fixed size buffer on the stack ↵Sebastian Dröge3-10/+9
instead of using malloc(). Original commit message from CVS: * gst/mpegtsmux/mpegtsmux_aac.c: (mpegtsmux_prepare_aac): Allocate a fixed size buffer on the stack instead of using malloc(). * gst/mpegtsmux/tsmux/tsmux.c: (tsmux_new), (tsmux_free), (tsmux_program_new), (tsmux_program_free): * gst/mpegtsmux/tsmux/tsmuxstream.c: (tsmux_stream_new), (tsmux_stream_free), (tsmux_stream_consume), (tsmux_stream_add_data): Use GSlice.
2008-09-01gst/mpegtsmux/mpegtsmux.c: Add support for muxing MPEG4 video.Sebastian Dröge1-2/+8
Original commit message from CVS: * gst/mpegtsmux/mpegtsmux.c: (mpegtsmux_create_stream): Add support for muxing MPEG4 video.
2008-09-01gst/mpegtsmux/tsmux/: Fix build of mpegtsmux.Edward Hervey2-3/+3
Original commit message from CVS: * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxstream.h: Fix build of mpegtsmux.
2008-09-01Add Fluendo MPEG-TS muxer and libtsmux to gst-plugins-bad. This is renamed ↵Sebastian Dröge14-0/+3920
to mpegtsmux to prevent conflicts. Also al... Original commit message from CVS: * configure.ac: * gst/mpegtsmux/Makefile.am: * gst/mpegtsmux/mpegtsmux.c: (mpegtsmux_base_init), (mpegtsmux_class_init), (mpegtsmux_init), (mpegtsmux_dispose), (gst_mpegtsmux_set_property), (gst_mpegtsmux_get_property), (release_buffer_cb), (mpegtsmux_create_stream), (mpegtsmux_create_streams), (mpegtsmux_choose_best_stream), (mpegtsmux_collected), (mpegtsmux_request_new_pad), (mpegtsmux_release_pad), (new_packet_cb), (mpegtsdemux_prepare_srcpad), (mpegtsmux_change_state), (plugin_init): * gst/mpegtsmux/mpegtsmux.h: * gst/mpegtsmux/mpegtsmux_aac.c: (mpegtsmux_prepare_aac): * gst/mpegtsmux/mpegtsmux_aac.h: * gst/mpegtsmux/mpegtsmux_h264.c: (mpegtsmux_prepare_h264): * gst/mpegtsmux/mpegtsmux_h264.h: * gst/mpegtsmux/tsmux/Makefile.am: * gst/mpegtsmux/tsmux/crc.h: * gst/mpegtsmux/tsmux/tsmux.c: (tsmux_new), (tsmux_set_write_func), (tsmux_set_pat_frequency), (tsmux_get_pat_frequency), (tsmux_free), (tsmux_program_new), (tsmux_set_pmt_frequency), (tsmux_get_pmt_frequency), (tsmux_program_add_stream), (tsmux_program_set_pcr_stream), (tsmux_get_new_pid), (tsmux_create_stream), (tsmux_find_stream), (tsmux_packet_out), (tsmux_write_adaptation_field), (tsmux_write_ts_header), (tsmux_write_stream_packet), (tsmux_program_free), (tsmux_write_section), (tsmux_write_section_hdr), (tsmux_write_pat), (tsmux_write_pmt): * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxcommon.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: (tsmux_stream_new), (tsmux_stream_get_pid), (tsmux_stream_free), (tsmux_stream_set_buffer_release_func), (tsmux_stream_consume), (tsmux_stream_at_pes_start), (tsmux_stream_bytes_avail), (tsmux_stream_bytes_in_buffer), (tsmux_stream_get_data), (tsmux_stream_pes_header_length), (tsmux_stream_find_pts_dts_within), (tsmux_stream_write_pes_header), (tsmux_stream_add_data), (tsmux_stream_get_es_descrs), (tsmux_stream_pcr_ref), (tsmux_stream_pcr_unref), (tsmux_stream_is_pcr), (tsmux_stream_get_pts): * gst/mpegtsmux/tsmux/tsmuxstream.h: Add Fluendo MPEG-TS muxer and libtsmux to gst-plugins-bad. This is renamed to mpegtsmux to prevent conflicts. Also all relevant informations about copyright and license are added to the top of every file but apart from that no changes compared to the latest SVN versions happened.
2008-09-01gst/selector/gstinputselector.c: Reuse the get_linked_pads for both source ↵Wim Taymans1-16/+24
and sinkpads because they are the same. Original commit message from CVS: * gst/selector/gstinputselector.c: (gst_input_selector_init), (gst_input_selector_event), (gst_input_selector_query): Reuse the get_linked_pads for both source and sinkpads because they are the same. Implement a custum event handler and get the internally linked pad directly instead of relying on the default (slower) implementation.
2008-08-31Add scaletempo plugin, which allows to scale the speed of audio without ↵Rov Juvano4-0/+884
changing the pitch by handling seeks with a r... Original commit message from CVS: Patch by: Rov Juvano <rovjuvano at users dot sourceforge dot net> * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-scaletempo.xml: * examples/scaletempo/Makefile.am: * examples/scaletempo/demo-gui.c: (pop_status_bar), (status_bar_printf), (demo_gui_seek_bar_format), (update_position), (demo_gui_seek_bar_change), (demo_gui_do_change_rate), (demo_gui_do_set_rate), (demo_gui_do_rate_entered), (demo_gui_do_toggle_advanced), (demo_gui_do_toggle_disabled), (demo_gui_do_seek), (demo_gui_do_play), (demo_gui_do_pause), (demo_gui_do_play_pause), (demo_gui_do_open_file), (demo_gui_do_playlist_prev), (demo_gui_do_playlist_next), (demo_gui_do_about_dialog), (demo_gui_do_quit), (demo_gui_request_set_stride), (demo_gui_request_set_overlap), (demo_gui_request_set_search), (demo_gui_rate_changed), (demo_gui_playing_started), (demo_gui_playing_paused), (demo_gui_playing_ended), (demo_gui_player_errored), (demo_gui_stride_changed), (demo_gui_overlap_changed), (demo_gui_search_changed), (demo_gui_set_player_func), (demo_gui_set_playlist_func), (build_gvalue_array), (create_action), (demo_gui_show_func), (demo_gui_set_player), (demo_gui_set_playlist), (demo_gui_show), (demo_gui_get_property), (demo_gui_set_property), (demo_gui_init), (demo_gui_class_init), (demo_gui_get_type): * examples/scaletempo/demo-gui.h: * examples/scaletempo/demo-main.c: (handle_error_message), (handle_quit), (main): * examples/scaletempo/demo-player.c: (no_pipeline), (demo_player_event_listener), (demo_player_state_changed_cb), (demo_player_eos_cb), (demo_player_build_pipeline), (_set_rate), (demo_player_scale_rate_func), (demo_player_set_rate_func), (_set_state_and_wait), (demo_player_load_uri_func), (demo_player_play_func), (demo_player_pause_func), (_seek_to), (demo_player_seek_by_func), (demo_player_seek_to_func), (demo_player_get_position_func), (demo_player_get_duration_func), (demo_player_scale_rate), (demo_player_set_rate), (demo_player_load_uri), (demo_player_play), (demo_player_pause), (demo_player_seek_by), (demo_player_seek_to), (demo_player_get_position), (demo_player_get_duration), (demo_player_get_property), (demo_player_set_property), (demo_player_init), (demo_player_class_init), (demo_player_get_type): * examples/scaletempo/demo-player.h: * gst/scaletempo/Makefile.am: * gst/scaletempo/gstscaletempo.c: (best_overlap_offset_float), (best_overlap_offset_s16), (output_overlap_float), (output_overlap_s16), (fill_queue), (reinit_buffers), (gst_scaletempo_transform), (gst_scaletempo_transform_size), (gst_scaletempo_sink_event), (gst_scaletempo_set_caps), (gst_scaletempo_get_property), (gst_scaletempo_set_property), (gst_scaletempo_base_init), (gst_scaletempo_class_init), (gst_scaletempo_init): * gst/scaletempo/gstscaletempo.h: * gst/scaletempo/gstscaletempoplugin.c: (plugin_init): Add scaletempo plugin, which allows to scale the speed of audio without changing the pitch by handling seeks with a rate!=1.0. Integrate it into the docs and add the example application for it. Fixes bug #537700.
2008-08-28gst/dccp/: Fix compilation on Solaris by including filio.h as needed.Jan Schmidt4-14/+26
Original commit message from CVS: * gst/dccp/gstdccp.c: * gst/dccp/gstdccpclientsrc.c: Fix compilation on Solaris by including filio.h as needed. * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc: Fix compilation with Forte - apparently it hates concatenating a macro argument that starts with an underscore??
2008-08-28gst/rtpmanager/gstrtpsession.c: Send EOS when the session object instructs ↵Wim Taymans3-6/+22
us to. Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_send_rtcp), (gst_rtp_session_event_send_rtp_sink): Send EOS when the session object instructs us to. * gst/rtpmanager/rtpsession.c: (rtp_session_on_timeout): * gst/rtpmanager/rtpsession.h: Make it possible for the session manager to instruct us to send EOS. We currently will EOS when the session is a sender and when the sender part goes EOS. This is not entirely correct behaviour because the session could still participate as a receiver. Fixes #549409.
2008-08-28gst/aiffparse/aiffparse.c: Read size of chunks preceeding the audio data ↵Michael Smith1-1/+1
with the correct endianness. Fixes playback ... Original commit message from CVS: * gst/aiffparse/aiffparse.c: Read size of chunks preceeding the audio data with the correct endianness. Fixes playback of some files. Fixes #538500
2008-08-28Add an AIFF parsing element, heavily based on wavparse.Michael Smith3-0/+1685
Original commit message from CVS: * configure.ac: * gst/aiffparse/Makefile.am: * gst/aiffparse/aiffparse.c: * gst/aiffparse/aiffparse.h: Add an AIFF parsing element, heavily based on wavparse.
2008-08-27gst/selector/gstinputselector.c: Implement the LATENCY query in a better way ↵Wim Taymans1-0/+80
by taking the latency of all sinkpads an... Original commit message from CVS: * gst/selector/gstinputselector.c: (gst_input_selector_init), (gst_input_selector_query): Implement the LATENCY query in a better way by taking the latency of all sinkpads and taking the min/max instead of just taking a random pad.
2008-08-26gst/deinterlace2/tvtime/tomsmocomp/: Unroll the loop to handle two bytes at ↵Sebastian Dröge4-108/+196
once. This should give a small speedup an... Original commit message from CVS: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc: * gst/deinterlace2/tvtime/tomsmocomp/StrangeBob.inc: * gst/deinterlace2/tvtime/tomsmocomp/WierdBob.inc: Unroll the loop to handle two bytes at once. This should give a small speedup and makes it possible to handle chroma and luma different which is needed later.
2008-08-26gst/dccp/gstdccpserversink.*: Don't put globals only used by one '.c' file ↵Edward Hervey2-3/+3
in a header ! Original commit message from CVS: * gst/dccp/gstdccpserversink.c: * gst/dccp/gstdccpserversink.h: Don't put globals only used by one '.c' file in a header ! Declare it as static, fixes build on macosx.
2008-08-26gst/dccp/gstdccp.c: Whoops, that was one fix too much :)Edward Hervey1-1/+1
Original commit message from CVS: * gst/dccp/gstdccp.c: (gst_dccp_send_buffer): Whoops, that was one fix too much :)
2008-08-26gst/dccp/gstdccp.c: size_t's size varies by platform/architecture. Use glib ↵Edward Hervey1-5/+5
convenience macro instead. Fixes build on... Original commit message from CVS: * gst/dccp/gstdccp.c: (gst_dccp_read_buffer), (gst_dccp_send_buffer), (gst_dccp_set_sock_windowsize): size_t's size varies by platform/architecture. Use glib convenience macro instead. Fixes build on macosx. Remove ending '\n' in debug statements.
2008-08-26gst/pcapparse/gstpcapparse.c: Remove unused code and fix includes.Edward Hervey1-12/+3
Original commit message from CVS: * gst/pcapparse/gstpcapparse.c: (gst_pcap_parse_class_init): Remove unused code and fix includes.
2008-08-25gst/deinterlace2/: First part of the C implementation of the tomsmocomp ↵Sebastian Dröge10-27/+355
deinterlacing algorithm. This only supports s... Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace_method_class_init): * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/tomsmocomp.c: (gst_deinterlace_method_tomsmocomp_class_init): * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc: * gst/deinterlace2/tvtime/tomsmocomp/StrangeBob.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc: * gst/deinterlace2/tvtime/tomsmocomp/WierdBob.inc: * gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h: First part of the C implementation of the tomsmocomp deinterlacing algorithm. This only supports search-effort=0 currently, is painfully slow and needs some cleanup later when all search-effort settings are implemented in C.