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).
This commit is contained in:
Tim-Philipp Müller 2006-08-16 10:53:32 +00:00
parent 2ea11c1c09
commit 835264e18d
2 changed files with 14 additions and 3 deletions

View file

@ -1,3 +1,11 @@
2006-08-16 Tim-Philipp Müller <tim at centricular dot net>
* 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 Tim-Philipp Müller <tim at centricular dot net> 2006-08-16 Tim-Philipp Müller <tim at centricular dot net>
* sys/oss/gstossmixerelement.c: (gst_oss_mixer_element_class_init): * sys/oss/gstossmixerelement.c: (gst_oss_mixer_element_class_init):

View file

@ -230,9 +230,12 @@ gst_auto_audio_sink_find_best (GstAutoAudioSink * sink)
GST_DEBUG_OBJECT (sink, "reposting message %p", errors->data); GST_DEBUG_OBJECT (sink, "reposting message %p", errors->data);
gst_element_post_message (GST_ELEMENT (sink), GST_MESSAGE (errors->data)); gst_element_post_message (GST_ELEMENT (sink), GST_MESSAGE (errors->data));
} else { } else {
/* general fallback */ /* send warning message to application and use a fakesink */
GST_ELEMENT_ERROR (sink, LIBRARY, INIT, (NULL), GST_ELEMENT_WARNING (sink, RESOURCE, NOT_FOUND, (NULL),
("Failed to find a supported audio sink")); ("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); gst_object_unref (bus);