<div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le dim. 6 nov. 2022, 10 h 22, Christian Hattenberger <<a href="mailto:christian.hattenberger@gmail.com">christian.hattenberger@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 lang="DE" link="blue" vlink="purple"><div class="m_-444630739479408325WordSection1"><p class="MsoNormal"><span lang="EN-US">If I use vaapipostproc in the chain with vaapisink it seems ok, so I think it does dmabuff, <u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">but when I use  io-mode=dmabuf-import with v4l2sink I get “Failed to allocated required memory” <u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">gst-launch-1.0 filesrc location=/mnt/DATA/tearing.mp4 ! decodebin ! v4l2sink io-mode=dmabuf-import device=/dev/video10<br>…<br>0:00:00.376954941 18843 0x7f4d44041460 ERROR          v4l2allocator gstv4l2allocator.c:740:gst_v4l2_allocator_start:<v4l2sink0:pool1:sink:allocator> error requesting 2 buffers: Invalid argument<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">0:00:00.377023310 18843 0x7f4d44041460 ERROR         v4l2bufferpool gstv4l2bufferpool.c:920:gst_v4l2_buffer_pool_start:<v4l2sink0:pool1:sink> we received 0 buffer from device '/dev/video10', we want at least 2<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">0:00:00.377052711 18843 0x7f4d44041460 ERROR             bufferpool gstbufferpool.c:559:gst_buffer_pool_set_active:<v4l2sink0:pool1:sink> start failed<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">…<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">v4l2-ctl -d /dev/video0 --all<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">Driver Info:<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Driver name      : v4l2 loopback<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Card type        : Dummy video device (0x0000)</span></p></div></div></blockquote></div></div><div dir="auto">This out-of-tree driver is incomplete, it does not support dmabuf. You are out of luck here, unless you have time to improve it.</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 lang="DE" link="blue" vlink="purple"><div class="m_-444630739479408325WordSection1"><p class="MsoNormal"><span lang="EN-US"><u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Bus info         : platform:v4l2loopback-000<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Driver version   : 5.15.49<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Capabilities     : 0x85208003<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">                Video Capture<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">                Video Output<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">                Video Memory-to-Memory<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">                Read/Write<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">                Streaming<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">                Extended Pix Format<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">                Device Capabilities<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Device Caps      : 0x05208003<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">                Video Capture<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">                Video Output<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">                Video Memory-to-Memory<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">                Read/Write<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">                Streaming<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">                Extended Pix Format<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">Priority: 2<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">Video input : 0 (loopback: ok)<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">Video output: 0 (loopback in)<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">Format Video Output:<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Width/Height      : 1920/1080<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        </span><span>Pixel Format      : 'NV12' (Y/CbCr 4:2:0)<u></u><u></u></span></p><p class="MsoNormal"><span>        </span><span lang="EN-US">Field             : None<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Bytes per Line    : 1920<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Size Image        : 3110400<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Colorspace        : Rec. 709<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Transfer Function : sRGB<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        YCbCr/HSV Encoding: ITU-R 601<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Quantization      : Limited Range<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Flags             :<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">Streaming Parameters Video Capture:<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Frames per second: 30.000 (30/1)<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Read buffers     : 2<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">Streaming Parameters Video Output:<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Frames per second: 30.000 (30/1)<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">        Write buffers    : 2<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">User Controls<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">                    keep_format 0x0098f900 (bool)   : default=0 value=0<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">              sustain_framerate 0x0098f901 (bool)   : default=0 value=0<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">                        timeout 0x0098f902 (int)    : min=0 max=100000 step=1 default=0 value=0        <u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">               timeout_image_io 0x0098f903 (bool)   : default=0 value=0<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><b>Von:</b> Nicolas Dufresne <<a href="mailto:nicolas@ndufresne.ca" target="_blank" rel="noreferrer">nicolas@ndufresne.ca</a>> <br><b>Gesendet:</b> Sonntag, 6. November 2022 14:32<br><b>An:</b> Discussion of the development of and with GStreamer <<a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank" rel="noreferrer">gstreamer-devel@lists.freedesktop.org</a>><br><b>Cc:</b> Christian Hattenberger <<a href="mailto:christian.hattenberger@gmail.com" target="_blank" rel="noreferrer">christian.hattenberger@gmail.com</a>><br><b>Betreff:</b> Re: Why is connecting vaapi decoder to v4l2sink stuttering?<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><div><div><p class="MsoNormal" style="margin-bottom:12.0pt"><u></u> <u></u></p><div><div><p class="MsoNormal">Le sam. 5 nov. 2022, 13 h 16, Christian Hattenberger via gstreamer-devel <<a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank" rel="noreferrer">gstreamer-devel@lists.freedesktop.org</a>> a écrit :<u></u><u></u></p></div><blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm"><div><p style="margin:0cm;margin-bottom:.0001pt;font-stretch:normal"><span style="font-size:14.5pt;font-family:"UICTFontTextStyleBody",serif;color:black">When I connect a vaapi decoder to v4l2sink the result is not as expected, same happens if I use autovideosink, I know for this I have to use vaapisink and it is working as expected, but is there a solution for v4l2sink? Can someone explain me the reason, is there a solution?</span><span style="font-size:14.5pt;color:black"><u></u><u></u></span></p><p style="margin:0cm;margin-bottom:.0001pt;font-stretch:normal;min-height:24.7px"><span style="font-size:14.5pt;color:black"><u></u> <u></u></span></p><p style="margin:0cm;margin-bottom:.0001pt;font-stretch:normal"><span style="font-size:14.5pt;font-family:"UICTFontTextStyleBody",serif;color:black">gst-launch-1.0 filesrc location=/tmp/video.mp4 ! decodebin ! vaapipostproc ! video/x-raw,format=YUY2 ! v4l2sink device=/dev/video10 </span><span style="font-size:14.5pt;color:black"><u></u><u></u></span></p></div></blockquote></div></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Its experimental, and I am not sure if vaapipostproc does produce dmabuf in this case, but you can enable dmabuf-import on v4l2sink with property io-mode=dmabuf-import . By default, the frames are cpu copied from VA allocated memory into V4L2 allocated memory.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Nicolas<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div></div></div></div></blockquote></div></div></div>