gstreamer-vaapi: vaapipostproc and videomixer

Sebastian Dröge sebastian at centricular.com
Tue May 6 13:12:00 PDT 2014


On Di, 2014-05-06 at 12:57 -0700, Joe McDonald wrote:
> Sebastian Dröge-3 wrote
> > The problem here will be that videomixer only works on raw video in
> > normal memory and not on vaapi surfaces. There are some bugs around that
> > in gst-vaapi as you've already noticed, especially for making the usage
> > of vaapi surfaces completely transparent in GStreamer pipelines.
> > 
> > But apart from that you will probably still get very high CPU usage if
> > all this works as videomixer works completely in software. A better
> > solution would be to do the compositing/mixing either with vaapi
> > somehow, or by rendering everything into GL textures and then composite
> > everything together in GL (with transferring the vaapi surfaces
> > direectly into GL textures and never ever copy them to normal system
> > memory).
> > 
> > -- 
> > Sebastian Dröge, Centricular Ltd - http://www.centricular.com
> > Expertise, Straight from the Source
> 
> 
> Thanks for the feedback Sebastian.  I've also thought that using the current
> video mixer would be a bad idea for the exact reason you've stated.  My
> familiarity with using GL textures in gstreamer is quite limited though so
> if you could provide any examples of a pipeline that may do something
> similar that would be most helpful.  Even a simple test to go from
> vaapidecode into something like cluttersink (which I believe is GL based)
> would be great.  

For cluttersink, if you use latest git of everything it should work just
fine if you connect vaapidecode and cluttersink AFAIU. And then you
could use the clutter API for composition.

If you want to do it all yourself with GL, best to take a look at
libgstgl from gst-plugins-bad in 1.3, and especially the examples and
existing elements already. That gives you all the tools to get video
from GStreamer pipelines into GL textures and then use them from GL.

-- 
Sebastian Dröge, Centricular Ltd - http://www.centricular.com
Expertise, Straight from the Source
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 966 bytes
Desc: This is a digitally signed message part
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20140506/a245508a/attachment-0001.sig>


More information about the gstreamer-devel mailing list