Merging pipelines

Tim Müller tim at centricular.com
Sat Jun 22 10:50:03 UTC 2019


Hi,

> "src1 ! .. ! sink1    src2 ! ... ! sink2" does not work

Could you be more specific? How does it "not work"? Do you get an error
or ..?

Have you tried it in gst-launch-1.0 as well?

This works just fine for example:

 gst-launch-1.0 videotestsrc ! autovideosink  videotestsrc !
autovideosink


> and if I use
> gst_parse_bin_from_description
> gst_parse_launch does not recognize bin1 and bin2 elements.
> 
> GstElement *bin1 = gst_parse_bin_from_description("udpsrc
> multicast-group=224.1.1.1 auto-multicast=true port=6000 !
> image/jpeg,width=1280,height=720,framerate=31/1 ! jpegparse ! queue !
> decodebin ! autovideosink sync=false", TRUE, NULL);
> 
> GstElement *bin2 = gst_parse_bin_from_description("udpsrc
> multicast-group=224.1.1.2 auto-multicast=true port=6000 !
> audio/x-raw,format=S16LE,rate=48000,channels=1 ! volume volume=10 ! \
> audioconvert ! autoaudiosink sync=false", TRUE, NULL);
> 
> GstElement *pipeline = gst_parse_launch("bin1 bin2", &error);

Yeah, that's because you're cargo culting and making things up here :)

What I meant was that you could do something like:

  pipeline = gst_pipeline_new("my-pipeline");

  gst_bin_add (GST_BIN (pipeline), bin1);
  gst_bin_add (GST_BIN (pipeline), bin2);

Cheers
 Tim

-- 
Tim Müller, Centricular Ltd - http://www.centricular.com



More information about the gstreamer-devel mailing list