summaryrefslogtreecommitdiffstats
path: root/gst/interleave/interleave.c
AgeCommit message (Collapse)AuthorFilesLines
2008-06-13docs/plugins/: docs/plugins/inspect/plugin-mythtv.xmlStefan Kost1-20/+12
Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-flvdemux.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-interleave.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegtsparse.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mythtv.xml * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-oss4.xml * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-speexresample.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml * docs/plugins/inspect/plugin-timidity.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: * ext/amrwb/gstamrwbdec.c: * ext/amrwb/gstamrwbenc.c: * ext/amrwb/gstamrwbparse.c: * ext/dc1394/gstdc1394.c: * ext/directfb/dfbvideosink.c: * ext/ivorbis/vorbisdec.c: * ext/jack/gstjackaudiosink.c: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/gstmplex.cc: * ext/musicbrainz/gsttrm.c: * ext/mythtv/gstmythtvsrc.c: * ext/theora/theoradec.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * gst-libs/gst/app/gstappsink.c: * gst/deinterlace/gstdeinterlace.c: * gst/dvdspu/gstdvdspu.c: * gst/festival/gstfestival.c: * gst/freeze/gstfreeze.c: * gst/interleave/deinterleave.c: * gst/interleave/interleave.c: * gst/modplug/gstmodplug.cc: * gst/nuvdemux/gstnuvdemux.c: Add missing elements to docs. Fix doc-markup: use convinience syntax for examples (produces valid docbook), add several refsec2 when we have several titles. Fix some types.
2008-06-05gst/interleave/: Properly implement duration and position queries in bytes ↵Sebastian Dröge1-0/+10
format. We have to take the upstream reply... Original commit message from CVS: * gst/interleave/deinterleave.c: (gst_deinterleave_add_new_pads), (gst_deinterleave_src_query): * gst/interleave/interleave.c: (gst_interleave_src_query_duration), (gst_interleave_src_query): Properly implement duration and position queries in bytes format. We have to take the upstream reply and divide/multiply it by the number of channels to get the correct result.
2008-06-04gst/interleave/interleave.*: Use an always increasing integer for the number ↵Sebastian Dröge1-16/+50
in the name of the requested sink pads t... Original commit message from CVS: * gst/interleave/interleave.c: (gst_interleave_pad_get_type), (gst_interleave_pad_get_property), (gst_interleave_pad_class_init), (gst_interleave_request_new_pad), (gst_interleave_release_pad): * gst/interleave/interleave.h: Use an always increasing integer for the number in the name of the requested sink pads to guarantuee a unique name. Add a "channel" property to GstInterleavePad to make it possible for applications to retrieve the channel number in the output for every pad. Use g_type_register_static_simple() instead of g_type_register_static() to save some relocations.
2008-06-03gst/interleave/interleave.c: Stop GstCollectPads before calling the parent's ↵Sebastian Dröge1-3/+8
state change function when going from PA... Original commit message from CVS: * gst/interleave/interleave.c: (gst_interleave_pad_get_type), (gst_interleave_change_state): Stop GstCollectPads before calling the parent's state change function when going from PAUSED to READY as we otherwise deadlock. Fixes bug #536258.
2008-06-03gst/interleave/interleave.c: Use new gst_audio_check_channel_positions() ↵Sebastian Dröge1-78/+12
function and register the GstInterleavePad t... Original commit message from CVS: * gst/interleave/interleave.c: (gst_interleave_check_channel_positions), (gst_interleave_set_channel_positions), (gst_interleave_class_init): Use new gst_audio_check_channel_positions() function and register the GstInterleavePad type from a threadsafe context.
2008-06-02gst/interleave/interleave.*: Allow setting channel positions via a property ↵Sebastian Dröge1-38/+410
and allow using the channel positions on ... Original commit message from CVS: * gst/interleave/interleave.c: (gst_interleave_pad_get_type), (gst_interleave_finalize), (gst_audio_check_channel_positions), (gst_interleave_set_channel_positions), (gst_interleave_class_init), (gst_interleave_init), (gst_interleave_set_property), (gst_interleave_get_property), (gst_interleave_request_new_pad), (gst_interleave_release_pad), (gst_interleave_sink_setcaps), (gst_interleave_src_query_duration), (gst_interleave_src_query_latency), (gst_interleave_collected): * gst/interleave/interleave.h: Allow setting channel positions via a property and allow using the channel positions on the input as the channel positions of the output. Fix some broken logic and memory leaks. * tests/check/Makefile.am: * tests/check/elements/interleave.c: (src_handoff_float32), (sink_handoff_float32), (GST_START_TEST), (interleave_suite): Add unit tests for checking correct handling of channel positions.
2008-05-28gst/interleave/interleave.c: Implement latency query.Sebastian Dröge1-0/+89
Original commit message from CVS: * gst/interleave/interleave.c: (gst_interleave_src_query_duration), (gst_interleave_src_query_latency), (gst_interleave_src_query): Implement latency query.
2008-05-26gst/interleave/deinterleave.c: Add another example launch line.Sebastian Dröge1-450/+659
Original commit message from CVS: * gst/interleave/deinterleave.c: Add another example launch line. * gst/interleave/interleave.c: (interleave_24), (gst_interleave_finalize), (gst_interleave_base_init), (gst_interleave_class_init), (gst_interleave_init), (gst_interleave_request_new_pad), (gst_interleave_release_pad), (gst_interleave_change_state), (__remove_channels), (__set_channels), (gst_interleave_sink_getcaps), (gst_interleave_set_process_function), (gst_interleave_sink_setcaps), (gst_interleave_sink_event), (gst_interleave_src_query_duration), (gst_interleave_src_query), (forward_event_func), (forward_event), (gst_interleave_src_event), (gst_interleave_collected): * gst/interleave/interleave.h: Major rewrite of interleave using GstCollectpads. This new version also supports almost all raw audio formats and has better caps negotiation. Fixes bug #506594. Also update docs and add some more examples. * tests/check/elements/interleave.c: (interleave_chain_func), (GST_START_TEST), (src_handoff_float32), (sink_handoff_float32), (interleave_suite): Add some more extensive unit tests for interleave.
2008-05-14gst/interleave/: Split definitions into separate header files for better ↵Sebastian Dröge1-46/+8
documentation generation. Original commit message from CVS: * gst/interleave/Makefile.am: * gst/interleave/deinterleave.h: * gst/interleave/interleave.h: * gst/interleave/plugin.h: Split definitions into separate header files for better documentation generation. * gst/interleave/deinterleave.c: (gst_deinterleave_base_init), (gst_deinterleave_class_init), (gst_deinterleave_sink_setcaps), (gst_deinterleave_process): Don't use alloca, allow caps changes as long as the number of channels does not change, don't use g_warning, return NOT_NEGOTIATED as early as possible and some other cleanup. * gst/interleave/interleave.c: (gst_interleave_base_init), (gst_interleave_class_init): Do some random cleanup. * tests/check/Makefile.am: * tests/check/elements/deinterleave.c: (GST_START_TEST), (deinterleave_chain_func), (deinterleave_pad_added), (deinterleave_suite): Add unit tests for the deinterleave element.
2008-03-19gst/freeze/: Add example to source code documentation blob and remove the 3 lineStefan Kost1-0/+17
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.
2007-10-27gst/interleave/interleave.c: Let's not call every request pad we create ↵Tim-Philipp Müller1-12/+15
"sink%d", that'll create problems if there's ... Original commit message from CVS: * gst/interleave/interleave.c: (gst_interleave_request_new_pad): Let's not call every request pad we create "sink%d", that'll create problems if there's to be more than one pad. Fixes #490682. * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/interleave.c: Add unit test for the above.
2007-01-13gst/interleave/interleave.c (gst_interleave_init): Init the activation mode ↵Andy Wingo1-17/+133
properly. Original commit message from CVS: 2007-01-13 Andy Wingo <wingo@pobox.com> * gst/interleave/interleave.c (gst_interleave_init): Init the activation mode properly. (gst_interleave_src_setcaps, gst_interleave_src_getcaps) (gst_interleave_init): Set a setcaps and getcaps function on the src pad, so that we can implement pull-mode negotiation. (gst_interleave_sink_setcaps): Renamed from gst_interleave_setcaps, as it only does the sink logic now. Implement both for pull-mode and push-mode. (gst_interleave_process): Set caps on our outgoing buffer. (gst_interleave_src_activate_pull): Fix some more bogus casts. What is up with this.
2007-01-07New elements interleave and deinterleave, implement channel interleaving and ↵Andy Wingo1-0/+609
deinterleaving. Original commit message from CVS: 2007-01-07 Andy Wingo <wingo@pobox.com> * configure.ac: * gst/interleave/Makefile.am: * gst/interleave/plugin.h: * gst/interleave/plugin.c: * gst/interleave/interleave.c: * gst/interleave/deinterleave.c: New elements interleave and deinterleave, implement channel interleaving and deinterleaving. The interleaver can operate in pull or push mode but the deinterleaver is more like a demuxer and can only operate in push mode.