diff options
author | Wim Taymans <wim.taymans@gmail.com> | 2001-12-17 14:18:03 +0000 |
---|---|---|
committer | Wim Taymans <wim.taymans@gmail.com> | 2001-12-17 14:18:03 +0000 |
commit | 17649a66793a72320ac9b8070761d02fbce4a481 (patch) | |
tree | 5e85b0fedb29547989e2ad616266830eb41fbcf7 /gst/gstparse.c | |
parent | 18ae9a069dcb874a371bae0b6ef111663cd70aa8 (diff) |
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 :)
Diffstat (limited to 'gst/gstparse.c')
-rw-r--r-- | gst/gstparse.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/gst/gstparse.c b/gst/gstparse.c index e5131e82a..26ec647e4 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; |