Setup guide for MPC-HC + madVR

Note: This guide is outdated and won’t be updated anymore.
It is recommended to install the Kawaii Codec Pack which does everything automatically. Make sure to follow the directions on their page.

This method will result in significantly more image quality and performance than using CCCP (or anything ffdshow-based, really), so if you’re struggling to play back Hi10P anime, or even regular 1080p, consider trying this. MadVR is updated constantly and uses a very new version of libav for decoding, giving it much more speed than the ridiculously outdated ffdshow-tryouts project, as well as the even more ridiculously CCCP codec pack that is based on it.

Step Zero: Prerequisites

  1. Uninstall ALL instances of MPC-HC, CCCP, ffdshow, madVR, Haali, K-lite, CoreAVC etc. you might have on your system.
    This is a clean guide that requires no other prerequisites to function, and ideally should have none installed either.

Step One: Downloading and Installation

  1. Download and install the latest version of MPC-HC (you want the .exe version for an installer)
    Note: Get the 32-bit version ONLY! The 64-bit version is incompatible with madVR and will not function at all.
  2. Install the LAV Filters. These are necessary for decoding video and audio. Take care while installing to deselect the LAV Splitter:
  3. Obtain and install the latest version of Haali’s Media Splitter
  4. Note: You can skip this step if your PC isn’t very powerful!
    Download the latest version of madVR and extract it anywhere you like. Run install.bat inside the folder. DO NOT DELETE THE FOLDER AFTERWARDS, madVR lives inside it and does not copy itself anywhere else. Move it somewhere sensible before installing, for example C:\Program Files\madVR.
    Note: Make sure you’re logged in as an Administrator when running this! Do not right click and “run as admin”, log in as admin and run it normally!

Step Two: Configuration

  1. Open up MPC-HC’s options menu. Under “Internal Filters”, disable everything. You can leave some of the ones on the left active, but make sure you’ve disabled all of the ones not selected here:
  2. Under Playback, enable “Auto-load subtitles”
  3. Under Subtitles, make sure “Allow animation when buffering” is enabled, and “Maximum texture resolution” is set to “Desktop”:
  4. Under Output, choose “madVR” as renderer.
    Note: If you skipped madVR, or you’re experiencing lagging, frame drops or poor performance in general, set this to “EVR Custom Pres.”, “Haali Renderer” or “VMR-9 (renderless)” instead – try them in that order until you find one that works.
  5. Make sure the LAV Video is selected as default decoder. If in doubt, go to external filters, choose “Add Filter”, select LAV Video Decoder and switch it to “Prefer”:
  6. After making the above changes, restart MPC-HC and play back any file. You should notice the madVR icon in the system tray. Right click this to access the settings:

    Once inside, disable the “fullscreen exclusive mode” under Rendering -> General Settings. I recommend leaving this off unless you are having playback problems, because it prevents you from taking screenshots and makes the transition to fullscreen very ugly (It also messes up MPC-HC’s interface):

Step Three: Confirmation

  1. Play back a Hi10P file and use Ctrl+J to enter the OSD: (If it doesn’t show up or looks completely different, doublecheck output configuration)
    Correct
    Incorrect
  2. Finally, check the “Filters” list (in the right click menu of MPC-HC during playback) and confirm that LAV Video is being used:

Bonus: Adding ffdshow (Optional)

Adding ffdshow will allow you to use its audio decoder (for filters + a more customizable mixer), as well as using it for formats other than AVC1 (H.264), VC1 and MPEG-2. Especially for older 480p and worse content (which isn’t likely to be encoded in AVC1), you can use the ffdshow deblocking or debanding filters to attempt to improve image quality this way.

  1. Install the latest ffdshow-tryouts.
  2. Open ffdshow’s settings dialog (Start -> All Programs -> ffdshow -> Video decoder configuration), under “DirectShow control” set the Merit to normal:
  3. Go back to the internal filters menu of MPC-HC and disable all of the remaining transform filters:
  4. Double check Step Three to make sure ffdshow doesn’t touch your H.264 video.

Enjoy Anime!

Written by nand – 31.07.2011

