<div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr">Le mer. 4 avr. 2018 23:12, Matteo Valdina <<a href="mailto:matteo.valdina@gmail.com">matteo.valdina@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"><div>Thanks,<br><br>If I can pass the fd from the first pipeline to the second (in the same process) should works?<br><br></div><div>From the code, it doesn't look complicated.<br></div></div></blockquote></div></div><div dir="auto"><br></div><div dir="auto">That is the easiest. Then you need to make sure mode is set, other the two kmssink will both try to set something, and one will fail. Performance whose though, you'll likely get low framerate as we still use legacy DRM API.</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>Best<br></div><div>Matteo <br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Apr 4, 2018 at 8:07 PM, Nicolas Dufresne <span dir="ltr"><<a href="mailto:nicolas@ndufresne.ca" target="_blank" rel="noreferrer">nicolas@ndufresne.ca</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><span><div><br><br><div class="gmail_quote"><div dir="ltr">Le mer. 4 avr. 2018 20:41, Matteo Valdina <<a href="mailto:matteo.valdina@gmail.com" target="_blank" rel="noreferrer">matteo.valdina@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"><div><div><div>Hi,<br></div>I'm trying to drive two separate display with kmssink (intel driver).<br><br></div>I created two separate pipelines:<br> pipeline 1 v4l2src device=/dev/video0 ! kmssink conncetor-id=63<br> pipeline 1 v4l2src device=/dev/video0 ! kmssink conncetor-id=58<br><br></div><div>My problem is that the second pipeline encounter and error on accessing DRM resources.<br></div><div>So, I implemented a simple test application that runs the two pipelines inside a single process.<br></div><div>Only the first pipeline works, the second encounters these error:<br></div><div><br></div><div>0:00:00.124567628 6195 0x7f31400028a0 ERROR kmssink gstkmssink.c:498:configure_mode_setting:<kmssink1> Failed to set mode: Permission denied<br>0:00:00.124603970 6195 0x7f31400028a0 WARN kmssink gstkmssink.c:1058:gst_kms_sink_set_caps:<kmssink1> error: failed to configure video mode<br><br></div><div>I'm using GStreamer 1.14 and it using an i915.<br><br></div><div>Can kmssink work concurrently run on two different display but the same video card?<br></div></div></blockquote></div></div><div dir="auto"><br></div></span><div dir="auto">No, this would require the same FD being shared among kmssink, which is not implemented (or a cookie?). Obviously you could sudo it, but overall, kmssink need to be ported to atomic APIs to work smoothly.</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"><span><div dir="ltr"><div><br></div><div>Best<br></div><div>Matteo<br></div><div><div><div><br><div><br><br clear="all"><div><div><br>-- <br><div class="m_8085218654093904606m_-713017920704374705m_1406751057131196801gmail_signature">“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”<br>- Tony Hoare</div>
</div></div></div></div></div></div></div></span>
_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org" rel="noreferrer noreferrer" target="_blank">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="noreferrer noreferrer noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
</blockquote></div></div></div>
<br>_______________________________________________<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>
<br></blockquote></div><br><br clear="all"><br>-- <br><div class="m_8085218654093904606gmail_signature" data-smartmail="gmail_signature">“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”<br>- Tony Hoare</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>