summaryrefslogtreecommitdiffstats
path: root/examples/gstplay/player.c
diff options
context:
space:
mode:
Diffstat (limited to 'examples/gstplay/player.c')
-rw-r--r--examples/gstplay/player.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/examples/gstplay/player.c b/examples/gstplay/player.c
index 92cb9bc7..4258d645 100644
--- a/examples/gstplay/player.c
+++ b/examples/gstplay/player.c
@@ -18,6 +18,7 @@
*/
#include <gst/play/play.h>
+#include <gst/gconf/gconf.h>
static GMainLoop *loop = NULL;
static gint64 length = 0;
@@ -121,11 +122,17 @@ main (int argc, char *argv[])
}
/* Getting default audio and video plugins from GConf */
- audio_sink = gst_element_factory_make ("osssink", "audio_sink");
- video_sink = gst_element_factory_make ("ximagesink", "video_sink");
vis_element = gst_element_factory_make ("goom", "vis_element");
data_src = gst_element_factory_make ("gnomevfssrc", "source");
+ audio_sink = gst_gconf_get_default_audio_sink ();
+ if (!GST_IS_ELEMENT (audio_sink))
+ g_error ("Could not get default audio sink from GConf");
+ video_sink = gst_gconf_get_default_video_sink ();
+ if (!GST_IS_ELEMENT (video_sink))
+ g_error ("Could not get default video sink from GConf");
+
+
/* Let's send them to GstPlay object */
if (!gst_play_set_audio_sink (play, audio_sink))
g_warning ("Could not set audio sink");
@@ -158,7 +165,7 @@ main (int argc, char *argv[])
/* Change state to PLAYING */
if (gst_element_set_state (GST_ELEMENT (play),
GST_STATE_PLAYING) == GST_STATE_FAILURE)
- g_warning ("Could not set state to PLAYING");
+ g_error ("Could not set state to PLAYING");
g_idle_add ((GSourceFunc) idle_iterate, play);
g_timeout_add (20000, (GSourceFunc) seek_timer, play);