kmssink on two spearate display
Nicolas Dufresne
nicolas at ndufresne.ca
Thu Apr 5 11:11:38 UTC 2018
Le mer. 4 avr. 2018 23:12, Matteo Valdina <matteo.valdina at gmail.com> a
écrit :
> Thanks,
>
> If I can pass the fd from the first pipeline to the second (in the same
> process) should works?
>
> From the code, it doesn't look complicated.
>
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.
> Best
> Matteo
>
> On Wed, Apr 4, 2018 at 8:07 PM, Nicolas Dufresne <nicolas at ndufresne.ca>
> wrote:
>
>>
>>
>> Le mer. 4 avr. 2018 20:41, Matteo Valdina <matteo.valdina at gmail.com> a
>> écrit :
>>
>>> Hi,
>>> I'm trying to drive two separate display with kmssink (intel driver).
>>>
>>> I created two separate pipelines:
>>> pipeline 1 v4l2src device=/dev/video0 ! kmssink conncetor-id=63
>>> pipeline 1 v4l2src device=/dev/video0 ! kmssink conncetor-id=58
>>>
>>> My problem is that the second pipeline encounter and error on accessing
>>> DRM resources.
>>> So, I implemented a simple test application that runs the two pipelines
>>> inside a single process.
>>> Only the first pipeline works, the second encounters these error:
>>>
>>> 0:00:00.124567628 6195 0x7f31400028a0 ERROR kmssink
>>> gstkmssink.c:498:configure_mode_setting:<kmssink1> Failed to set mode:
>>> Permission denied
>>> 0:00:00.124603970 6195 0x7f31400028a0 WARN kmssink
>>> gstkmssink.c:1058:gst_kms_sink_set_caps:<kmssink1> error: failed to
>>> configure video mode
>>>
>>> I'm using GStreamer 1.14 and it using an i915.
>>>
>>> Can kmssink work concurrently run on two different display but the same
>>> video card?
>>>
>>
>> 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.
>>
>>
>>> Best
>>> Matteo
>>>
>>>
>>>
>>>
>>> --
>>> “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.”
>>> - Tony Hoare
>>> _______________________________________________
>>> gstreamer-devel mailing list
>>> gstreamer-devel at lists.freedesktop.org
>>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>>
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>
>>
>
>
> --
> “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.”
> - Tony Hoare
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20180405/701c2a95/attachment.html>
More information about the gstreamer-devel
mailing list