[Development] wmf backend dxva

qtnext qtnext at gmail.com
Fri Oct 5 22:04:08 CEST 2012


good ... the qml angle / dxva will be fine for low end computer :)  I hopes
it will be the same for gstreamer / Linux backend (libvaapi)

for custom : I mean that if I need to reimplement a more custom decoder
using dxva, I hopes there will be a public access to directx surface thru
angle to allow search custom dev without hacking qt..

2012/10/5 Jason Barron <jason.barron at outlook.com>

> Hi,
>
> > I have read recently that qt5 will be available thru angle/Directx and
> > there is work in progress about a wmf backend dxva. when will it be
> > available in git ?
> > Will it be possible to have a public access to directx surface to
>
> For the next beta we hope to have ANGLE properly integrated into Qt's
> 3rdparty directory and use it in the Windows binaries by default. In
> addition to this, we plan to enable DXVA throughout the WMF plugin in
> QtMultimedia.
>
> There are two video rendering code paths in the plugin currently. The
> first one renders directly to a QWidget/QWindow (HWND) using the Enhanced
> Video Renderer (EVR) from Media Foundation. I believe this should already
> be using DXVA as it accesses the DXVA video processor directly to change
> the contrast, brightness, etc.
>
> The second renderer is used for QML and is implemented as a custom media
> sink. At the moment, this does not support Direct X, but this is something
> we are working on changing. The current implementation receives the sample
> buffers as 2D buffers and does a texture upload for each frame. With ANGLE,
> we can implement this more efficiently. By using DXVA, the decoder will
> allocate the sample buffers in Direct X surfaces. Using a combination of
> EGL extensions and Direct X, we can then efficiently get this surface into
> a texture (using eglBindTexImage) without incurring the cost of an upload.
>
> I'm not sure what type of custom decoding you want to do here, but it
> sounds like you probably want a way to insert a Media Transform node into
> the underlying topology and use DXVA inside it. At the moment we don't have
> any plans of exposing the topology through public API, however, we will
> likely need to provide some form of API to enable WebKit2 video rendering
> which will need a handle to render video in a separate process. It's
> possible you'll be able to use this share handle to do what you want, but I
> don't know for sure. We haven't really started the WebKit integration yet.
>
> The ANGLE integration will likely be pushed to Gerrit next week, but it
> will probably need a few rounds of improvements to polish the qmake files.
> As for the QtMultimedia changes, I have made some changes locally, but it
> will be some weeks still before it is in any kind of usable condition.
>
>
> Regards,
> Jason
> _______________________________________________
> Development mailing list
> Development at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/development
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20121005/a39e0c9f/attachment.html>


More information about the Development mailing list