gst-launch-1.0 multipath specifying problem

William Johnston wgj at cast.uark.edu
Thu Apr 23 02:52:09 UTC 2020


So a fit of setup:
misbdemux has on input and two outputs
misbfixcoordinates has two inputs and two outputs
misbsink has two inputs

So I need it to fork into two paths at misbdemux, travel through 
misbfixcoordinate, and end up at misbsink.

I can test each path independently like so:

gst-launch-1.0 filesrc location=/home/wgj/video/Truck.H264.ts ! 
misbdemux name=md ! tsdemux ! h264parse ! avdec_h264 ! videoconvert ! 
"video/x-raw, format=(string)RGB" ! misbfixcoordinates name=mfc ! 
misbsink name=ms

and

gst-launch-1.0 filesrc location=/home/wgj/video/Truck.H264.ts ! 
misbdemux name=md ! "meta/klv" ! misbfixcoordinates name=mfc ! misbsink 
name=ms

So far so good. However, when I combine them I get a problem. I can 
combine them in two different ways:

gst-launch-1.0 filesrc location=/home/wgj/video/Truck.H264.ts ! 
misbdemux name=md ! tsdemux ! h264parse ! avdec_h264 ! videoconvert ! 
"video/x-raw, format=(string)RGB" ! misbfixcoordinates name=mfc ! 
misbsink name=ms         md. ! "meta/klv" ! mfc. ! ms.

gst-launch-1.0 filesrc location=/home/wgj/video/Truck.H264.ts ! 
misbdemux name=md ! "meta/klv" ! misbfixcoordinates name=mfc ! misbsink 
name=ms      md. ! tsdemux ! h264parse ! avdec_h264 ! videoconvert ! 
"video/x-raw, format=(string)RGB" ! mfc. ! ms.

Both fail with:

WARNING: erroneous pipeline: syntax error

In both cases it's the misbfixcoordinates in the second path (mfc.) 
seems to be causing the failure.

By dropping the second misbfixcoordinates I can make it run (though 
without the behavior that I need):

gst-launch-1.0 filesrc location=/home/wgj/video/Truck.H264.ts ! 
misbdemux name=md ! tsdemux ! h264parse ! avdec_h264 ! videoconvert ! 
"video/x-raw, format=(string)RGB" ! misbfixcoordinates name=mfc ! 
misbsink name=ms         md. ! "meta/klv" ! ms.

gst-launch-1.0 filesrc location=/home/wgj/video/Truck.H264.ts ! 
misbdemux name=md ! "meta/klv" ! misbfixcoordinates name=mfc ! misbsink 
name=ms       md. ! tsdemux ! h264parse ! avdec_h264 ! videoconvert ! 
"video/x-raw, format=(string)RGB" ! ms.

So, I don't think it's anything to do with my misbfixcoordinates plug-in 
as each path through it works independently and the problem doesn't 
follow which pair of pads I'm using. It seems that there is a syntax 
error in how I'm setting up the path. I don't see it though.

Any ideas? I have been looking at this for two days now and I am no 
closer to figuring it out.




More information about the gstreamer-devel mailing list