<div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le lun. 10 févr. 2020 07 h 15, Yair Reshef <<a href="mailto:yair99@gmail.com">yair99@gmail.com</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">hi,<div>i have single thread decoder plugin </div><div>i would like to use round robin plugin to send a timestamped src to the 3 different decoder instances. </div><div><br></div><div><br></div><div>1. am i thinking about this wrong? should queue handle this in some why?</div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">If your decoder can handle random frames, yes, it's possible to add parallel processing this way (e.g. would work with PNG or jpeg). Would require: roundrobin, then a queue after each pads, though we are missing an element to close the loop, we need funnel, but with synchronization so that buffers comes out in order. That would be a nice addition, and like roundrobin should be very simple.</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>2. how do i use the roundrobin plugin, as its described as a "reverse of tee"</div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Now that you highlight this, I need to rework that doc. Reverse of tee is funnel, roundrobin is like tee, 1 to N, but sends each buffer to one pad, were tee sends buffer to all pads.</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><br></div><div>gst-launch-1.0 -v videotestsrc ! roundrobin name=s ! fpsdisplaysink s. ! fpsdisplaysink s. ! fpsdisplaysink <br></div><div><br></div><div>"<span style="background-color:rgb(238,238,238);font-family:"Source Sans Pro","Source Sans",sans-serif;font-size:14px">This is a generic element that will distribute equally incoming buffers over multiple src pads. This is the opposite of tee element, which duplicates buffers over all pads. This element can be used to distrute load across multiple branches when the buffer can be processed independently."</span></div><div><span style="background-color:rgb(238,238,238);font-family:"Source Sans Pro","Source Sans",sans-serif;font-size:14px"><br></span></div><div>note: ubuntu's stock 1.14.5 gst build doesnt show it. but gst-build exposed it. </div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">roundrobin element was added in current development phase, so will be available in next stable release (1.18). It's a trivial element, feel free to copy into your project if LGPL is compatible. It's part of -bad/gst/rist, as this is the only usage inside GStreamer for now.</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><br></div><div><a href="https://gstreamer.freedesktop.org/documentation/rist/roundrobin.html?gi-language=c" target="_blank" rel="noreferrer">https://gstreamer.freedesktop.org/documentation/rist/roundrobin.html?gi-language=c</a><br></div></div>
_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank" rel="noreferrer">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="noreferrer noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
</blockquote></div></div></div>