Many video playback applications (e.g. VLC Player, MPC-HC, etc.) are highly configurable. For example:
- VLC Player allows you to enable: QuickSync and/or DXVA
- Freemake allows you to enable: CUDA and/or DXVA
What I am trying to understand is... what is the relationship between hardware acceleration and these technologies?
For example, can you enable DXVA to leverage GPU based hardware performance AND enable QuickSync to leverage CPU based hardware acceleration?
It is my understanding that...
- DirectX Video Accelerator (DXVA)
- This type of hardware acceleration improves video encoding/decoding performance by routing 'work' to the GPU (integrated or discrete).
- Intel QuickSync
- This type of hardware acceleration improves video encoding/decoding performance by routing 'work' to the CPU - specifically a dedicated processor die that is responsible for performing video encoding/decoding operations.
- Compute Unified Device Architecture (CUDA)
- Is a closed API developed by NVIDIA that not only gives direct access to the the GPU's virtual instruction set, but also allows for data to be retrieved from the video card so that additional processing can be performed.