For those who doesn’t want to use Media Player Classic – HomeCinema to play H.264 videos using DXVA or CUDA hardware acceleration, another alternative player that can be used is KMPlayer. This post is intended to be a short guide on how you can use hardware acceleration for H.264 videos using DXVA (using MPC-HC external video decoder) and CUDA (CoreAVC 2.0). You need to use using Windows Vista/7 and have a qualifying ATI/nVidia/Intel/S3 for DXVA method, and a qualifying nVidia card for CUDA method. A list can be seen here. All nVidia cards that can do the DXVA method can also do the CUDA method.
What you need:-
- KMPlayer 2.9.4.1435 – download from here.
- Media Player Classic – HomeCinema standalone splitters & decoders (32-bit version build 1249) – download from here, OR
- CoreAVC 2.0 – available here (my affiliate link). A trial version will come in January 2010. Comes integrated with Haali Media Splitter.
Troubleshooting tools:-
- DXVA Checker - download from here. Original website.
- GPU-Z – download from here.
Test videos that you can use for acceleration tests.
- The Melancholy of Haruhi Suzumiya ED theme – Hare Hare Yukai (H.264 SD video with karaoke subtitles) – Download from here or here*.
- Elfen Lied ED theme – Be Your Girl (H.264 HD 720p video with karaoke subtitles) – Download from here or here*.
- AIR OP – Tori no Uta (H.264 HD 1080p video with karaoke subtitles) – Download from here or here*.
- Kanon OP – Last regrets (H.264 HD 1080p with soft-subtitles) – Download here.
- Planet Earth: From Pole to Pole (H.264 HD 1080p with subtitles) – Download from here or here*.
REMINDER: THIS GUIDE IS BEST USED WITH WINDOWS VISTA OR WINDOWS 7.
The tutorial is below. If you use DXVA method, follow the blue text. If you use CUDA method, use the green text. Black text are mandatory for both methods.
DXVA method/CUDA method
Step 1:-
Download Haali Media Splitter from the link above and install it using the default options. Then download KMPlayer from the link above and install it with default options. Ask.com toolbar installation is optional.
Download the MPC-HC standalone splitters/decoders from the link above, and extract the file named ‘MPCVideoDec.ax’ and put it in your C:\ drive, using software like 7-zip or WinRAR.
After that, open the Command Prompt with administrative priviledges, and type the command
regsvr32 c:\MPCVideoDec.ax
A pop-up window with the message ‘DLLRegisterServer in c:\MPCVideoDec.ax succeeded’. If the message does not appear, make sure your path to MPCVideoDec.ax is correctly typed and that the command prompt has administrative privileges.
Download and install CoreAVC 2 with default options, without Haali Media Splitter. Set it up according to the picture below.

Step 2:-
Start KMPlayer and then press the F2 button to open the Preferences window, which should look like below.

Step 3:-
Go to Filter Control —> Decoder Usage section, as shown below. Tick the option ‘Only use if it fails to play with system default‘.

Step 4:-
Go to Filter Control —> Decoder Usage —> External Video Decoder section, as shown below.

Click the External Decoder Search button, and the pop-up window below will appear.

Click the Add System Codec button, and another pop-up window will appear.

If you use DXVA method, select ‘MPC Video Decoder‘ from the list and click OK button. The result should look like below.

If you use CUDA method, select ‘CoreAVC Video Decoder‘ from the list and click OK button. The result should look like below.

Then press OK to return to the previous window.
Under H.264 Video drop down menu, select MPC Video Decoder if you want to use DXVA method.
Under H.264 Video drop down menu, select CoreAVC Video Decoder if you want to use CUDA method.

Under AVC1 Video drop down menu, select MPC Video Decoder if you want to use DXVA method.
Under AVC1 Video drop down menu, select CoreAVC Video Decoder if you want to use CUDA method.

Step 5:-
Go to Filter Control —> Custom Filter Manager which will look like below.

Click Add Registered Filter button and a pop-up window like the one below will appear.

If you use DXVA method, select MPC Video Decoder from the list and click OK button. The result should look like below.

Under Priority Settings, select the Use Forcibly option.
If you use CUDA method, selec CoreAVC Video Decoder from the list and click OK button. The result should look like below.

Under Priority Settings, select the Use Forcibly option.
Step 6:-
Go to Video Processing section which will look like below.

Leave everything at default here.
Click the Renderer tab, and from the pulldown menu, select Enhanced Video Renderer (C/A), just like below.

Step 7:-
Go to Subtitle Processing section, which will look like below.

Ensure that the Show Subtitles option is enabled. Under ‘Output Methods of Subtitles’, select the Draw to Image Itself option. Under ‘Font Rendering Method’, select Rasterizer Output.
Go to Subtitle Processing —> Multi-Sub/etc section, which will look like below.

Click the Advanced tab, and under ‘External Subtitle Module’, enable the three options highlighted in the screenshot above.

After doing everything above, click the Close button to close the Preferences window.
Step 8:-
Right click on the video area of the KMPlayer, and select the option Video (Advanced) —> SuperSpeed Mode. This is applicable for DXVA method only, for those who use CUDA method, this step is optional.

H.264 DXVA/CUDA hardware-accelerated video playback with KMPlayer
Lia – Tori no Uta DXVA acceleration.

Lia – Tori no Uta CUDA acceleration.







