vaapipostproc and v4l2sink

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

vaapipostproc and v4l2sink

Thomas Scheuermann
Hello List,

I've got the following problem with my pipeline. I want to connect
vaapipostproc to v4l2sink without any additional element in between
(copy). But I can't link these two elements. I let vaapipostproc
generate I420 format and do some scaling but it only works if I put a
videoconvert between vaapipostproc and v4l2sink.

vaapipostproc ! video/x-raw,format=I420 ! v4l2sink : NOK

vaapipostproc ! video/x-raw,format=I420 ! videoconvert ! v4l2sink : OK

But the additional videoconvert introduces another copy (I assume). The
thing here which doesn't match between vaapipostproc and v4l2sink is the
colorimetry. vaapipostproc produces in my example a colorimetry of
'bt709' but v4l2sink needs a colorimetry of '2:4:7:1'.

Is there a way to create this pipeline without a videoconvert?

Regards,

Thomas

This message is subject to the following terms and conditions: MAIL DISCLAIMER<http://www.barco.com/en/maildisclaimer>
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: vaapipostproc and v4l2sink

Victor Jaquez
On Tue, 23 Jan 2018 at 14:10, Thomas Scheuermann wrote:

> Hello List,
>
> I've got the following problem with my pipeline. I want to connect
> vaapipostproc to v4l2sink without any additional element in between
> (copy). But I can't link these two elements. I let vaapipostproc
> generate I420 format and do some scaling but it only works if I put a
> videoconvert between vaapipostproc and v4l2sink.
>
> vaapipostproc ! video/x-raw,format=I420 ! v4l2sink : NOK
>
> vaapipostproc ! video/x-raw,format=I420 ! videoconvert ! v4l2sink : OK
>
> But the additional videoconvert introduces another copy (I assume). The
> thing here which doesn't match between vaapipostproc and v4l2sink is the
> colorimetry. vaapipostproc produces in my example a colorimetry of
> 'bt709' but v4l2sink needs a colorimetry of '2:4:7:1'.
>
> Is there a way to create this pipeline without a videoconvert?

It seems we have a problem with vaapipostproc handling the colorimetry

https://bugzilla.gnome.org/show_bug.cgi?id=791876

>
> Regards,
>
> Thomas
>
> This message is subject to the following terms and conditions: MAIL DISCLAIMER<http://www.barco.com/en/maildisclaimer>
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: vaapipostproc and v4l2sink

Nicolas Dufresne-5
In reply to this post by Thomas Scheuermann
Le mardi 23 janvier 2018 à 14:10 +0100, Thomas Scheuermann a écrit :

> I've got the following problem with my pipeline. I want to connect
> vaapipostproc to v4l2sink without any additional element in between
> (copy). But I can't link these two elements. I let vaapipostproc
> generate I420 format and do some scaling but it only works if I put a
> videoconvert between vaapipostproc and v4l2sink.
>
> vaapipostproc ! video/x-raw,format=I420 ! v4l2sink : NOK
>
> vaapipostproc ! video/x-raw,format=I420 ! videoconvert ! v4l2sink :
> OK
>
> But the additional videoconvert introduces another copy (I assume).
> The
> thing here which doesn't match between vaapipostproc and v4l2sink is
> the
> colorimetry. vaapipostproc produces in my example a colorimetry of
> 'bt709' but v4l2sink needs a colorimetry of '2:4:7:1'.
>
> Is there a way to create this pipeline without a videoconvert?
In practice, if the colorimetry does not match you need a converter.
But if correct correct (only slightly for this case) does not matter to
you, you could use capssetter element to make it ignore that field (you
need to set fixed caps and set the replace property to TRUE).

Nicolas

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (201 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: vaapipostproc and v4l2sink

Thomas Scheuermann

Thanks Nicolas,

I will try that.

Regards,

Thomas


Am 23.01.2018 um 22:13 schrieb Nicolas Dufresne:
Le mardi 23 janvier 2018 à 14:10 +0100, Thomas Scheuermann a écrit :
I've got the following problem with my pipeline. I want to connect
vaapipostproc to v4l2sink without any additional element in between
(copy). But I can't link these two elements. I let vaapipostproc
generate I420 format and do some scaling but it only works if I put a
videoconvert between vaapipostproc and v4l2sink.

vaapipostproc ! video/x-raw,format=I420 ! v4l2sink : NOK

vaapipostproc ! video/x-raw,format=I420 ! videoconvert ! v4l2sink :
OK

But the additional videoconvert introduces another copy (I assume).
The
thing here which doesn't match between vaapipostproc and v4l2sink is
the
colorimetry. vaapipostproc produces in my example a colorimetry of
'bt709' but v4l2sink needs a colorimetry of '2:4:7:1'.

Is there a way to create this pipeline without a videoconvert?
In practice, if the colorimetry does not match you need a converter.
But if correct correct (only slightly for this case) does not matter to
you, you could use capssetter element to make it ignore that field (you
need to set fixed caps and set the replace property to TRUE).

Nicolas


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

This message is subject to the following terms and conditions: MAIL DISCLAIMER
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel