From 835264e18d4789ca7d0a468e5f1f910e165445f9 Mon Sep 17 00:00:00 2001 From: Tim-Philipp Müller Date: Wed, 16 Aug 2006 10:53:32 +0000 Subject: 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). --- gst/autodetect/gstautoaudiosink.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'gst/autodetect') diff --git a/gst/autodetect/gstautoaudiosink.c b/gst/autodetect/gstautoaudiosink.c index 1dc4ad32..13b0e657 100644 --- a/gst/autodetect/gstautoaudiosink.c +++ b/gst/autodetect/gstautoaudiosink.c @@ -230,9 +230,12 @@ gst_auto_audio_sink_find_best (GstAutoAudioSink * sink) GST_DEBUG_OBJECT (sink, "reposting message %p", errors->data); gst_element_post_message (GST_ELEMENT (sink), GST_MESSAGE (errors->data)); } else { - /* general fallback */ - GST_ELEMENT_ERROR (sink, LIBRARY, INIT, (NULL), - ("Failed to find a supported audio sink")); + /* send warning message to application and use a fakesink */ + GST_ELEMENT_WARNING (sink, RESOURCE, NOT_FOUND, (NULL), + ("Failed to find a usable audio sink")); + choice = gst_element_factory_make ("fakesink", "fake-audio-sink"); + g_object_set (choice, "sync", TRUE, NULL); + gst_element_set_state (choice, GST_STATE_READY); } } gst_object_unref (bus); -- cgit