Hi all,
     I use tee element for dual video output and my pipeline like this :

                         / [ queue1 | v4l2sink1]   branch 1
                tee
                        \ [ queue2 | v4l2sink2]    branch 2
Now I want to remove v4l2sink1 and add it to pipeline again. First, 
//
....
blockpad = gst_element_get_static_pad(queue1,NULL);
gst_pad_add_probe (blockpad , 
(GstPadProbeType)GST_PAD_PROBE_TYPE_BLOCK_DOWNSTREAM , pad_probe_cb, user_data, 
NULL);
gst_pad_remove_probe (blockpad , GST_PAD_PROBE_INFO_ID (info));

And then, in the callback pad_probe_cb() ,

sinkpad = gst_element_get_static_pad (v4l2sink1, "sink");
gst_pad_send_event (sinkpad, gst_event_new_eos ());
gst_pad_remove_probe (sinkpad, GST_PAD_PROBE_INFO_ID (info));
gst_element_set_state (v4l2sink1, GST_STATE_NULL);
gst_bin_remove (GST_BIN (pipeline),v4l2sink1);

Problems has occured that neither branch1 nor branch2  has no videos on screen 
with the pipeline is playing and the audio output is ok.
It seems that the videostreams was block by adding a probe .    At the same 
time , the branch2 seems receive block message too.
Pls tell me how to fix this problem .Any reply is appreciated .
_______________________________________________
Dev mailing list
Dev@lists.tizen.org
https://lists.tizen.org/listinfo/dev

Reply via email to