<div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le mer. 23 oct. 2019 11 h 55, ambyjkl <<a href="mailto:ambareeshbalaji@gmail.com">ambareeshbalaji@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">Hi everyone, I have a pipeline where I want to record the screen into an h264<br>
stream using vaapi. Here is what I'm doing at the moment<br>
<br>
gst-launch-1.0 \<br>
ximagesrc use-damage=false \<br>
! queue \<br>
! videorate ! video/x-raw,framerate=2993/100 \<br>
! glupload ! glcolorconvert ! gldownload<br>
! video/x-raw,format=I420,framerate=2993/100 \<br>
! vaapih264enc \<br>
! fakesink<br>
<br>
As you can see I'm trying to utilize the gpu as much as possible. Since<br>
vaapi caps expect the video to be one of a few supported color channels, I'm<br>
having to convert color spaces. But the sad part is, on my setup, the<br>
glcolorconvert part is using more than double the CPU of everything else<br>
combined! This is because of the extra copying overhead of glupload !<br>
glcolorconvert ! gldownload, which copies into a gl buffer and back.<br>
However, this still seems to be faster than a CPU driven videoconvert in my<br>
case.</blockquote></div></div><div dir="auto"><br></div><div dir="auto">Please consider using vaapipostproc</div><div dir="auto"></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">
<br>
Since the final destination is vaapi anyway which is on the GPU, is there a<br>
way to optimize the pipeline by avoiding the gldownload and have vaapi work<br>
directly on the gl buffer? If not, is there something like vaapipostproc<br>
that would let vaapi manage the color space conversion itself *before* the<br>
encoding?<br>
<br>
Thanks :)<br>
<br>
<br>
<br>
--<br>
Sent from: <a href="http://gstreamer-devel.966125.n4.nabble.com/" rel="noreferrer noreferrer" target="_blank">http://gstreamer-devel.966125.n4.nabble.com/</a><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></blockquote></div></div></div>