Commit graph

70 commits

Author SHA1 Message Date
Michael Smith
7aed5a4b4b deinterleave: output channels should be marked as MONO, not FRONT_LEFT, if
we're not preserving input channel positions.
2012-10-05 15:12:27 -07:00
Michael Smith
7522cd1595 interleave: use gst_audio_channel_positions_to_mask instead of a local copy
of half of it. Handles some values more correctly.
2012-10-04 15:13:20 -07:00
Michael Smith
b04b1b5089 meta info: threadsafe registration using g_once 2012-10-03 10:51:45 -07:00
Tim-Philipp Müller
ea7f8a919c interleave: add a bunch of FIXMEs
Needs some more work, so stream-start, caps and tags are
sent in the right order.
2012-09-23 16:33:35 +01:00
Stefan Sauer
f874922e1c collectpads: remove gst_collect_pads_add_pad_full
Rename gst_collect_pads_add_pad_full() to gst_collect_pads_add_pad() and fix all
invocations.
2012-09-12 21:05:44 +02:00
Tim-Philipp Müller
4bb52bbadf docs: gst-launch -> gst-launch-1.0 and ffmpegcolorspace -> videoconvert 2012-08-27 21:20:30 +01:00
Wim Taymans
ec7f7264dc interleave: convert the output segment to time
Convert the stored input segment to time before pushing it out.

Conflicts:

	gst/interleave/interleave.c
2012-07-20 16:09:33 +02:00
Wim Taymans
4dfb796527 interleave: try to fix segment handling
Conflicts:

	gst/interleave/interleave.c
2012-07-20 15:54:38 +02:00
Tim-Philipp Müller
42cc0d1e48 deinterleave; downgrade caps change failure debug message
Add some more info and downgrade to warning, so
it doesn't look like the unit test failed.
2012-07-03 19:44:26 +01:00
Wim Taymans
354e35a6ee interleave: fix compilation again 2012-05-09 11:19:10 +02:00
Wim Taymans
01db5dbff0 interleave: handle EOS on all pads
When all pads go to EOS immediately, we are not negotiated and our collected
function is called (without any available data). Handle this case gracefully.

Conflicts:

	gst/interleave/interleave.c
2012-05-01 13:35:56 +02:00
Wim Taymans
e0636feff8 interleave: improve debugging 2012-05-01 13:34:32 +02:00
Mark Nauwelaerts
67e168aef4 collectpads2: rename to collectpads 2012-04-17 15:14:27 +02:00
Mark Nauwelaerts
04b4d30f2c misc: chain up to collectpads event handler 2012-04-16 16:37:49 +02:00
Tim-Philipp Müller
e09ae5736d Use new gst_element_class_set_static_metadata() 2012-04-10 00:51:41 +01:00
Tim-Philipp Müller
fa5edd2680 interleave: make channel-poisitions property a GValueArray again
Or perhaps it should just be a guint64 channel mask, which would
be nicer in C, but more awkward for bindings (even more so since
we can't add a flags type for it, since that only supports guint
size flags). Fixes wavenc unit test.

https://bugzilla.gnome.org/show_bug.cgi?id=669643
2012-04-09 11:13:05 +01:00
Sebastian Dröge
aa2cd462da gst: Update for GST_PLUGIN_DEFINE() API changes 2012-04-05 17:36:38 +02:00
Sebastian Dröge
5cdd49bf25 gst: Update versioning 2012-04-04 14:37:47 +02:00
Wim Taymans
ecaea36c3d update for memory api changes 2012-03-15 13:36:17 +01:00
Mark Nauwelaerts
f189f62b13 Merge branch 'master' into 0.11
Conflicts:
	ext/wavpack/gstwavpackenc.c
	tests/check/elements/audioiirfilter.c
	tests/examples/v4l2/probe.c
2012-03-01 11:29:50 +01:00
Edward Hervey
9beda57c3a Suppress deprecation warnings in selected files, for g_value_array_* mostly 2012-02-27 14:47:25 +01:00
Philippe Normand
4945af5eff interleave: port to 0.11
Port of the interleave element and its unittests.

https://bugzilla.gnome.org/show_bug.cgi?id=669643
2012-02-16 14:40:59 +00:00
Philippe Normand
640be49e21 deinterleave: port to 0.11
Port of the deinterleave element and its unittests. The interleave
element will be ported as part of another patch, hence disabling it
for now.

