PDA

View Full Version : DirectX VA, de-interlacing and frame rate conversion.


Beastie Boy
24th October 2003, 14:49
I have been reading a little on the Microsoft site about DirectX VA and it's uses. As well as implementing hardware accelerated decoding, it has 2 other notable features such as hardware de-interlacing and frame rate conversion.

Frame rate conversion is something that has been talked about quite a lot on this forum ever since Phillips released their demo Trimension, but has thought to be too difficult to implement. Well according to Microsoft, the hard work has already been done and is simply a procedure call away in directX.
3 modes are supported (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/graphics/hh/graphics/dxvaguide_0h0n.asp) ,Frame Repeat/Drop, Linear Temporal Interpolation and Motion Vector Steered. According to the blurb, this can change the frame rate of the source to match the refresh rate of the display using frame interpolation.

De-interlacing (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/graphics/hh/graphics/dxvaguide_0bzb.asp) also has several modes available according to the capabilities of the hardware.

Here is a quote (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/directx9_c/directx/htm/aboutdirectxvideoacceleration.asp) from the Microsoft site.
DirectX VA describes an Application Programming Interface (API) and a corresponding Device Driver Interface (DDI) for hardware acceleration of digital video decoding processing, with support of alpha blending for such purposes as DVD subpicture support. It provides an interface definition focused on support of MPEG-2 "main profile" video (formally ITU-T H.262 | ISO/IEC 13818-2), but is also intended to support other key video codecs (for example, ITU-T Recommendations H.263 and H.261, and MPEG-1 and MPEG-4). DirectX VA also specifies how device drivers can implement de-interlacing and frame rate conversion operations.

Now I know nothing about media player development, but it would seem that DirectX Video Acceleration support can be built into any player. However, as I know nothing, please feel free to flame me if this is all rubbish and/or impractical.

Cheers, Beastie

Beastie Boy
24th October 2003, 16:41
Damn! This was meant to be posted in the Development forum.
Is it possible to move it please?

gabest
7th November 2003, 11:04
These features have to built into the decoder filters, and they can only access an interface to hardware acceleration when connecting to the appropriate render directly (overlay mixer, vmr7/9). To my opinion with these conditions MS made it unnecessarily too hard to utilize these features, and I'm not expecting any good unless things change drastically. (not anything more useful application of dxva than a few mpeg2 decoders which we already have)

Beastie Boy
7th November 2003, 11:11
Thanks for the reply Gabest.
I guess it's another one of those things that sound good in theory but the implementation is more trouble than it's worth.

Shame though, frame rate smoothing sounded quite good.

Cheers, Beastie.