[VDPAU] VDPAU future direction; reducing _and_ expanding its scope?
Christian König
christian.koenig at amd.com
Tue Apr 22 04:45:39 PDT 2014
Hi Aaron & Pierre-Loup,
Am 22.04.2014 01:46, schrieb Aaron Plattner:
> Hi Pierre-Loup,
>
> On 04/21/2014 03:35 PM, Pierre-Loup Griffais wrote:
>> 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, and on some hardware implementing it might not provide any
>> significant value over handing off the decoded buffer to OpenGL for
>> presentation, which is the model that VA-API happens to adopt. 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? 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.
>
> One of the advantages that VDPAU has over VA-API is that there are
> fewer stages in the pipeline that an implementation can just fail to
> implement, which means fewer fallbacks that applications have to
> implement (and test). I'd like to keep it that way if possible.
> I.e., rather than failing to support presentation, maybe libvdpau
> could just fall back to the reference OpenGL presentation layer if the
> driver back-end indicates that it doesn't support native
> presentation? Maybe combine that with a query that lets applications
> know if that's happening in case they really do want to implement
> their own fallbacks?
Agree completely on this. VDPAU is a very well designed interface for
both the application as well as the driver side to work with.
I currently don't see much need for defining a presentation queue helper
library that implements the VDPAU functionality on top of OpenGL.
On the other hand a proper define of VDPAU presentation queue over EGL
would be indeed quite useful.
Christian.
>
>> - Encoding: VA-API and OpenMAX both have encoding infrastructures;
>> would there be any value in leveraging some of the existing VDPAU
>> mechanisms in order to expose hardware encoding capabilities, in order
>> to minimize the implementation work needed? Just as VDPAU allows
>> presentation compared to more traditional bitstream decodes API, its
>> encoding sister API could potentially specify means of achieving
>> screen-scraping, like NvFBC. VDEPCAU anyone?
>
> We originally punted on encode support in order to get something
> working shipped. I don't have a preference as to whether it becomes
> part of VDPAU or exists as its own separate project.
>
>> I'm interested in hearing high-level opinions from various stakeholders
>> to convince myself whether this is worth spending any effort on. It's
>> possible the consensus is that the current situation is fine, but to me
>> it seems we're still in a little bit of a wild west. VA-API, OpenMAX,
>> nvcuvenc, nvcuvid, NvFBC, XvBA, XvMC, Xv are quite unfortunately still
>> all paths viable to target as a SW vendor depending on what your usecase
>> / HW combination is. It does seem like the full scope of all of the
>> above could be captured by a "VDEPCAU" without necessarily becoming too
>> bloated.
>>
>> Curious what your thoughts are; thanks for your time.
>> - Pierre-Loup
>
> _______________________________________________
> VDPAU mailing list
> VDPAU at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/vdpau
More information about the VDPAU
mailing list