<html><head></head><body><div class="">Thanks for your reply.<br>That you mean data is interactive among the elements.<br>And can this problem be solved ?<br>Thanks.</div><div> </div><hr style="WIDTH: 210px; HEIGHT: 1px" color="#b5c4df" size="1" align="left"><div><span><div style="MARGIN: 10px; FONT-FAMILY: verdana; FONT-SIZE: 10pt"><div>hongming0724@163.com</div></div></span></div><blockquote style="margin-Top: 0px; margin-Bottom: 0px; margin-Left: 0.5em"><div> </div><div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm"><div style="PADDING-RIGHT: 8px; PADDING-LEFT: 8px; FONT-SIZE: 12px;FONT-FAMILY:tahoma;COLOR:#000000; BACKGROUND: #efefef; PADDING-BOTTOM: 8px; PADDING-TOP: 8px"><div><b>From:</b> <a href="mailto:sebastian@centricular.com">SebastianDröge</a></div><div><b>Date:</b> 2015-09-17 17:33</div><div><b>To:</b> <a href="mailto:gstreamer-devel@lists.freedesktop.org">Discussion of the development of and with GStreamer</a></div><div><b>Subject:</b> Re: Re: Link/unlink tee branch from a pipeline</div></div></div><div><div class=""><style>div.FoxDIV_20150917175548793 { font-size: 10.5pt }
</style><div class="FoxDIV_20150917175548793"><div foxmail_class="mail_content_body" style="border-width:0px"><div>On Mi, 2015-09-16 at 16:30 +0800, hongming0724@163.com wrote:</div>
<div>> Hi Dröge ,</div>
<div>> I have tested on my board as you said. it's just a quick short</div>
<div>> interval time. </div>
<div>> I use tee element for dual video output and my pipeline like this :</div>
<div>> gstreamer version :1.2.3</div>
<div> </div>
<div>There were a few bugs related to pad probes that are only fixed in</div>
<div>1.4.0 and newer.</div>
<div> </div>
<div>> / [ queue1 | v4l2sink1] branch 1</div>
<div>> tee </div>
<div>> video-output-bin</div>
<div>> </div>
<div>> \ [ queue2 | v4l2sink2] branch 2</div>
<div>> </div>
<div>> All the elements are added into the video-output-bin.Now I wanna</div>
<div>> remove the v4l2sink1 and add it into pipeline again after a while</div>
<div>> when pipeline playback .</div>
<div>> </div>
<div>> pad = gst_element_get_static_pad(queue1,"src");</div>
<div>> </div>
<div>> gst_pad_add_probe(pad,GST_PAD_PROBE_TYPE_BLOCK_DOWNSTREAM,pad_block_c</div>
<div>> b,user_data, NULL);</div>
<div>> </div>
<div>> In the pad_block_cb callback I do not remove the pad .</div>
<div>> </div>
<div>> Theortically , the pad will block the branch1 video actually it did .</div>
<div>> but the video of branch 2 was also blocked. </div>
<div>> </div>
<div>> I donnot know how the queue1's source pad effect the branch 2's</div>
<div>> videostream.</div>
<div> </div>
<div>If you block queue1, then the tee element will block. It will send data</div>
<div>to queue1, and wait there until queue1 is unblocked before it can send</div>
<div>data to queue2.</div>
<div> </div>
<div>-- </div>
<div>Sebastian Dröge, Centricular Ltd · <a href="http://www.centricular.com">http://www.centricular.com</a></div>
<div> </div>
</div></div></div></div></blockquote></body></html>