DXVA, CoreAVC - x.264 & MKV playback in Windows 7 RC
With the advent of the latest and greatest of Microsoft’s OSs – Windows 7 – come a slew of issues with the reliable playback of HD videos that we have lying around in our collections. According to specs, Windows 7 RC1 shipped with an x.264 decoder built in. However this is far from a panacea for those of us with older hardware.
I use a custom HTPC for all my playback needs with my Full HD (1080p) LCD TV. The HTPC rig, built back in 2007, does not have the latest and greatest processor, but runs Windows 7 RC1 with aplomb. I did upgrade the graphics card recently to an OC’d NVIDIA 9800GT.
With Windows Media Player 12, I have had no issues whatsoever with 720p playback. Though the Activity Monitor (or its Windows equivalent) showed a spike in CPU usage while playback, it was low enough to be ignored. However when I threw a 1080p video at the system, it would choke. I briefly considered upgrading the CPU, but thankfully decided to do some digging around.
I narrowed the culprit down to the laggy x.264 decoder included with Windows 7. The answer was simple. Update to ffdshow or CoreAVC. I chose the latter after reading that CoreAVC is better in terms of CPU usage. However, on installing the latest version (1.9.5), I for the life of me, could not get CoreAVC to load with Windows Media Player 12. Forums advised registry hacks and key deletion that seemed to work for some, but not for yours truly. I had to find another solution.
A bit of digging later, I found the superb world of DXVA! DXVA or DirectX Video Acceleration uses the hardware of the graphics card for video acceleration. It is featured natively in Media Player Classic – Home Cinema. It requires a powerful Graphics card which I am happy to say I own – the NVIDIA 9800GT. To enable DXVA in Vista or Windows 7, just select EVR Custom mode in MPC-HC options. The result? CPU usage has dipped to 3-4% for 1080p videos, compared to nearly 60-70% usage previously. I am so impressed and hooked.