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
- 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
- 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. - Install the LAV Filters. These are necessary for decoding video and audio. Take care while installing to deselect the LAV Splitter:
- Obtain and install the latest version of Haali’s Media Splitter
- 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 exampleC:\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
- 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:
- Under Playback, enable “Auto-load subtitles”
- Under Subtitles, make sure “Allow animation when buffering” is enabled, and “Maximum texture resolution” is set to “Desktop”:
- 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.
- 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”:
- 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
- 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
- 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.
- Install the latest ffdshow-tryouts.
- Open ffdshow’s settings dialog (Start -> All Programs -> ffdshow -> Video decoder configuration), under “DirectShow control” set the Merit to normal:
- Go back to the internal filters menu of MPC-HC and disable all of the remaining transform filters:
- Double check Step Three to make sure ffdshow doesn’t touch your H.264 video.
Enjoy Anime!
Written by nand – 31.07.2011
I just want to mention that if you want to know why Hi10P is good and you should feel good about it, check this post: http://haruhichan.com/wpblog/?p=205
Actually, for now, madshi only updates lavc when he releases a new version of madVR (and sometimes it may take several months) while lavc of ffdshow-tryout is updated regular (check SVN logs). madshi didn’t mention he’ll release a new version just for updating lavc (however, you can build latest lavc for madVR yourself, if you know how). At the moment, madVR doesn’t have any postprocessing filters like ffdshow. Also, there is nothing wrong with CCCP (codec pack), though I don’t use any codec pack and I’m a madVR user as well.
@The Weirdo
That’s fine and dandy but doesn’t change the fact that the entire ffdshow pipeline doesn’t work with 10 bit natively yet, even if you have all filters disabled, also postprocessing filters are absolutely unnecessary for the majority of Hi10P anime which will be 1080p either way – postprocessing is only useful on older shit encodes where deblocking, debanding or sharpening is really warranted. For those you can use ffdshow either way.
If you want to built libav yourself feel free to, but that’s significantly out of the scope of this guide, and for all intents and purposes, madVR’s version is still very recent.
@nand
Hey, calm down. I said that because ffdshow is not really outdated, at least its lavc. Even you don’t like ffdshow then LAV Video would be the better choice as internal decoders of madVR still have flaws now. However, it’s up to you to choose whichever decoders you like, not me. Remember?
Also, of course I didn’t intend to talk about how to build stuff. Why did you say like I would?
(Beforce, I thought Internet pirates mostly come from developing countrys like me. But now I have changed my mind. There’re many rich people who are pirates as well 😉 ).
@The Weirdo: What flaws does madVR’s internal decoder have at this point in time? Also, isn’t LAV Video Decoder still unstable as well? I’ll wait until it gets merged into the stable releases.
This is the first time I’ve commented, but I really want to thank you for this guide.
I did it out of curiosity and my files do look better with this setup. The best thing is that the subs on your Nichijou [TV] work properly using this setup, they don’t work well with the KLite pack.
I’m going to try this on my laptop (ThinkPad X120e, crappy CPU/epic GPU) and report back, since you mention it works well where performance is an issue.
@Zinfrared: Well, report back here how well it runs. MadVR does use the GPU excessively for upscaling and rendering so you should hopefully see some improvements at least on that front.
The rendering unfortunately will always be handled by the CPU with libav, but there’s at least no unnecessary step like dithering or software upscaling / colorspace conversion like you may get with ffdshow/CCCP.
@nand: My finding with CCCP have been a great disappointment. How can my laptop play minecraft at 1080p smoother then butter but stutter and glitch on 720p anime? It seems to me that CCCP just sucks, even with DXVA enabled.
I just tried this setup on my laptop, no help. I guess there’s no escaping the CPU-bound part of the job.
I’ve only been trying to watch anime on it out of curiosity anyway, I usually watch on a quad-core desktop with a Radeon HD5750 and even bloatware like K-Lite or CCCP doesn’t bog down.
I do notice a huge improvement in how madVR upscales stuff, try it with nonA’s release of Sayonara Zetsubou Sensei.
First of all thank you for the guide. Really appreciate it.
One thingy I wanted to ask is whether one can use ffdshow video post-processing on top of all of this for h264 stuff ? I really need that debanding for certain content (dark gradients etc). I remember hearing ppl using ffdshow raw with older versions of madvr but dunno the details nor how it performed …
Sorry for being a newbie.
@Das: 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.
You don’t need to deband Hi10P-encoded anime because it generally should have very little banding. One thing to note is that ffdshow’s post processing filters (debanding etc) do *not* currently support 10-bit mode, so the resulting quality will actually be /worse/ than had you simply rendered it directly.
It is not possible to use ffdshow with madVR’s internal decoder – it doesn’t expose any internal pipelines as per its philosophy (not to let anything else fuck up the video or touch it in any way), but you can use another decoder like LAV Video instead, which performs just as well.
If you have some other decoder enabled and you want to use ffdshow’s raw video filter on top of it, then just go to MPC-HC’s external filters section and add “ffdshow raw video filter”, then set it to “Prefer”.
@Das: Also consider this:
http://forum.doom9.org/showthread.php?t=157634
It includes a GPU-accelerated deband pixel shader filter. I don’t know if it supports 10 bit properly though, you’ll need to test it yourself.
Well I tried this, and I get the correct info in the OSD and it seems to work a bit bettered windowed…
When I full screen it, it’s significantly worse, for both 10bit and 8bit. Files I could play easily before lag like mad. Going to reinstall CCCP, as this is kinda useless if I can’t play it full screen.
This is probably the settings to go with, but it does take it out of your set-up. Make sure you have something decent if you wanna go with it.
@Manabi: try disabling the custom fullscreen mode in madVR settings.
I just followed this guide word for word and it seems to eat more CPU than CCCP does. Even chaging the settings to maximize the performance didn’t do much.
CGi Yuru-Yuri ep 5: with madVR 42% CPU load; CCCP: 25% CPU load; no visible difference between the two. My 2.5-years-old laptop’s fan is pretty loud – while using madVR it wasn’t too pleasant to hear it while watching. So, I’m going back to CCCP. I won’t see any difference on a 15.4″ display anyway.
i followed this guide and whenever i get to the OP/ED in a series with ordered chapters, i just get a green screen (during the OP/ED).
this does not happen when i manually skip forward. anyone know what’s causing this?
@fri: madVR does make heavy usage of the GPU’s pixel shaders so if they don’t support the operations then the load might actually be higher.
The lower load is only applicable for the actual CPU decoding, but if your setup can handle CCCP just fine then you wouldn’t see any benefits in the first place (except for the quality difference, obviously).
@shredder: Make sure you have Haali’s Media Splitter correctly set up.
hmm, it’s working fine for most series.
I only get this with this release: http://anidb.net/perl-bin/animedb.pl?show=group&gid=7458&aid=4148
and ep 13 of chihiro’s railgun 720p bluray
@shredder: Might be an incorrectly done / corrupted release. If you have problems with it / it bothers you (since you can just seek to fix it, plus the OP only really needs to be watched once), consider trying alternative splitters.
i never knew there were alternative splitters, any suggestions?
hmm, looks like i only have this problem if i use madvr
i got it working by adding ffdshow video decoder under external filters and set it to “prefer”
when i play a file madVR renderer is still under the filters tab, along with ffdshow video decoder.
is this okay?
Hmm, after I installed Madvr, i got a lot of dropped frames while CCCP do not. How come???
@shredder: Sure, if you dislike quality. Use LAV Video.
I have an AMD GPU, but it’s fine i’ll just have to get up and skip the op for now lol.
It’s just the transition to the op that screws up my video (in some cases), and whats strange is if i manually skip 1 sec ahead the video turns out just fine (files not corrupt). Now i get tenshi’s hate on ordered chapters LOL
@shredder I think the problem is something other then your GPU, it works fine for me on a Radeon HD 5750 and a Radeon HD 6310.
You can rename the OP, if it can’t find the OP file it should just skip it and you don’t have to get up.
HI there and thanks again for all the hard work your team puts into these subs ( and his guide for nubs like me ofc!)
just wondering ive followed the guide you set out to a T and everything checks out, but for some reason the audio is always screwed up.
I get back ground music fine but no japanese vocals and the english vocals when turned on are washed out and very quiet, any ideas?
Most of the searchs ive tried on the ‘net have simple been download “X” and it’ll work 🙁
@Zinfrared: little correction – you’d have to move the file to a different folder. Renaming doesn’t change its identifier, so the file would be played same as before renaming.
@fredthefro: you’re probably playing a 5.1 audio on a 2.0 hardware. Try setting the center channel’s volume higher or use normalization.
“…ridiculously outdated ffdshow-tryouts…”
Get the latest version here: http://www.xvidvideo.ru/
Problem solved
> xvidvideo.ru
> .ru
sounds legit
I did everything the guide said, however everytime I try to play a 8bit h264 file I get the “incorrect ODS” namely the h264,8bit,4:2:0->YV12,8bit,4:2:0.
I checked the output screens under 4. and 5. However these are identical to the guide.
Also when I play a 10bit h264 file is does the same thing T.T
What am I doing wrong…?
Does anyone have any suggestions on what can I do to fix this ???
That’s weird. I did this on two of my computers (exactly the same way) and it works on one of them but not on the other which is quite weird to say the least. Everything stutters when I use the madVR renderer on that one computer but as soon as I switch over to the haali one everything runs smoothly again.
@Blackcat: Go to your ffdshow settings (you have ffdshow installed somewhere) and set its DirectShow merit to something lower.
Or, if you want to never use ffdshow, just block the ffdshow video decoder.
@fredthefro: You’re trying to play back 5.1 audio on 2.0 (or 2.1) hardware. Use a mixer or you’ll lose information. Examples of how to set up one can be found here: http://haruhichan.com/wpblog/?p=263 (scroll down to the optional section)
Thanks nand, it was CoreAVc however and not ffdshow. Still created the same problem though 😛
Changed gears accordingly, however I’m quite disappointed.
Before I was able to play a 1080p file properly with the only place of lag being the OP, which could easily be fixed by turning the subtitles off during this period.
With this setup however the supposedly same ep becomes a lag-fest…
Decoding 1080p 10-bit files requires way more CPU than my old beauty can give me.
(The file(s) is question came from CGi’s bakemonogatari v2)
cheers nand, all sorted now
Now all i gotta do is figure out how to squash an extra 30 mins in the day to watch them 😛
@trainheart this way definitely uses more CPU, try the K-Lite pack if your CPU is a bottleneck.
@trainheart Had the same issue at first, but lowering the resolution of my subtitles (like at Step 2.3) from desktop to whatever option was one step lower than my desktop’s resolution solved this. Of course, Zinfrared’s option is also there if this doesnt work or you don’t want slightly lower res subtitles.
madVR is great if you never want to take screenshots.
@Dark_Sage: PrintScreen takes screenshots just fine using madVR. I screenshots all the time in madVR. I don’t see the problem.
You seem to favor MPC’s internal subtitle renderer, but could you tell me how you set it to render your subs correctly? I have no problem rendering most subs, but when there’s a positioned block (e.g. the very first sign in Bakemonogatari), MPC’s renderer doesn’t position it properly, while VSFilter works like a charm.
Sample screenshots: http://riff.imgur.com/
(I know I didn’t set the resolution to Desktop in MPC, and the image quality is shitty, but the problem is about the incorrect positioning)
@fri: Good question, I’ll try to find out how to fix that.
Note: This only appears to happen in fullscreen mode. It works fine in windowed. Do you have a 1920×1200 monitor? If so, the cause might be madVR confusing the vertical positioning when rendering in fullscreen.
It’s probably an issue with madVR and not the subtitle renderer. MPC-HC’s internal sub renderer shares the same code with DirectVobSub, except that it’s also multi-threaded.
MadVr disappears with subtitles when paused the video. How resolve this problem?
@nand:
I’m not using madVR, but it happens with every video renderer that supports internal subtitle renderer (I’ll call it ISR now), so it’s ISR’s fault. A few of my friends have had the same problem for years.
I also don’t like the fact that ISR doesn’t work well with anamorphic video, as it streches the subtitles. I know that it happens because it applies the subs after the video is resized, opposite to VSFilter, which renders the subs on unscaled video and then they both are resized (or something like that…). That’s what’s keeping me away from using ISR; I had to convince people to use VSFilter to view gg’s Kara no Kyoukai subtitles properly. Seeing how you suggested using ISR I though you had a solution for such problems.
I have a 1280×800 laptop screen, and yes, it doesn’t work the same in windowed and fullscreen mode. I noticed that the cause of this all is \clip tag (and incorrect handling of non-square pixels).
@Mephisto: MPC -> Options -> Subtitles -> set “sub pictures to buffer” to zero.
@fri: I don’t quite understand the logic behind that. The way I see things, it would be better to /first/ stretch the video and /then/ render the subtitles, no? Otherwise all of the text would appear distorted, the way they do when you upscale after rendering them..
Also, 1920×1200 here and it only appears when in fullscreen mode – not windowed.
My knowledge on this field comes from here: http://www.codecguide.com/faq_subtitles.htm#item13
I tried changing the “video frame” setting; checking “stretch to window” solved it (only for windowed mode though). Changing the output aspect ratio in settings affects the position of \clips, but other tags remain positioned correctly. I guess these two things (incorrect \clip and stretched subs on anamorphic video) are worth reporting to whoever is responsible for MPC.
@fri: Yeah, that’s probably your best bet. MPC-HC should really be capable of applying irregular transformations to its subtitles as well, which would remove the last reason for using VSfilter (anamorphic releases) – assuming the bugs with some tags are all fixed.
After some digging I saw that there are a few bug reports regarding this already. The main one ( http://sourceforge.net/apps/trac/mpc-hc/ticket/60 ) had been made 21 months ago, but no one is going to work on it (“bug accepted, patch welcome, we will not work on this”, “we do not have anyone developing the subtitle renderer”). I guess this one would fix both anamorphic subs and \clip issues, if only there was someone who would try their skills at it.
More: http://forum.doom9.org/showthread.php?t=159328
I’ll try not to spam this comment section anymore.
@fri: Fair enough.
I’d fix it myself if MPC-HC was written in a decent language, unfortunately it isn’t so I guess we’re stuck for now.
hey, i having a problem. the subs are not appearing for your 1080p release of kampfer? im using the MPC-HC + madVR, but to no avail. MPC and Haali see the “english” sub stream and selected it by default, but nothing coming up. any hints?