Microsoft DirectX Video Acceleration (DirectX VA) support (1 Viewer)

Gamester17

Portal Pro
May 12, 2004
98
3
Sweden
Home Country
Sweden Sweden
I know Frodo already said that you can enable DxVA and HWMC in the register but this is a request for a more complete support for it;

Microsoft DirectX Video Acceleration (DirectX VA), both for hardware acceleration (motion compensation) and post-processing,
(simple options should be added in MediaPortal GUI settings and/or auto-detect if the video cards supported it and to what extent ):

Hope MediaPortal developer(s) can look into if this could be fully used within MediaPortal for all supported codecs and hardware?

Summery: Microsoft DirectX Video Acceleration (DXVA) allows DirectShow based software applications to accelerate video playback directly on the graphics processors (GPU). If your graphics processor supports DXVA and has built-in technology to accelerate DVD and MPEG-2 file playback, then DXVA can provide (GPU) hardware acceleration. DVXA is an application programming interface (API) and a corresponding motion compensation device driver interface (DDI) for acceleration of digital video decoding. DDIs are also provided as part of DXVA; a deinterlacing DDI for deinterlacing and frame-rate conversion of video content, and a to support ProcAmp DDI control and postprocessing of video content.

A good exampel of the benifits of using DVXA for video acceleration is that you can decode HDTV (ATSC/DTV) MPEG-2 with a PIII 733Mhz CPU, a task that would normaly require a PIII 1400Mhz CPU if the card does not support DVXA HWMC.

Other post-processing featutes achivable via DVXA (if the video adapter hardware support it):
- Hardware iDCT motion compensation and subpicture decoding
- Hardware based IDCT (Inverse Discrete Cosine Transform)
- IQ (Inverse quantization)
- Fullframe video playback of HDTV and DVD content on slow CPU's (733Mhz +)
- Independent hardware color controls for video overlay
- Hardware colorspace conversion (YUV 4:2:2 and 4:2:0)
- 5tap horizontal by 3tap vertical filtering
- 8:1 up/down scaling
- Perpixel color keying
- Multiple video windows supported for CSC and filtering
- DVD subpicture alphablended compositing
- Alpha-Blending Surface

Developer links:
- Enabling DirectX Video Acceleration in a custom player
- Windows Media Format 9.5 SDK Enabling DirectX Video Acceleration
- DVXA API/DDI Specification (Rev 1.0) (DirectX 8.1 C++ Archive)
- DirectX Video Acceleration Video Subtypes (DirectX 9.0 C++ Archive)
- IAMVideoAccelerator Operational Specification (DirectX 9.0 C++ Archive)
- Microsoft Developer information on DirectX Video Acceleration
- DirectShow DirectX Video Acceleration Video Subtypes
- Microsoft Development Network search result on DVXA
- DirectX Video Acceleration Motion Compensation Callbacks
- Calling the Deinterlace DDI from a User-Mode Component
- Per-Pixel Alpha Blending (DirectX 9.0 C++ Archive)
....AND MUCH MORE available on a Microsoft Development Network search

Exampel of above DXVA technology in use is the newly announced "nVIDIA DVD Decoder", (as almost GForce/nForce GPU's support it).
nVIDIA DirectX Video Acceleration (DXVA) support MPEG-2 acceleration for:
Inverse quantization (IQ),
Inverse discrete cosine transform (IDCT)
Motion compensation (mo comp)
Enables advanced de-interlacing
Decodes high-definition MPEG-2
http://www.nvidia.com/object/dvd_decoder.html
http://www.nvidia.com/object/decoder_faq.html

PS! nVIDIA's part in the GPU that support this is called HDVP (High Defininition Video Processor) / VPE (Video Processing Engine)
 
A

Anonymous

Guest
dxva is a codec feature, not so much a player feature. You should bug the ffdshow guys to work on a dxva implement of their generic routines, or the xvid guys (which would then allow ffdshow xvid routines to use it).

I remember back in the day when my ati aiw rage pro could playback dvd resolution mpeg2 files on a p100, simply because the rage pro did hardware motion compensation, while everyone else was complaining about how badly dvd's looked on their 300mhz systems. DXVA would be a huge step in the right direction, especially for a system that multitasks such as an htpc where it might be recording a tv stream while decoding a different one. I know most of the htpc users are using hardware mpeg2 cards, but if you haven't noticed even transferring to ide takes a good chunk of cpu. Even offloading just the post processing would result in huge speed ups.
But I digress, this is something you need to take up with the codec makers.
 

Gamester17

Portal Pro
May 12, 2004
98
3
Sweden
Home Country
Sweden Sweden
@Meat_PoPsiclez, no offence to you but I think I rather get a reply/answer from Frodo now that he's back :wink:
I don't agree with "DXVA is a codec feature" as I know it's so much more than that, at least it can be for MP 8)

PS! OFF-TOPIC; Any plans of integrating a version/derivitive of FFdshow into MediaPortal (with DXVA) :roll:
 

Frodo

Retired Team Member
  • Premium Supporter
  • April 22, 2004
    1,518
    121
    52
    The Netherlands
    Home Country
    Netherlands Netherlands
    I did some reading on DXVA, and as far as i understand it now this is the case:
    -DXVA is implement in a codec (like nvidia's DVD codec)
    -For normal playback the application doesnt need todo anything
    The codec will negotiate with the video renderer if DXVA is supported by your system and ifso will it use it
    -For streaming content DXVA is not used by default and the application has to add it manually

    Again, these are my first conclusions. This is a huge topic and I still got lot to learn & read before i can say that the above statements are true.
    Anyway, don't worry MP will have DXVA support. Either automagiclly or manually added by us. (Offcourse provided that you have a DVXA codec and your system is capable of using DXVA)

    Frodo
     

    Gamester17

    Portal Pro
    May 12, 2004
    98
    3
    Sweden
    Home Country
    Sweden Sweden
    frodo said:
    don't worry MP will have DXVA support. Either automagiclly or manually added by us
    Cool, thanks for looking into this Mr. Baggins (hihi), I'm sure you will realize its potential soon :D

    frodo said:
    provided that you have a DVXA codec and your system is capable of using DXVA
    ...back to off-topic; any chance if implementing FFdshow into the MP installation package? :wink:
    (maybe start a own derivative branch version that is designed and optimized for Media Portal)
     

    Frodo

    Retired Team Member
  • Premium Supporter
  • April 22, 2004
    1,518
    121
    52
    The Netherlands
    Home Country
    Netherlands Netherlands
    Mario64 found out that you can set some registry keys to enable DxVA for the intervideo codecs. MP has been modified to set those keys automaticly for you

    Frodo
     

    Frodo

    Retired Team Member
  • Premium Supporter
  • April 22, 2004
    1,518
    121
    52
    The Netherlands
    Home Country
    Netherlands Netherlands
    adding ffdshow, xmltv, vobsub etc etc
    will make the setup much larger which is not very nice for users
    who have a small internet bandwith connection
    We are currently looking into a way to auto-download the (latest)
    versions of these apps from the install/configuration
    So on 1st run it will ask the user whether or not to download it
    and if the user agrees it will be downloaded & installed
    frodo
     

    gds

    Portal Pro
    October 4, 2004
    53
    0
    Italy
    ok, this maybe off-topic, but I can't help being amazed time and time again by the effort and the quality you put into this project. :D
    keep up the good work and, really, really, thank you.
     

    Users who are viewing this thread

    Top Bottom