proxysink/src + videoconvert issues when restarting pipelines

Marianna S. Buschle msb at qtec.com
Wed Jan 16 12:21:51 UTC 2019


Hi,

I have a pipeline which acquires images from a v4l2src then encodes in
different formats and streams it.
Now I have added another branch to it which I link to a proxysink, because
it will be used for calibration.
Then I created a 2nd pipeline with a proxysrc which runs a "one-shot"
autofocus procedure.

The first pipeline is always running, the second one is set to PLAYING when
I receive a request to auto-focus, when the autofocus is done the pipeline
gets an EOS.
Then if I get a new request for autofocus I put the pipeline into READY and
then PLAYING and it runs again.

It mostly works, but Im getting some issues which Im pretty sure are related
to CAPS negotiation.
When the 2nd pipeline has a videoconvert element it will only work the first
time it goes into PLAYING (on the first autofocus request), on all
subsequent calls the buffers don't reach the sink element.

Now if I put specific CAPS filters before and after the videoconvert it
works fine. So it looks like it is not receiving the CAPS from the 1st
pipeline in order to auto-negotiate.

My pipelines are sth like this:

v4l2src ! caps ! tee name=t ! queue ! jpegenc ! ... ! udpsink
t. ! queue ! h264enc ! ... ! rtsp_server stuff
t. ! queue ! proxysink

proxysrc ! videoconvert ! ... ! autofocus_sink

Now to simplify I have tried:

(works fine all the time)
proxysrc ! fakesink sync=0 dump=1 num-buffers=3

(only works for the 1st request)
proxysrc ! videoconvert ! fakesink sync=0 dump=1 num-buffers=3

(always works)
proxysrc ! video/x-raw,format=NV12 ! videoconvert ! video/x-raw,format=GRAY8
! fakesink sync=0 dump=1 num-buffers=3

I would rather not have to hard code the caps in the pipeline like that, how
can I make videoconvert (or is it the proxysrc) receive the proper CAPS from
upstream when restarting the pipeline?



--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/


More information about the gstreamer-devel mailing list