VASurface to OpengGL Texture and other questions

Arnaud Loonstra arnaud at sphaero.org
Wed Mar 18 05:59:30 PDT 2015


On 2015-03-18 13:42, Víctor M. Jáquez L. wrote:
> On 03/18/15 at 08:31am, Jorge Fernandez Monteagudo wrote:
>> Hi,
>>
>> I'm back to my troubles with VAAPI and OpenGL :)
>>
>> I've installed the last gstreamer/gst-plugins 1.4.5 and
>> gstreamer-vaapi-0.5.9 in my Ubuntu 14.04 workstation with vdpau 0.7 
>> and
>> NVIDIA VDPAU Driver Shared Library 331.113
>
> There has been a lot of work on gstreamer-vaapi lately.
>
> If you use gstreamer 1.5 (current master) and gstreamer-vaapi 0.5.11 
> (current
> master too), you'll have to specify EGL/GLES2 in order to use 
> glimagesink:
>
> $ GST_GL_WINDOW=x11 GST_GL_API=gles2 GST_GL_PLATFORM=egl \
>      gst-play-1.0 big_buck_bunny_1080p_h264.mov
> --videosink=glimagesink --interactive
>
> (my hardware doesn't support mpeg4)
>
> GLX/OpenGL doesn't support "zero-copy" (emphasis in the quotation 
> marks) with
> glimagesink, because the display and the GL context is not shared in
> that case
> (https://bugzilla.gnome.org/show_bug.cgi?id=745233).
>
> But, you can use clutterautovideosink since it works in the same 
> thread, so
> there's no need to handle the GL context:
>
> $ gst-play-1.0 big_buck_bunny_1080p_h264.mov 
> --videosink=clutterautovideosink
>
>
> If you use gstreamer-vaapi 0.5.11 (current master) with gstreamer 1.4 
> and
> clutter-gst3, mostly it will work with clutterautovideosink, such as 
> above.
>
> With glimagesink there are some issues with the auto-negotiation (the 
> decoder
> pushes frames without link to the next element) when using playbin, 
> but your
> crafted pipeline should work, thought "zero-copy" is not guaranteed:
>
> $ gst-launch-1.0 filesrc location=big_buck_bunny_1080p_h264.mov !
> qtdemux ! vaapidecode ! glimagesink
>
>
> vmjl

So you are saying the recent example:
http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/tests/examples/gl/sdl/sdlshare2.c

won't work when the pipeline (l336) uses vaapi elements?

Rg,

Arnaud


More information about the gstreamer-devel mailing list