250 Responses to Setup guide for MPC-HC + madVR

  1. Goshtic writes:

    For those having performance issues with the above setup, omit part of step 3.

    “3.Under Subtitles, make sure “Allow animation when buffering” is enabled, and “Maximum texture resolution” is set to “Desktop”:”

    Don’t check the “Allow animation when buffering” part. It only applies to those that have a powerful enough CPU to render subtitling FX and it consumes a lot of CPU power, even when there is no simple/fancy karaoke fx presented in the sub. Not enabling will just stop rendering subtitle animation in real-time, if any were present.

  2. craggy writes:

    What about the current new CCCP?
    Is it alright to use for 10bit?

  3. Goshtic writes:

    Yes, but MPC-HC + madVR combo is actually superior than CCCP.

    I was on CCCP+CoreAVC 3.01 setup for a while, but decided to to see what’s all the fuss is about with madVR and I can see that quality is better as well as the performance.

    There’s also one more step in the guide that was not mention, but helped boosted performance for me and it might help others.

    In the madVR settings, go to the “processing” tab, then the “decoding” tab. By default, “decode MPEG2” and “decode h264” is checked. Uncheck both of them. Click “ok” and restart your video.

  4. Saya writes:

    I’ve been having this for a week and then one day, when I opened Castle in the Sky, there were no audio. I had no idea what happened but I checked the filters and DivX H.264 Decoder was being used instead of LAV Audio Encoder and LAV Video Encoder. I went to the Options and clicked External Filters and both of the LAV Encoders were checked… any advice? Do I just have to uninstall the DivX Encoder.

  5. Makross writes:

    @Saya Is the “Audio Renderer” set to “System Default” in the Output Settings?

  6. Makross writes:

    I’ve double checked the output settings, and still getting the incorrect OSD (Almost the same)

  7. rogue writes:

    “nand said:

    ffdshow exposes a raw video filter that you can use with any decoder filter, and ffdshow itself can also decode h264 directly if your machine can handle it.”

    My computer can handle it no problem, how do I set up ffdshow so that it decodes h264 directly?

  8. aurabolt writes:

    For those concerned about performance, may I recommend this?

    It’s a godsend if your machine barely decodes a (raw) video, and hardly has CPU remaining for subtitle rendering.

  9. MIchael writes:

    how do i get the old fullscreen back ? right now i get just i small seek bar no volume or buttons

  10. alpaca writes:

    @MIchael: See section 6 of Step Two of the setup guide.

  11. zzz writes:

    Why didn’t I find this guide early? I can hardly play your 1080p files with my 4 year old pc, but now I am enjoying them quite smoothly, much better than before. Thanks a lot. 🙂

  12. Aryev writes:

    I can play it with my Admin account (since I installed in Admin account), but the it’s blank in another account (the audio still play though) Any idea?

  13. pgl writes:

    Any idea how to get 5.1 Flac tracks to play over spdif to a receiver and not have it downcovert it to stereo with the LAV Audio Filter? I followed the guide exactly and couldn’t get it to work. Is 5.1 Flac just not supported yet with the LAV Audio Filter? Dolby and DTS works fine though. I reinstalled and reconfigured ac3filter and it worked fine again.

  14. Alin writes:

    Hello,
    First I want to thank you for this tutorial.
    Second, After I installed ffdshow, the player is using ffdshow Audio Decoder instead of LAV Audio Decoder. Is this normal and ok or not?
    And if not, what can I do ? Should I do the same thing like on step 5 ? To set “Prefer” in External Filters for Lav Audio Decoder?

  15. sijmister writes:

    Hey, I have a crap CPU (Pentium 4 from either late 2003 or early 2004) , and just got a great GT 440 on sale. I have been using K-Lite codec pack with DVXA enabled, and I can actually watch 1080p videos with no stuttering or slowdowns now.

    From what I can gather, MadVR doesn’t make use of the awesomeness that is CUDA. Does using the LAV filters enable GPU rendering for MadVR (not a video encoding buff, so excuse me if I mixed up what each thing does), or should I stick with K-Lite until I can get my hands on a better CPU? I don’t want to go through the trouble of uninstalling my current setup and configuring a new one just to discover my GPU doesn’t help with the load at all…

  16. Drebin writes:

    I would just like to say thank you for this tutorial. I can now truly enjoy HD anime with your help 🙂

  17. craggy writes:

    Everything is working great for me, except a lot of soft typesetting won’t appear on the videos. Subtitles and everything are fine. I just can’t see things like text in the background.
    anyone know why this may be the case?

  18. craggy writes:

    I played around and it seems that I can’t view some typesettings when I maximize or full screen mphc.

  19. andrew writes:

    Great guide !

    If we disable this “fullscreen exclusive mode” option , will it result in in lower image quality or it doesn’t affect the quality ?

  20. hang writes:

    Why the choice of Haali splitter over LAV splitter? I am talking about the latest version of LAV splitter, .42.

  21. Goshtic writes:

    LAV Splitter v0.42 still doesn’t support segment linking yet, so playing series releases that have OP/ED as seperate video files won’t playback in each of the episodes.

    Also to others following this guide, the guide is directly linked to the old ver-0.36 video/audio filters. You can grab the latest version at

    I believe the latest version with be ver-0.43 soon, according to the changelog, but it seem a download for it isn’t avaliable yet.

  22. andrew writes:

    Why are the LAV filters needed ? What is the difference in using only madvr as output without following the rest of the guide?

    Just wondering , the picture quality will be the same if i don’t use the lav filters and just install and use madvr?

  23. cwjking writes:

    Well, 1st off, great article…

    As I write this I have been trying to watch a few good Christmas flicks with the family and mostly BlueRay 1080p rips.. Earlier today I ran into some decoding issues with the New Macross Frontier Movie that came our recently so I actually uninstalled my MPC HC 64-bit and followed these instructions and it worked like a charm. It was a CoalGirls edition of course 🙂

    BUT… When I played any of my other files that were 1080p they skipped or were choppy I guess you could say. I did many things – tweaked MADrv, Haali, turned off external filters (LAV)… In fact I wanted to just re-download MPC 64-bit just so I could play them again (yes play them again because I could before)… Finally though I fixed the issue… defaulting to the MPC-HC Matroska Codec worked beautifully. Yes, I checked marked MKV under Internal Filters > source Filters > check marked Matroska and my issues when away.

    The real problem happened in full screen and NO it isn’t a resource problem (Quad Core AMD BE OC’ed 3.8ghz with 8GB Ram and 512MB dedicated Video Card)
    I did try MANY tweaks with MADRV with full screen exclusive as well.. anyways if anyone has this problem here is a fix..

  24. Echo writes:

    Thanks for this, I was getting annoyed trying to search for a solution to getting subs to show up on 10bit encodes using CCCP, even the updated pack….but I followed this guide and there were no hassles.

  25. Mac writes:

    So I just installed CCCP MPC-HC player ONLY, latest LAV and MadVR and followed all the steps.
    Now videos dont even play, just stuck picture and sound. Help?

  26. New writes:

    So whenever I try to play video now I get no video. The player sizes accordingly, the audio starts and the timer starts going, but i get no video. This happens no matter what video I play and i can’t bring up the OSD. I’ve tried uninstalling and reinstalling everything but it always goes the same.

  27. New writes:

    Fixed it

  28. Kuchiyose writes:

    I have a problem that occurs randomly where my video would still keep playing yet if I click anywhere on the video I would get the not responding window. The video would play fine if I didn’t click on anything or if I just quickly exit it and start it again. My computer is definitely powerful enough so I’m just wondering if anyone else has this problem or maybe it is just a specific problem with my installation or OS or something.

  29. anoncj2 writes:

    I have an HP Mini 311 (an Intel Atom-based netbook with nVidia ION running Windows 7 32-bit; one of the slowest snails on the block). In the past, I’ve always ran with CCCP and it did the job. All the other bluray-ripped videos have no problems with CCCP, but these bluray-ripped anime have been giving me a lot of headaches. I have no idea why they want to be different and make it near impossible to playback these videos unless you’re running on a midrange PC. Playback of these coalgirl videos on consumer devices such as Boxee Box, Roku, and WDTV are impossible. You need a full-fledged PC or laptop connected to your TV or you can sit in front of a monitor or laptop to play these videos. Dare to be different and push the latest hottest codecs or dare to be dumb and alienate the ability to view these videos unless they jump thru all these hoops? That’s what I loved about CCCP, install-and-go with minimal configuration steps.

    I tried all the steps above and while playback via the LAV filters performed much better than the DirectVobSub filter, I still get the occasional choppiness, especially with MadVR enabled. And playback of my other videos also resulted in higher CPU usage than normal. It could possibly be that my PC is too slow and/or these version 0.x filters and tools are still not ready for prime-time and/or I did something wrong during configuration.

    I did find a combination that worked best for me: Installed latest 11-11-11 CCCP without installing the LAV filters 0.39 that came with it. Installed the latest LAV Filters 0.43. Then I used MPC to open up a coalgirl video and did the following:

    Hit ‘o”, select External Filters, deselect DirectVobSub, click Add Filter, and add LAV Video Decoder, click OK.
    Hit ‘o’, select Playback->Output, Under Directshow Video select “Haali Renderer”, click “OK”. “EVR Custom” is too choppy for me. “EVR” is smoother, but no subs. “Haali Renderer” gave me the best of both worlds.
    Close MPC and reopen MPC and open up the same coalgirl video.
    Hit the stop icon to stop the video playback.
    Right-click on the video and select Filters->LAV Video decoder
    In the Video Settings tab on the right side, there is a “Hardware Acceleration” group. Select a Hardware Decoder other than “None”. For me, I had the option “CUVID” which uses nVidia CUDA. Click “OK”.
    Close MPC and reopen MPC and open up the same coalgirl video and watch video.

    With these settings, I still had high CPU usage for Coalgirl videos, but with much less stuttering than the vanilla CCCP and DirectVobSub. The other videos still worked for me with low CPU usage. One odd thing is that with the Haali renderer enabled, it makes many of my non-anime Bluray 1080p rips come up half-size when opened by MPC. i.e. 1920×1080 videos come out as 960×540. However, when you go full-screen, you can see that the video is truly 1920×1080 and not some half-resolution video, a small bug I can live with.

    Either way, those LAV filters made a big difference in terms of removing the stuttering and syncing problems (plus the extra tweaks: LAV’s HW acceleration and Haali renderer). The MadVR renderer made things worse for me. I probably need something better than an Atom CPU and/or nVidia ION to take advantage of it or maybe until MadVR supports DXVA.

  30. friend writes:

    @pgl spdif doesn’t support 5.1 uncompressed channels, which is what LAV audio decoder will give you as an output. Spidf will only support 2 uncompressed channels, hence that’s what you’re getting. The reason 5.1 audio is working through ac3filter for you is most likely that it is encoding the stream into AC3 for your receiver to decode, which spidf supports (since AC3 is compressed). To get true uncompressed 5.1 audio to your receiver, you will need to use HDMI, which has more bandwidth than spdif.

  31. bonecrusher writes:

    Taking screencaps is such a fundamental part of watching many, many video files. I don’t understand why anyone on an anime subbing site would support or endorse a setup where mpc is not allowed to take screencaps. And no, pressing “PRINTSCREEN” is neither a valid nor acceptable alternative.

  32. Name writes:

    @bonecrusher
    First, MPC is allowed to take screenshot.
    Second, Print Screen; Seriously?
    Third, Alt-I.

  33. bonecrusher writes:

    First, I know MPC can take screenshots. It’s this setup that doesn’t allow for MPC to do so. I’ve searched a few places through google as well as this entire guide, and all the comments on this guide. All sources tell me madVR does not allow screencap taking. I get the error getDIB failed hr = 80004005 whenever I try to take them.

  34. anmisto writes:

    OK here’s a question what if you want to use vlc instead of MPC-HC how do you do that(personal preference)????

  35. anmisto writes:

    Whoops Ignore my previous comment which was on my stupidity

    well my next and sensible question is ; In mine for the filters i do not see any LAV AUDIO/VIDEO DECODER?? ANy HELP on this one

  36. Name writes:

    @bonecrusher, what method are you using?
    @anmisto , first, install LAV audio/ video decoder [Main Step 1: Part 2 (See Above)]; Next, open MPC, hit ‘O’ (Short cut for options.); navigate to ‘External Filters’; click add ‘Add Filter’; locate ‘LAV Video Decoder’ click on it, hit ‘OK’ ; then click add ‘Add Filter’; locate ‘LAV Audio Decoder’ click on it, hit ‘OK’; finally, on the ‘External Filters’ Main Menu set ‘LAV Video Decoder’ and ‘LAV Audio Decoder’ to ‘Prefer’.

  37. Name writes:

    @bonecrusher, my bad
    “- media player screenshot functionality not supported yet”
    http://forum.doom9.org/showthread.php?t=146228
    I did not notice because when I take screenshots it is usually off a mounted iso, in which case I use the built in ‘EVR Custom Pres.’ with the resizer set to Bicubic A=-.60(PS 2.0).

  38. anmisto writes:

    @name Thanks for the reply, All I can say is that LAV Audio/Video Decoders are running. But Oh! well atleast the video plays nicely.

  39. miracles writes:

    Note:Make sure you’re logged in as an Administrator when running this! Do not right click and “run as admin”, log in as admin and run it normally!

    If I can not extract LAV filters and madvr in C: program files, and I have to install LAV filter by right click run as administrator but madvr can be installed with double click (not right click run as administrator).

    Do I have logged an administrator?

    Please advice, because I think my specs can use MPC-HC + madvr why do I get frame drop, frame delay and strangely with my 8bit file through the same thing not only 10bit.

    this is my spec
    Intel core 2 duo E7500 2.93ghz,2gbx2 ram ddr2,geforce 9500gt 1gb,1tb HDD wdc black caviar,my OS win7 ultimate 64bit

  40. Name writes:

    @miracles , the second part of the note says “log in as admin and run it normally!”

  41. blub writes:

    That’s the same exact guide I found on haruhichan.com. Are you guys somehow related?

  42. dokudokugwo writes:

    Thanks for guide it worked perfectly!

  43. iza writes:

    MPC wouldn’t give me the option to select any of EVR’s renderers. How to enable it? >.>;

  44. Shazay writes:

    Haali link doesn’t work is there anywhere else I could download the newest version?

  45. miracles writes:

    I’ve logged in as administrator but it still remains the same.

    Reached 90-100% CPU usage and dropped frames, I’m tired already tried everything.

    I think the last way is to buy a new cpu with a higher spec than my old cpu.

  46. miracles writes:

    why i can’t set my ffdshow video decoder filter to normal.

    It’s always set to default if i close the setting and open again.

  47. Markus writes:

    I followed the guide, cept for getting the latest version of LAV (o.44 atm).
    everything work great, no preformance issues at all.
    but In your own 10 bit version of Macross Frontier some karaoke is appearing and disappearing, taking the subs with them.
    exsample: Episode 25, starting from 20.30
    anybody got any clue as to what i did wrong/ the guide and all its settings and checks work out. maybe something changed in a new version of any of the files downloaded?

  48. saf85 writes:

    Hi guys thanks for article, is exact same one as haruhi chan though so one of you are copy the other lol (or you are one and the same?).

    My issue is one I posted on haruhichan, I get the audio outputting at 5.1/6 on my desktop pc two speaker setup. Have tried in audio setting to put custom channel mapping down to 2 sources, this does not work and when I restart the video it is automatically back to 5.1/6 channel output.

    I would love for some 0ne to post a work around as this is very annoying for anythign that is in 5.1 or above, can barely hear the voices in movies and the background sounds such as music are played at 10x the speach volume, if I try putting up speakers to hear voice I get shocked when backgorund channel audio is played at 10x the voulume…

  49. saf85 writes:

    Ok you can disregard the above question and I have found a soultion it seems by messing round with settings.
    In the LAV audio setings, I noticed it did not have 32 bit floating point option enabled in the output formats,but every other setting was selected in that section, decided to try that and upon restarting mpc it shows as playing the video in 2.0 in custom channel mapping setting without me having to manucla try to put it to 2.0.

    So yeah hell of weird ass bug and no one mentioned it in the tutorial. Hope this helps anyone with similar issue.