Commit graph

72 commits

Author SHA1 Message Date
Tim-Philipp Müller
7dcc3ffe5a autoaudiosrc: use audiotestsrc as fallback element instead of fakesrc
fakesrc doesn't announce audio caps, so most audio pipelines will
just error out with not-negotiated if a fallback element is created.
2014-06-28 14:25:25 +01:00
Stefan Sauer
fdb5d460de autodetect: demote candidate error to warning and plug fake{sink,src}
In the case where we have no suitable candidate we post a warning and plug a
fake-element. Do the same when non of the candidate work.

This is more consistent and plugin the fakesink as a fallback is probably
helpful for running unit tests without requiring hardware src/sink elements.

Fixes #722981
2014-02-23 20:34:43 +01:00
Stefan Sauer
0566ea06e5 autodetect: check if the kid has a sync property
previously autovideosrc did not have a sync property and v4l2src has none either.
2014-02-20 22:52:57 +01:00
Stefan Sauer
bf6a2f9afd autodetect: use a common baseclass
This makes the actual elements super simple. We're using the ELEMENT_FLAG to
configure source/sink and a string for the Audio/Video type.
2014-02-20 21:28:43 +01:00
Stefan Sauer
c0fd8e0c39 autodetect: extract common helper code
The function to generate the pretty names is basically the same. Use one and add
a parameter.
2014-02-19 21:27:17 +01:00
Tim-Philipp Müller
d9c2914c90 g_memmove() is deprecated
Just use plain memmove(), g_memmove() is deprecated in
recent GLib versions.