https://bugzilla.gnome.org/show_bug.cgi?id=668847
2012-02-08 10:40:39 +01:00
Tim-Philipp Müller
7cb9b7ab9d Use new GLib API unconditionally 2012-01-22 23:15:19 +00:00
Sebastian Dröge
93e3ed5a86 Merge branch 'master' into 0.11
Conflicts:
	ext/cairo/gsttextoverlay.c
	ext/pulse/pulseaudiosink.c
	gst/audioparsers/gstaacparse.c
	gst/avi/gstavimux.c
	gst/flv/gstflvmux.c
	gst/interleave/interleave.c
	gst/isomp4/gstqtmux.c
	gst/matroska/matroska-demux.c
	gst/matroska/matroska-mux.c
	gst/matroska/matroska-mux.h
	gst/matroska/matroska-read-common.c
	gst/multifile/gstmultifilesink.c
	gst/multipart/multipartmux.c
	gst/shapewipe/gstshapewipe.c
	gst/smpte/gstsmpte.c
	gst/udp/gstmultiudpsink.c
	gst/videobox/gstvideobox.c
	gst/videocrop/gstaspectratiocrop.c
	gst/videomixer/videomixer.c
	gst/videomixer/videomixer2.c
	gst/wavparse/gstwavparse.c
	po/ja.po
	po/lv.po
	po/sr.po
	tests/check/Makefile.am
	tests/check/elements/qtmux.c
	tests/check/elements/rgvolume.c
2012-01-10 14:32:32 +01:00
Wim Taymans
47a1da9076 GST_FLOW_UNEXPECTED -> GST_FLOW_EOS 2012-01-04 10:01:48 +01:00
Vincent Penquerc'h
3135cab5a3 interleave: port to GstCollectPads2 2011-12-14 18:55:36 +00:00
Vincent Penquerc'h
c0e101e93f various: fix pad template leaks
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:30:27 +00:00
Stefan Sauer
8643d1caaf collectpads: port API changes 2011-11-17 08:44:45 +01:00
Wim Taymans
a19a4a69ae more template fixes 2011-11-04 13:12:37 +01:00
Wim Taymans
a95acb7122 make %u in all request pad templates 2011-11-04 11:58:22 +01:00
David Schleef
f6c348430e interleave: Work around changes in g_atomic API
See  for details.
2011-06-04 13:49:52 -07:00
Thibault Saunier
b541208b77 android: Make it ready for androgenizer
Remove the android/ top dir
Fixe the Makefile.am to be androgenized

To build gstreamer for android we are now using androgenizer which generates the needed Android.mk files.
Androgenizer can be found here: http://git.collabora.co.uk/?p=user/derek/androgenizer.git
2011-04-11 01:20:11 +02:00
Edward Hervey
6e1c701502 Revert "Check that collectpads exists before removing pad"
This reverts commit 8e6b876e76.

