[VDPAU] VDPAU future direction; reducing _and_ expanding its scope?

Rémi Denis-Courmont remi at remlab.net
Tue Apr 22 00:55:21 PDT 2014


    Hello,

Le 2014-04-22 01:35, Pierre-Loup Griffais a écrit :
> VDPAU has gained plenty of driver and application support in the past
> years and it seems to be on good track to become the de-facto
> standard. Talking with some people, IHVs and ISVs altogether, that do
> not yet support VDPAU but are considering it, two main concerns
> emerge:
>
>  - Presentation: implementing (or targeting) a VDPAU presentation
> queue is tricky,

What do you mean by that?

> and on some hardware implementing it might not
> provide any significant value over handing off the decoded buffer to
> OpenGL for presentation,

You can hand the VDPAU surfaces to OpenGL.with GL_NV_vdpau_interop:
ftp://download.nvidia.com/XFree86/vdpau/GL_NV_vdpau_interop.txt
(putting NVIDIA link as Khronos site seems dead at the moment)

> which is the model that VA-API happens to adopt.

VA-API renders surfaces to an X11 drawable with vaPutSurface(), similar 
to plain old XVideo. That works very much the same way as 
VdpPresentationQueueDisplay(), possibly with 
VdpOutputSurfaceRenderOutputSurface(), though VA lacks timestamps.

> Could VdpPresentationQueue (or a higher-level object) be
> extended to expose capabilities just like the decoder does today, and
> let the implementation convey to the client that it does not support
> presentation?

You mean VDPAU without X11, similar to VA-DRM? In my personal opinion, 
introducing a new vdp_device_create_foo() in <vdpau_foo.h> without a 
corresponding VdpPresentationQueueTargetCreateFOO() would make more 
sense that adding a new capability.

Besides, existing software would not know to check the new capability, 
and fail. Adding a new function would maintain backward compatibility.

> That, along with a reference presentation implementation
> based on OpenGL that applications can use as-is as a fallback, seems
> like it could greatly reduce friction for potential implementers.

-- 
Rémi Denis-Courmont


More information about the VDPAU mailing list