|
原文:http://meltedplastic.net/guides/madvr/
Configuring a HTPC for the best quality video playback. (version 0.3)
For the best image quality with video you need to use madVR.
To use madVR, the bare minimum you need is:
I also strongly recommend the use of:
As such, the guide assumes that you will be using them as well.
Index:Step 1: install MPC-HC.The first thing you need to do is install MPC-HC, which is very straightforward.
Go to the MPC-HC website and download the latest x86 version with installer. (should be at the top of the list)
Install it using all the default options. That's it.
Step 2: install madVR & madFLACDownload both madVR and madFLAC. Extract them, and move the madVR and madFLAC folders to a location of your choice. I put them both inside "C:Program FilesMadshi"
Once you have done that, run the "install.bat" file inside each to register them and you're done with this step.
Step 3: install ffdshow.The options I use when installing are:
Choose the speaker configuration you intend on using when asked, and then have it load up the audio/video configuration when finished.
This audio configuration assumes that you are going to be using ReClock. If you do not plan on using ReClock, I think you can just leave it at the defaults.
Codecs. Everything here can be left at the defaults, but you want to make sure FLAC is disabled if you plan on using madFLAC, and set Uncompressed to "all supported" if you want to use the mixer or any other filters.
DirectShow control. Here, you want to add C:WindowsExplorer.exe to the exclusion list. This should avoid you having to potentially restart the computer if you upgrade ffdshow. Alternatively, you might want to set it so that ffdshow is only used in Media Player Classic Home Cinema.
Processing. Make sure all audio formats are selected. You may also wish to use noise shaping. (I have not experimented with it yet.)
This should be set to whatever speaker configuration you are using. Make sure the "normalize matrix" option is selected to avoid channel clipping when downmixing. This may drastically lower the volume output from your PC, however.
Make sure ffdshow is set to only output 32-bit floating point audio if you are using ReClock.
Now onto the video decoder setup:
Here you set up what video codecs are used with ffdshow. The ones relevant to Blu-ray are H.264/AVC, MPEG2 and VC-1. The decoders that work best on my system are
- H.264/AVC: ffmpeg-mt
- MPEG2: libavcodec
- VC-1: wmv9
As with the audio configuration, I would recommend adding explorer.exe to the exclusion list to avoid any potential problems.
Firstly, make sure the number of decoding threads is equivalent to the number of CPUs you have available. In my case, I have a Pentium Dual-Core system, so that's two threads.
If your system is fast enough, disable the two "trade quality for performance" options at the bottom.
If you want to view subtitles (note: this setup does not play back subtitles stored on the disc, you need an external .srt file) enable the option here, and set it up however you like.
I find this much easier to do when the video is actually running as you can see what your changes are doing.
Queue & Misc. Personally I have not really noticed any change with this option enabled, either positive or negative. It seems like it would be best to have the option enabled just in case though.
This is absolutely critical for madVR — the output can only be YV12, so disable all other output formats.
You are potentially going to throw away chroma resolution if you play back anything that uses more than 4:2:0, but I don't know of any video where that is the case. Certainly all commercial DVD/Blu-ray is all stored as 4:2:0
That's it for ffdshow.
Step 4: install & configure ReClock.Install ReClock—that should need no instruction. Now load up the ReClock configuration. (It should have added a "Configure ReClock icon to your desktop)
Audio Settings.
Video Settings.
Advanced settings.
Whenever you load a video in an application, ReClock will now ask if you want it to be used. With MPC-HC, tell it to always use ReClock. With other applications you will have to try it and see.
Step 5: configure MPC-HC.Load up MPC-HC and go to view → options. There is a lot you can change here, but most of it can be set to your own preferences.
Playback → Output. Set DirectShow video to madVR (will only be selectable if you have run the madVR installer) and change DirectShow Audio to ReClock audio renderer.
Disable everything here except the MPEG PS/TS/PVA source filters.
MPC-HC's audio switcher allows you to delay the audio by a set amount which can be used to correct for lip-sync errors between your PC and the display. If you do not need this (your amplifier may do it for you) I would recommend disabling the switcher.
Add all of the filters shown here, set each to "prefer" on the right, and put them in this order using the up/down buttons.
Double-click on madFLAC to change its options. You need to limit the output to 5.1 channels, as ffdshow currently cannot handle 7.1 properly.
Double-click madVR to bring up its options.
I would recommend disabling the 3dlut option unless you know what you are doing, as it puts a lot of unnecessary strain on your system otherwise.
You can then select what luma/chroma scaling algorithms are used depending on your preferences.
Step 6: playback & performance.Well that should now be everything more or less set up correctly for the best quality video playback.
This next step can only be done when you are playing back a video, so start playing a file in MPC-HC. When it is playing, firstly hit [ctrl] + [j] on the keyboard which should bring up madVR's information on the top left corner of the screen.
Here, the numbers are very bad as I'm currently taking the screenshots through VNC.
What you should be concerned with are the dropped/delayed frame numbers at the bottom. Now this is never going to be zero, as you lose some right at the beginning when loading a video. 10–20 seconds in, however, that should have stabilised and they should not change unless you seek through the video file.
There are a couple of reasons why this may be happening if it is.
Firstly, your CPU may not be powerful enough to do the video decoding. I believe that is represented by the decoder queue numbers, which should always be 16/16. If it isn't, then you may need to overclock or upgrade your CPU.
The other way to check this is to load up the Windows Task Manager and check CPU usage. It should never be hitting 100% when playing back video.
Alternatively, it may be that your graphics card isn't powerful enough for madVR, or at least your current madVR settings. I believe this is shown with the upload & render queues. This does not always have to be at 8/8 for smooth playback. As long as it is stable and not dropping (or very close to 0) playback should still be smooth.
If you suspect that it is your graphics card, the first thing I would suggest is to change the madVR's scaling options to Bilinear. This is the least taxing scaling option with adequate quality. (on-par with most stand-alone Blu-ray players)
To do that, right click the video and go to filters → madVR, then change the settings.
If that stops the dropped/delayed frame numbers increasing, you have found the problem. Unfortunately, there is a bug in madVR 0.10 which does not save these settings properly, and you will have to change them each time you open a video.
You might find that you don't necessarily need to drop down all the way to Bilinear. Different scaling algorithms are more or less taxing—Lanczos and Spline being the worst, and ones like Mitc**-Netravali and SoftCubic being less taxing.
A word of warning though, you may be able to stop frames being reported as dropped/delayed, but it does not guarantee smooth playback. With my nVidia 9400 equipped PC, I get no dropped/delayed frames using MN/SoftCubic, but the image still stutters. Only Bilinear is 100% smooth at all times.
If you still can't get smooth playback with madVR, you may then want to consider using 10-bit rendering rather than 16-bit rendering. I would only use this as a last resort, however, as the main advantage of madVR over other devices is the 16-bit rendering. If you are going to do this, I would recommend trying chroma first, then luma & chroma if that is not enough.
Disabling dithering can bring another good improvement to performance (more-so than dropping down to 10-bit in my experience) but at that point you are no better than a stand-alone player. (in fact, some standalones would arguably have superior image quality now)
Now finally, ReClock's playback settings. This of course assumes that you are outputting at some multiple of 1080p24.
Near the upper-right, you should see the refresh rate being sent to your display. This should ideally be some multiple of 24. (or very close to it)
It should also be stable. Or, at worst, really only changing ±0.001 or so.
It probably won't match up exactly to madVR's reported refresh rate, as they calculate it differently, but as long as it is stable (you may need to leave a video playing for 5–10 minutes for it to stabilise the first time) it's not a problem.
You then want to change media adaptation to 24fps and lock it if you are only going to be playing back film material. This will also force 25fps PAL content to be played back at the original 24fps. You do not need to tick the "PAL SpeedDown" box in the sound adaptation section if you are using the settings in step 4.
Version History:- 0.1 first draft.
- 0.2 images properly cropped.
- 0.3 version history and todo lists added.
ToDo:- Refinements.
- Proofreading.
- Page style/formatting.
|
|