GstVideoAggregator caps negotiation problems when valves are present

mariannasb mariannasb at yahoo.com.br
Thu Feb 18 10:33:48 UTC 2016


I have created my own Compositor like element using the VideoAggregator, I'm
however experiencing some issues when using it in pipelines with Valves,
depending on the format on the sink pads.

I have defined my component to accept RGB, BGR and GRAY8 as both in and out
caps.
Then when using it in a pipeline as bellow:

v4l2src ! video/x-raw,format=GRAY8 ! tee name=t1 ! queue ! valve drop=1 !
videocrop ! tee name=t2 ! queue ! muxer name=mux ! video/x-raw,format=RGB !
... ! udpsink t2. ! queue ! ... ! mux.

So both sink pads in my element have GRAY8 and the src pad has RGB.

If I open the valve and then set to playing all works fine.
If I then close the valve (without stopping the pipeline) I get a
"not-negotiated (-4)" error.
If I put "videoconvert video/x-raw,format=RGB" in front of one of the sink
pads then the error is gone.

Another scenario I had issues with is if I set the pipeline to playing
before opening the valve.
In this case it will sometimes work fine and sometimes result in
"not-negotiated (-4)" errors.
Again by using videoconverts on the sink and src pads and forcing all the
formats to fx. RGB then my problems are gone, it seems to work all the time.

As from the title my guess is that there are issues with the caps
negotiation, but I don't know if that is really the case...

One thing Im not sure about is the format support in videoaggregator, its
description states "VideoAggregator can accept AYUV, ARGB and BGRA video
streams", it is not clear to me if that is only the 3 listed formats or if
that includes fx RGB and BGR. And as in my example I'm also interested if it
should work with GRAY8.



--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/GstVideoAggregator-caps-negotiation-problems-when-valves-are-present-tp4675927.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.


More information about the gstreamer-devel mailing list