Depends on a core commit that was reverted
2011-02-21 12:25:19 +01:00
David Schleef
8e6b876e76 Check that collectpads exists before removing pad
The core now calls release pad from finalize, at which point
the collectpads might have already been freed.
2011-02-20 23:46:01 -08:00
Tim-Philipp Müller
073201b329 build: Makefile.am cleanups
Mostly add $(GST_BASE_CFLAGS) where it was missing, but also fix up
order of flags and libs if needed (see docs/random/moving-plugins).
2010-03-18 21:34:24 +00:00
Wim Taymans
fe529e71c5 interleave: fix weird indentation 2009-12-24 17:03:02 +01:00
Stefan Kost
8990398733 interleave: fix indenting and upgrade two debugs to warnings.
Fix newlines in variable decls. Change two debugs to become warnings as they
indicate that things will not work.
2009-07-21 10:07:00 +03:00
Edward Hervey
0cb5b42d54 Remove trivial unused variables detected by CLang static analyzer. 2009-04-18 18:51:28 +02:00
Stefan Kost
8e462968cf Remove version numbers from a few gst-launch examples.
The majority of the examples doe not use -0.10 and this will also help us to maintain the docs.
2009-01-29 11:07:59 +02:00
Stefan Kost
084812bffd Don't install static libs for plugins. Fixes for -good.
Original commit message from CVS:
* ext/aalib/Makefile.am:
* ext/annodex/Makefile.am:
* ext/cairo/Makefile.am:
* ext/dv/Makefile.am:
* ext/esd/Makefile.am:
* ext/flac/Makefile.am:
* ext/gconf/Makefile.am:
* ext/gdk_pixbuf/Makefile.am:
* ext/hal/Makefile.am:
* ext/jpeg/Makefile.am:
* ext/ladspa/Makefile.am:
* ext/libcaca/Makefile.am:
* ext/libmng/Makefile.am:
* ext/libpng/Makefile.am:
* ext/mikmod/Makefile.am:
* ext/pulse/Makefile.am:
* ext/raw1394/Makefile.am:
* ext/shout2/Makefile.am:
* ext/soup/Makefile.am:
* ext/speex/Makefile.am:
* ext/taglib/Makefile.am:
* ext/wavpack/Makefile.am:
* gst/alpha/Makefile.am:
* gst/apetag/Makefile.am:
* gst/audiofx/Makefile.am:
* gst/auparse/Makefile.am:
* gst/autodetect/Makefile.am:
* gst/avi/Makefile.am:
* gst/cutter/Makefile.am:
* gst/debug/Makefile.am:
* gst/effectv/Makefile.am:
* gst/equalizer/Makefile.am:
* gst/flx/Makefile.am:
* gst/goom/Makefile.am:
* gst/goom2k1/Makefile.am:
* gst/icydemux/Makefile.am:
* gst/id3demux/Makefile.am:
* gst/interleave/Makefile.am:
* gst/law/Makefile.am:
* gst/level/Makefile.am:
* gst/matroska/Makefile.am:
* gst/median/Makefile.am:
* gst/monoscope/Makefile.am:
* gst/multifile/Makefile.am:
* gst/multipart/Makefile.am:
* gst/oldcore/Makefile.am:
* gst/qtdemux/Makefile.am:
* gst/replaygain/Makefile.am:
* gst/rtp/Makefile.am:
* gst/rtsp/Makefile.am:
* gst/smpte/Makefile.am:
* gst/spectrum/Makefile.am:
* gst/udp/Makefile.am:
* gst/videobox/Makefile.am:
* gst/videocrop/Makefile.am:
* gst/videofilter/Makefile.am:
* gst/videomixer/Makefile.am:
* gst/wavenc/Makefile.am:
* gst/wavparse/Makefile.am:
* sys/directdraw/Makefile.am:
* sys/directsound/Makefile.am:
* sys/oss/Makefile.am:
* sys/osxaudio/Makefile.am:
* sys/osxvideo/Makefile.am:
* sys/sunaudio/Makefile.am:
* sys/v4l2/Makefile.am:
* sys/waveform/Makefile.am:
* sys/ximage/Makefile.am:
Don't install static libs for plugins. Fixes  for -good.
2008-11-04 12:28:34 +00:00
Jan Schmidt
a236a2df36 gst/: Fix build flags order.
Original commit message from CVS:
* gst/interleave/Makefile.am:
* gst/matroska/Makefile.am:
Fix build flags order.
* tests/check/elements/audioamplify.c: (GST_START_TEST):
* tests/check/elements/audiodynamic.c: (GST_START_TEST):
* tests/check/elements/audioinvert.c: (GST_START_TEST):
* tests/check/elements/audiopanorama.c: (GST_START_TEST):
Format fixes.
* tests/check/elements/multifile.c:
Pull in unistd.h
2008-09-17 13:49:04 +00:00
Stefan Kost
b442ba6f55 docs/plugins/: docs/plugins/inspect/plugin-mythtv.xml
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-13 11:59:23 +00:00
Sebastian Dröge
7537a1c39f gst/interleave/: Properly implement duration and position queries in bytes 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-05 11:07:17 +00:00
Sebastian Dröge
1169ebe789 gst/interleave/interleave.*: Use an always increasing integer for the number 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-04 06:48:46 +00:00
Sebastian Dröge
1f9de0b3f9 gst/interleave/interleave.c: Stop GstCollectPads before calling the parent's 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 .
2008-06-03 14:35:59 +00:00
Sebastian Dröge
755bdbebf6 gst/interleave/interleave.c: Use new gst_audio_check_channel_positions() 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-03 09:03:19 +00:00
Sebastian Dröge
35a5e9d33f gst/interleave/interleave.*: Allow setting channel positions via a property 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-06-02 12:42:14 +00:00
Sebastian Dröge
9de1e35ec1 gst/interleave/interleave.c: Implement latency query.
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-28 08:14:16 +00:00
Sebastian Dröge
22b3fb381c gst/interleave/deinterleave.c: Add another example launch line.
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 .
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-26 10:28:47 +00:00