https://bugzilla.gnome.org/show_bug.cgi?id=712811
2013-11-21 15:30:34 +00:00
Tim-Philipp Müller
d506409af5 docs: get rid of 'Since: 0.10.x' markers
And some gtk-doc markup fixes.
2013-11-18 14:47:35 +00:00
Bernhard Miller
f7528d274b autovideosink: add sync property
https://bugzilla.gnome.org/show_bug.cgi?id=706955
2013-08-29 12:23:24 +02:00
Bernhard Miller
2fa68fce07 autoaudiosink: introduce sync property
https://bugzilla.gnome.org/show_bug.cgi?id=706955
2013-08-29 12:23:23 +02:00
Sreerenj Balachandran
504360fe36 autodetect: use _plugin_feature_rank_compare API instead of duplicating the code. 2013-04-18 14:00:06 +02:00
Sebastian Dröge
b0b0557c48 gst: Add better support for static plugins 2013-04-15 15:54:11 +02:00
Tim-Philipp Müller
230cf41cc9 Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:07:18 +00:00
Mark Nauwelaerts
3eee42fdfc use gst_element_factory_get_metadata to replace obsolete API 2012-09-15 19:06:06 +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
ab77c424be autodetect: proxy ts-offset properties
Proxy the ts-offset property in the audio*sink elements.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679343
2012-07-10 14:38:21 +02:00
Tim-Philipp Müller
e09ae5736d Use new gst_element_class_set_static_metadata() 2012-04-10 00:51:41 +01:00
Sebastian Dröge
aa2cd462da gst: Update for GST_PLUGIN_DEFINE() API changes 2012-04-05 17:36:38 +02:00
Tim-Philipp Müller
27ee8931dd autodetect, rtsp: gst_registry_get_default() -> gst_registry_get() 2012-01-02 14:32:40 +00:00
Wim Taymans
ac849ec2b3 fix for element flag updates 2011-11-28 16:57:24 +01:00
Wim Taymans
b2d508ac40 update for _get_caps() -> _query_caps() 2011-11-15 18:04:44 +01:00
Wim Taymans
09b15d7dfe port to new audio caps. 2011-08-18 19:21:07 +02:00
Wim Taymans
582e18b673 autodetect: fix caps 2011-06-17 18:11:55 +02:00
Wim Taymans
f612f54a40 autodetect: port to new API 2011-05-24 18:27:10 +02:00
Wim Taymans
a0e301ab1a -good: fix for new API 2011-05-16 17:50:15 +02:00
Wim Taymans
dea50d0b98 use G_DEFINE_TYPE 2011-04-19 17:07:18 +02: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
Stefan Kost
d8167e3071 various (gst): add a missing G_PARAM_STATIC_STRINGS flags 2010-10-13 18:00:28 +03:00
Sebastian Dröge
bcb4f50323 autodetect: Set GST_ELEMENT_IS_SOURCE flag on sources 2010-10-11 14:24:52 +02:00
Sebastian Dröge
b7d435911f auto{audio,video}sink: Don't lose the GST_ELEMENT_IS_SINK flag after removing the child 2010-06-09 20:23:16 +02:00
Sebastian Dröge
f16ed4a91c gst: Don't use GST_DEBUG_FUNCPTR for GObject vfuncs 2010-06-06 17:52:40 +02:00
Stefan Kost
899d03dcc6 auto{audio,video}{src,sink}: use can_intersect to avoid a caps copy 2010-05-06 15:43:53 +03:00
Benjamin Otte
cccfeaa59c gst_element_class_set_details => gst_element_class_set_details_simple 2010-03-18 14:32:00 +01:00
David Schleef
55d2754098 Remove Ronald Bultje from Authors field
Replaced with "GStreamer maintainers
<gstreamer-devel@lists.sourceforge.net>" or just removed,
depending on the number of other authors.
2009-09-05 20:53:10 -07:00
Jan Schmidt
591416e0ce Update Since: tags in autodetect srcs and audioecho 2009-02-19 13:16:39 +00:00
Stefan Kost
4be0ab8e86 gst/autodetect/gstautoaudiosrc.c: Fix classification.
Original commit message from CVS:
* gst/autodetect/gstautoaudiosrc.c:
Fix classification.
2008-11-29 20:05:41 +00:00
Wim Taymans
c25b0fcb92 gst/autodetect/: Post an error when we can't set the internal ghostpad target.
Original commit message from CVS:
* gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_detect):
* gst/autodetect/gstautoaudiosrc.c: (gst_auto_audio_src_detect):
* gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_reset),
(gst_auto_video_sink_detect):
* gst/autodetect/gstautovideosrc.c: (gst_auto_video_src_detect):
Post an error when we can't set the internal ghostpad target.
2008-11-25 16:26:16 +00:00
Stefan Kost
084812bffd Don't install static libs for plugins. Fixes #550851 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 #550851 for -good.
2008-11-04 12:28:34 +00:00
Sebastian Dröge
ebd13c46d4 gst/autodetect/: Fix "Since" tags in the documentation.
Original commit message from CVS:
* gst/autodetect/gstautoaudiosrc.c:
(gst_auto_audio_src_class_init):
* gst/autodetect/gstautovideosrc.c:
(gst_auto_video_src_class_init):
Fix "Since" tags in the documentation.
2008-10-27 09:04:37 +00:00
Stefan Kost
a6f4df463d gst/autodetect/: Implement src plugins. Little code/string cleanup in the sinks.
Original commit message from CVS:
* gst/autodetect/Makefile.am:
* gst/autodetect/gstautoaudiosink.c:
* gst/autodetect/gstautoaudiosrc.c:
* gst/autodetect/gstautoaudiosrc.h:
* gst/autodetect/gstautodetect.c:
* gst/autodetect/gstautovideosink.c:
* gst/autodetect/gstautovideosrc.c:
* gst/autodetect/gstautovideosrc.h:
Implement src plugins. Little code/string cleanup in the sinks.
Fixes #523813.
2008-10-27 08:54:30 +00:00
Sebastian Dröge
1e10b33f15 gst/autodetect/Makefile.am: Don't link the autodetect plugin with GConf as it doesn't use GConf. Fixes bug #545463.
Original commit message from CVS:
* gst/autodetect/Makefile.am:
Don't link the autodetect plugin with GConf as it doesn't
use GConf. Fixes bug #545463.
2008-08-22 16:04:02 +00:00
Wim Taymans
487b784b4f Don't use gst_element_get_pad(), it's a bad method.
Original commit message from CVS:
* ext/gconf/gstgconfaudiosrc.c: (gst_gconf_audio_src_reset),
(do_toggle_element):
* ext/gconf/gstgconfvideosink.c: (gst_gconf_video_sink_reset),
(do_toggle_element):
* ext/gconf/gstgconfvideosrc.c: (gst_gconf_video_src_reset),
(do_toggle_element):
* ext/gconf/gstswitchsink.c: (gst_switch_commit_new_kid):
* ext/hal/gsthalaudiosink.c: (gst_hal_audio_sink_reset),
(do_toggle_element):
* ext/hal/gsthalaudiosrc.c: (gst_hal_audio_src_reset),
(do_toggle_element):
* gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_reset),
(gst_auto_audio_sink_detect):
* gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_reset),
(gst_auto_video_sink_detect):
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_init),
(gst_rtspsrc_stream_free), (gst_rtspsrc_stream_configure_udp),
(gst_rtspsrc_stream_configure_udp_sink), (gst_rtspsrc_skip_lws),
(gst_rtspsrc_unskip_lws), (gst_rtspsrc_skip_commas),
(gst_rtspsrc_skip_item), (gst_rtsp_decode_quoted_string),
(gst_rtspsrc_parse_digest_challenge), (gst_rtspsrc_parse_auth_hdr):
* tests/icles/videocrop-test.c: (test_with_caps),
(video_crop_get_test_caps):
Don't use gst_element_get_pad(), it's a bad method.
2008-05-21 17:39:38 +00:00
Wim Taymans
dc9c3f540c gst/autodetect/gstautovideosink.*: Fix docs.
Original commit message from CVS:
* gst/autodetect/gstautovideosink.c:
(gst_auto_video_sink_class_init), (gst_auto_video_sink_dispose),
(gst_auto_video_sink_init),
(gst_auto_video_sink_create_element_with_pretty_name),
(gst_auto_video_sink_find_best),
(gst_auto_video_sink_set_property),
(gst_auto_video_sink_get_property):
* gst/autodetect/gstautovideosink.h:
Fix docs.
Use same error reporting code as autoaudiosink.
Add property to filter sinks based on caps. Only select raw video sinks
by default for backwards compat.
API: GstAutoVideoSink::filter-caps
2007-12-05 16:04:47 +00:00
Tommi Myöhänen
619ee506cf gst/autodetect/gstautoaudiosink.*: Add property to filter sinks based on caps. Only select raw audio sinks by default...
Original commit message from CVS:
Patch by: Tommi Myöhänen  <ext-tommi dot myohanen at nokia dot com>
* gst/autodetect/gstautoaudiosink.c:
(gst_auto_audio_sink_class_init), (gst_auto_audio_sink_dispose),
(gst_auto_audio_sink_init), (gst_auto_audio_sink_find_best),
(gst_auto_audio_sink_set_property),
(gst_auto_audio_sink_get_property):
* gst/autodetect/gstautoaudiosink.h:
Add property to filter sinks based on caps. Only select raw audio sinks
by default for backwards compat.  Fixes #417420.
API: GstAutoAudioSink::filter-caps
2007-12-05 16:02:15 +00:00
Tim-Philipp Müller
ec2f93e9d2 Use new gst_bus_pop_filtered().
Original commit message from CVS:
* ext/gconf/gstswitchsink.c:
* gst/autodetect/gstautoaudiosink.c:
Use new gst_bus_pop_filtered().
2007-10-17 11:47:23 +00:00
Jan Schmidt
465a740bbf gst/autodetect/gstautoaudiosink.c: Don't unnecessarily perform a READY->NULL->READY transition on the detected audio ...
Original commit message from CVS:
* gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_detect):
Don't unnecessarily perform a READY->NULL->READY transition on the
detected audio sink when starting up. Fixes: #440127
2007-05-25 10:23:49 +00:00
Jan Schmidt
647934baf9 gst/autodetect/gstautoaudiosink.c: Tim and I can't think of any reason the child audio sink needs to be set back to N...
Original commit message from CVS:
* gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_find_best):
Tim and I can't think of any reason the child audio sink needs to
be set back to NULL after successfully determining that it can
reach READY - it gets immediately set back to READY by the caller
anyway, causing an unnecessary close/open of any audio devices
involved.
2007-03-09 20:12:08 +00:00
Jan Schmidt
b1aa8fef18 Re-factor the gconfaudiosink into a "GstSwitchSink" base class and a child that implements the GConf key monitoring. ...
Original commit message from CVS:
* ext/gconf/Makefile.am:
* ext/gconf/gconf.c: (gst_gconf_get_string),
(gst_gconf_get_key_for_sink_profile), (gst_gconf_set_string),
(gst_gconf_render_bin_with_default):
* ext/gconf/gconf.h:
* ext/gconf/gstgconfaudiosink.c: (gst_gconf_audio_sink_base_init),
(gst_gconf_audio_sink_reset), (gst_gconf_audio_sink_init),
(gst_gconf_audio_sink_dispose), (do_change_child),
(gst_gconf_switch_profile), (gst_gconf_audio_sink_set_property),
(cb_change_child), (gst_gconf_audio_sink_change_state):
* ext/gconf/gstgconfaudiosink.h:
* ext/gconf/gstswitchsink.c: (gst_switch_sink_base_init),
(gst_switch_sink_class_init), (gst_switch_sink_reset),
(gst_switch_sink_init), (gst_switch_sink_dispose),
(gst_switch_commit_new_kid), (gst_switch_sink_set_child),
(gst_switch_sink_set_property), (gst_switch_sink_handle_event),
(gst_switch_sink_get_property), (gst_switch_sink_change_state):
* ext/gconf/gstswitchsink.h:
* gst/autodetect/gstautoaudiosink.c:
(gst_auto_audio_sink_class_init), (gst_auto_audio_sink_dispose),
(gst_auto_audio_sink_clear_kid), (gst_auto_audio_sink_reset),
(gst_auto_audio_sink_detect):
* gst/autodetect/gstautovideosink.c:
(gst_auto_video_sink_class_init), (gst_auto_video_sink_dispose),
(gst_auto_video_sink_clear_kid), (gst_auto_video_sink_reset),
(gst_auto_video_sink_detect):
Re-factor the gconfaudiosink into a "GstSwitchSink" base class
and a child that implements the GConf key monitoring. The end goal of
this is an audio sink that can be changed on the fly, but at the
moment it still only changes on the next READY transition.
2007-02-13 16:01:29 +00:00
Wim Taymans
9cadd004a8 gst/autodetect/: Small cleanups. don't try to set "sync" property when it is not available.
Original commit message from CVS:
* gst/autodetect/gstautoaudiosink.c:
(gst_auto_audio_sink_base_init), (gst_auto_audio_sink_class_init),
(gst_auto_audio_sink_find_best):
* gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_detect):
Small cleanups.
don't try to set "sync" property when it is not available.
2006-09-25 13:55:44 +00:00
Tim-Philipp Müller
e4ba501855 gst/autodetect/: Make static pad templates static to appease valgrind's leak detector.
Original commit message from CVS:
* gst/autodetect/gstautoaudiosink.c:
(gst_auto_audio_sink_base_init):
* gst/autodetect/gstautovideosink.c:
(gst_auto_video_sink_base_init):
Make static pad templates static to appease valgrind's leak
detector.
* tests/check/Makefile.am:
* tests/check/elements/.cvsignore:
* tests/check/elements/autodetect.c: (GST_START_TEST),
(autodetect_suite):
Add simple test for the ghostpad lockup on shutdown fixed in core
CVS (audio bit disabled because it would need dozens of alsa
suppressions and I'm too lazy to add those now).
2006-09-22 12:12:10 +00:00
Tim-Philipp Müller
835264e18d gst/autodetect/gstautoaudiosink.c: When we can't find a usable audiosink, don't error out, but use a fake sink instea...
Original commit message from CVS:
* gst/autodetect/gstautoaudiosink.c:
(gst_auto_audio_sink_find_best):
When we can't find a usable audiosink, don't error out,
but use a fake sink instead and post a warning message
on the bus (#341278).
2006-08-16 10:53:32 +00:00