High Definition (mkv) playback on ATI HDxxxx graphics cards (AGP and PCI-E)

There is a lot of confusion around the internet about ATI’s HD2xxx (except 2900), HD3xxx and HD4xxx cards and their ability to decode h.264 high definition movies in matroska containers.

These cards can really do what they promise but there are some prerequisites. First you need drivers, then a decoder and finally a player.

Now because the HD2xxx and HD3xxx cards are very popular on the AGP bus there are some things that need clearing out.

First if your card is AGP you need to use ATI’s Catalyst AGP Hotfix drivers.  You can download these from here

Now  this only installs the graphics part of the driver. However these cards have also a HD Audio codec from Realtek onboard. This requires its own driver. You can download this from here by selecting the ATI HDMI driver.

However this doesn’t necessarily mean you will get sound over HDMI. Why? Well it’s not that simple.

To begin with you need a DVI-to-HDMI dongle that supports sound. This is a whole new issue as some brands ship their cards with one that does and some don’t.

Past this obstacle you need at least WinXP SP3 or MS KB888111 for earlier MS Windows versions. You can dowload this from here

This will install a new device, the UAA MS HD Audio. However for this to actually work you need to have the onbard Realtek HD audio device properly set up and working. And this is the tricky part when it comes to AGP.

Unfortunately older motherboard chipsets with an AGP bus were not designed having in mind that some day an AGP card may require two IRQ’s to work. Because HD cards actually need one IRQ for the graphics and one for the HD Audio device not all AGP chipsets work.

Now there are two cases. Either your motherboard completely neglects the existence of the HD Audio device or it keeps trying to allocate an IRQ hogging in the process the CPU which appears constantly taxed by 30%.

Via AGP chipstes are kind enough to simply neglect the sound part. So you end up with a graphics card without sound. The UAA device on device manager will have a yellow exclamation mark saying it needs more resources, e.g. an actual audio device, only you, as far as your motherboard is concerned, don’t have one. So you leave it as it is, accept the fact you won’t be able to output sound over HDMI and that’s it. Everything else works fine.

nVidia chipsets though are worse. They hog the CPU trying to allocate an IRQ to the HD audio device. Not only you don’t get sound but also a 30% CPU hit. Now whether this is “bad design” or done on purpose so that your upgrade path doesn’t go through ATI’s AGP products (nVidia has none) is a different story.

As far as I know there is no solution to this. Some people have reported that by removing all other PCI devices and playing around in the BIOS with IRQ allocations they have managed to get both the GPU and the HD Audio device with an IRQ which sorted out everything. The CPU hog dissapeared and sound through HDMI worked fine. Now this is a hit and miss thing so try.

Now, if your motherboard fails to identitfy the HD audio device onboard the ATI card the Realtek driver will fail to find appropriate hardware and will not install. This will leave a yellow exclamation mark on the UAA device. It’s fine, it won’t cause any issues.

For PCI-E users and AGP motherboards that actually find the onboard HD audio device, once everything is installed you can choose sound output through HDMI by selecting it on your Sound Properties under Control Panel.

Remember you now have two audio devices, one on your motherboard, be it AC97 or HD, and one on the graphics card, the Realtek HD Audio device. You choose the former for normal output through your speakers, analog or spdi/f as you did before, or the latter for HDMI. Remember you need a cable, adaptor and TV set that all support sound over HDMI.

Having cleared all this you now want to enable hardware (DXVA) accelaration for matroska (mkv) files. This is very simple and you don’t need to buy software for it. Just follow this excellent guide here

There are also commercial players such as Cyberlink’s PowerDVD that use hardware acceleration, however this will not work for matroska files, even if you chose the codec for use with a different player.

Finally remember that not all matroska files are created equal. Some are encoded properly for hardware decoding and some are not, although most nowdays are.

Hope this helps.