From: Wim Taymans Date: Mon, 17 Dec 2001 14:18:03 +0000 (+0000) Subject: Added parallel pipeline syntex to the parser. ./gstreamer-launch filesrc location... X-Git-Tag: RELEASE-0_3_1-BELGIANBEER~169 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=17649a66793a72320ac9b8070761d02fbce4a481;p=platform%2Fupstream%2Fgstreamer.git Added parallel pipeline syntex to the parser. ./gstreamer-launch filesrc location=/opt/data/AlienSong.mpg ! mpegdemux... Original commit message from CVS: Added parallel pipeline syntex to the parser. ./gstreamer-launch filesrc location=/opt/data/AlienSong.mpg ! mpegdemux name=foo video_00! { queue ! mpeg2dec ! sdlvideosink } foo.audio_00! { queue ! mad ! osssink } should do the trick :) --- diff --git a/gst/gstparse.c b/gst/gstparse.c index e5131e82a7..26ec647e48 100644 --- a/gst/gstparse.c +++ b/gst/gstparse.c @@ -169,6 +169,21 @@ gst_parse_launch_cmdline (int argc, char *argv[], GstBin * parent, gst_parse_pri sinkpadname = NULL; } + if (srcpadname && (ptr = strchr (srcpadname, '.'))) { + gchar *element_name = g_strndup (arg, (ptr - srcpadname)); + GstElement *new; + + GST_DEBUG (0, "have pad for element %s\n", element_name); + new = gst_bin_get_by_name (parent, element_name); + if (!new) { + GST_DEBUG (0, "element %s does not exist! trying to continue\n", element_name); + } + else { + previous = new; + srcpadname = ptr + 1; + } + } + GST_DEBUG (0, "have srcpad %s, sinkpad %s\n", srcpadname, sinkpadname); g_slist_free (srcpads); @@ -422,7 +437,7 @@ gst_parse_launch_cmdline (int argc, char *argv[], GstBin * parent, gst_parse_pri g_slist_free (srcpads); srcpads = NULL; - + g_slist_free (sinkpads); sinkpads = NULL;