HD Video Playback with Hardware H.264 Decoding
From VuzeWiki
[edit] HD Video Playback with Hardware H.264 Decoding
Most modern video cards with new GPU chips from ATI, NVIDIA (or Intel) do support hardware decoding for HD videos packed with H.264 format. ATI calls the funtionality embedded in its GPU chips UVD (available at least in HD3xxx and HD4xxx GPUs), while Nvidia has PureVideo.
H.264 (also called MPEG4) is a widely used format in HD high quality videos, and e.g. Vuze uses that format in the HD content available from vuze.com (embedded inside Matroska .mkv container format).
However, most video players (including the Vuze Embedded Media Player, most mplayer clones, Windows Media Player and VLC) do not support the hardware video decoding resources offered by the graphics processors. The main challenge with most players is that they have built-in software decoder for H.264 and prefer to use that. And software decoding requires lots of CPU power, leading to higher CPU temps and roaring fans.
I searched for solution how to enable the hardware decoding in my ATI HD4670 based video card. Finally I managed to find and configure Media Player Classic Home Cinema (MPCHC) for the task.
The results are pretty amazing. The content used in the next example is "Return to the Moon" (MPEG4 Video H264 1248x688 29.97fps) from official Vuze website.
First the video was played with Vuze Embedded Media Player and then with MPCHC. The CPU consumption decreases from "normal" 15-20% down to 2-5%, when using hardware decoding for HD video player. Naturally CPU temps keep low and there is no need to CPU cooling fans to ramp up. (I use Speedfan for fan management, so my fan speeds change according to the temps.)
I wrote this to encourage others to try to find and configure a suitable media player for themselves.
[edit] Using MPCHC in Vista for H.264 Hardware Playback with ATI HD4670
The video player, which works for me for H.264 hardware decoding is Media Player Classic Home Cinema (MPCHC), a freeware media player (from SourceForge) that offers DXVA support for H.264 hardware decoding.
I found a nice guide for configuring it: Watching h.264 videos using DirectX Video Acceleration (DXVA).
Based on advice from that article, here are the main steps in configuring the MPCHC:
- In Output options, select EVR Custom for DirectShow Video output for Vista. (With Windows XP you should select WMR7-9).
- In Internal Filters options, disable Matroska, MP4/MOV and Ogg as Source Filters, and make sure that H264/AVC(DXVA) and H264/AVC(FFmpeg) are enabled for Transform Filters.
- In External filters, you need to ensure that there are no software H.264 decoders allowed. There is possibly something from your video card manufacturer, and possibly also software codec ffdshow Video Decoder. Add them to the Filter list with the Block status. (For me it was ATI MPEG Video Decoder as I did not have ffdshow installed.)
There are also other options to take care of (e.g. regarding subtitles), but these were the main steps for me. Should you need more explanations, please read the original article with more guidance: Watching h.264 videos using DirectX Video Acceleration (DXVA)
Read the Playback Guide.