[...] aici: Configuring KMPlayer to play H.264 videos using Microsoft's DirectX Video Acceleration (DXVA) and nV… Mie imi merge [...]
maN., tat’z awesome.., it’z the best complete information i got.,
yu’knew i’just got DDRI(1.5GB 400 MHz), nVidia GeForce 9600 GT.., but after yu’r idea., i’am just playin 1080p with my 24″ full hd monitor like cheeZe.., added my system uses only 50% of processing…
& i’am an Microsoft developer(windows appln)., i’ve developed many useful applnz like auto shutdown, auto cd tray timer etc….
yu’ can contact me through my mail if yu’ want…
(frostisaghost@gmail.com)
thankyou later…
for h.264 the audio/video is perfectly rendering like cheeZe., but for some low Q files like avi 700mb or else the audio is not playing..,
plz post any comments to make it work….
It depends on what codec the audio use. Assuming that you use CUDA method, go back to Step 3 and select ‘Always Use (Strongly Recommended)’.
No audio ;( I’m using hd 4870 with dvxa method and have no audio at all any help appreciated
After doing the DXVA method, can you click the ‘Reset Current Preset’ button?
When it comes to kmplayer then there is a comparison written for vlc vs kmplayer!
Very good. Got it to work on my EEE Box – thanks a lot. I used the KMPlayer option with CUDA.
Big up!
I have Vista 32-bit and I don’t have ffdshow installed.
The funny thing is – I now have solved the problem. I just pressed “reset current presets” in the options menu and now I get audio output and the movies run with CUDA acceleration.
I just don’t know why this works.
Hello Ranpha!
Thank you for this tutorial! However, I have a little problem. I have configured the KMPlayer using CUDA as you described it. Now, if I play any .mkv files, I just get video but no sound.
Do you have any idea to fix this?
Thanks
@vollka
What is your OS? And did you have ffdshow Audio Decoder installed?
Neither CUDA or DXVA is available for your card. Not even in software mode ,with CoreAVC, your computer will not be able to play any HD H264 content. To handle some divX HD files is maximum you can do. The only thing you can do with that computer is tu buy an ATI HD 3450 video card(max. HD 2600 or HD 3650)with AGP slot (i guess you ‘re running an AGP system). NVIDIA AGP video cards do not support DXVA or CUDA. HD 3450 AGP is about 60$. Then you can play 720 p files using DXVA on MPC-HC or KMPlayer with good results.You can also play 1080p files encoded with decent bitrate and DXVA compatible.
i have p4 2.6, 2gb ram ddr1, vga ge force fx 5200 128 mb, can i watch hd movie 1o80p with kmplayer? what recommended setting for old computer? is is the best to use coreavc or dxva? i have try to use dvxa and coreavc but the movie still play slow, and audio is not sync. how to fixed it? thanks
I get this error code when I try to install MPC video decoder – http://i49.tinypic.com/v5yi6d.jpg Help appreciated
@Dushan
Did you use the regsvr32 command within a command prompt with administrative privileges?
Has anyone else been having the problem with KMPlayer (2.9.4.1435 or even 2.9.4.1436) in Windows 7 when the renderer is set to EVR C/A the audio continues to play, but the video stops after a few seconds? The problem occurs using MPC-HC decoder or Microsoft’s built-in Win7 decoder.
Setup: Acer Aspire 1410T (Core 2 Solo 1.4Ghz and Intel G45) currently running Win 7 Pro 32-bit with latest Intel drivers.
Sorry only CoreAvc 2 works with that profile i ve just noticed under the other tutorial
Many thanks Ranpha
Hello Ranpha..Wonderful Tutorial thanks for a tutorial like this..
I have a little problem..I would be happy if you can help me out..
My graphics adapter is Nvidia G105M..I have installed the latest drivers which is 195.62_notebook_winvista_win7_32bit_international_whql. I’m using Windows Vista and KmPlayer. I’m using CoreAvc 1.95. I have exactly followed the tutorial like using Enhanced Video Renderer C/A
The problem is that CUDA is enabled for all the x264 encoded videos, the icon turns green and cpu load is decreased but i can’t make it work for the famous Planet Earth Pole to Pole Sample Video aka AVC High profile 5.1 @ 16 ref which you have put in this site..What can you recommend me to check ?
@Arda
How much video RAM has you allocate to your G105M? Should be at least 256MB, 512MB recommended.
For precaution, put your GPU-Z and DXVA Checker results screenshots here too.
@ranpha
so you are then what sugesting me nVida card?
I work in firm which support Gainward and Sapphire ….
best regards,
@ales
nVidia is even worse in this aspect. Your only option if you want to do the setup you desire is to stick with ATI, then forsake any hope of hardware acceleration.
@ranpha
please for your sugetion what to do that I could use smal widow movie on PC and also work in office during playing movie in full screen on TV
I have get this before but if I use setings I mentioned before I get full screen picture but I would like picture as it is in source movie with litle black on top and down not full strached
please for help
@ales
Unless you use overlay mixer, you won’t be able to do mirroring. But if you use overlay mixer there will be no DXVA. There is nothing you and I can do about this.
thx for good reviev and explanation to all
im useing ATI HD4550 with CCC clone TV and Full HD Plasma under Theatre mode in CCC in theatermode to full screen /marked scale to full screen
after I use your guide picture is 100% better but now I cant get windowed movie on monitor and full screen picture on Plasma (it is good if someone work somthing on comp other look movie)
Please for help and if is possible to get the same aspect ratio on plasma like it is movie -usualy The.Hangover.UNRATED.1080p.BluRay.x264-REFiNED(with small lineas at the top and down)
@ales
You will not be able to achieve what you want to do anymore if you use DXVA. That’s probably the weakness of this method.
Ok. Thanks for all your help!
Ok thanks, I’ll try it…
Last questions (i hope):
- does coreavc also work in w7 x64?
- anyway to get subtitles together with coreavc cuda in media center 7 for my MKVs? I use SRT files.
@verhak
- Yes, it does.
- I have no idea how WMC works, especially the one in WIndows 7.