From 42aadabc81d991b00582ae9b846f8f0aa4d1b3cd Mon Sep 17 00:00:00 2001 From: Julien Moutte Date: Mon, 3 Mar 2003 17:58:07 +0000 Subject: gst_play_get_sink_element has been improved : Original commit message from CVS: gst_play_get_sink_element has been improved : - Recursively searches in bins - Able to find sink_element of a specified GstPlaySinkType (audio,video,any) This now allow us to send very complex bins to GstPlay for audio/video sink without breaking length querying, eos signaling, etc.. --- gst-libs/gst/play/playpipelines.c | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) (limited to 'gst-libs/gst/play/playpipelines.c') diff --git a/gst-libs/gst/play/playpipelines.c b/gst-libs/gst/play/playpipelines.c index ace3462a..3b8fb61d 100644 --- a/gst-libs/gst/play/playpipelines.c +++ b/gst-libs/gst/play/playpipelines.c @@ -196,7 +196,10 @@ gst_play_audiot_set_audio ( GstPlay *play, gst_bin_add (GST_BIN (play->pipeline), play->audio_sink); gst_element_link (play->volume, play->audio_sink); - play->audio_sink_element = gst_play_get_sink_element (play, audio_sink); + play->audio_sink_element = gst_play_get_sink_element ( + play, + audio_sink, + GST_PLAY_SINK_TYPE_AUDIO); if (play->audio_sink_element != NULL) { g_signal_connect (G_OBJECT (play->audio_sink_element), "eos", @@ -344,7 +347,10 @@ gst_play_audioht_set_audio ( GstPlay *play, gst_bin_add (GST_BIN (audio_thread), play->audio_sink); gst_element_link (play->volume, play->audio_sink); - play->audio_sink_element = gst_play_get_sink_element (play, audio_sink); + play->audio_sink_element = gst_play_get_sink_element ( + play, + audio_sink, + GST_PLAY_SINK_TYPE_AUDIO); if (play->audio_sink_element != NULL) { g_signal_connect (G_OBJECT (play->audio_sink_element), "eos", @@ -604,7 +610,10 @@ gst_play_video_set_video ( GstPlay *play, gst_bin_add (GST_BIN (video_bin), play->video_sink); gst_element_link (video_mate, play->video_sink); - play->video_sink_element = gst_play_get_sink_element (play, video_sink); + play->video_sink_element = gst_play_get_sink_element ( + play, + video_sink, + GST_PLAY_SINK_TYPE_VIDEO); if (play->video_sink_element != NULL) { g_signal_connect ( G_OBJECT (play->video_sink_element), @@ -646,7 +655,10 @@ gst_play_video_set_audio ( GstPlay *play, gst_bin_add (GST_BIN (audio_bin), play->audio_sink); gst_element_link (play->volume, play->audio_sink); - play->audio_sink_element = gst_play_get_sink_element (play, audio_sink); + play->audio_sink_element = gst_play_get_sink_element ( + play, + audio_sink, + GST_PLAY_SINK_TYPE_AUDIO); if (play->audio_sink_element != NULL) { g_signal_connect (G_OBJECT (play->audio_sink_element), "eos", -- cgit v1.2.1