Shortlink of this post – http://wp.me/PrgSo-gQ (use this URL when linking to this page in your Facebook/forums/twitter/IRC/BBS messages)
Alternative reading: same configuration with this page using MPC-HC – click here.
TABLE OF CONTENTS
24 July 2013 – Changed the audio renderers back to PotPlayer's defaults. Changed the subtitle engine from xy-vsfilter to XySubFilter, therefore DXVA native can now be used in PotPlayer.
Also included: A detailed QuickSync headless mode setup. You do not need this if you use Windows 8 and has installed the latest drivers.
When I first wrote the KMPlayer guide available in archive mode here, it was meant to be an alternative to MPC-HC to watch fansubbed anime episodes, with soft subtitles and with GPU acceleration (general DXVA, Intel-specific and CUDA method). But after KMPlayer being sold to pandora.tv, the development has slowed down considerably. The original developer of KMPlayer then moved on, and created a new media player called PotPlayer, which will be used in this guide. Compared to KMPlayer, PotPlayer has a more rapid development cycle, with more new features being added now and then. PotPlayer used to be unusuable for watching fansubbed anime with soft-subtitles, but as of today PotPlayer is more than capable to replace MPC-HC for watching such videos.
What you can expect in this page:-
- Use madVR in all playback scenarios. No more being shackled to certain renderers like VMR9 renderless or EVR custom presenter for DXVA. No more compromise with image quality.
- Be able to use DXVA renderless method even with madVR. You cannot do that with MPC-HC. Intel, ATI and nVidia GPUs are supported. CUDA decoding method are also supported in this page of course.
- Not only that you can use DXVA with madVR, post-processing methods like deband also works here, with ffdshow raw video filter. Deinterlacing is now done on decoder level.
- If hardware-accelerated video playback isn't your thing, I will also show you how to configure PotPlayer for high-performance software decoding (for both H.264 and DivX/XviD videos) with LAV Video Decoder, which is reasonably fast and has better support for 9-bit and 10-bit H.264 videos too than ffdshow video decoder.
The main drawback for this guide is that the renderless DXVA method is usable only in Windows Vista and 7. Windows XP users are out of luck, unless you go with CUDA playback method or software decoding playback method. Another drawback of switching from MPC-HC to PotPlayer is that you have to re-learn everything. Keyboard shortcuts for common functions between these two players are completely different. In MPC-HC, the keyboard shortcut for full-screen playback is 'Alt-Enter' combo buttons, while for PotPlayer, it is simply the 'Enter' button. In MPC-HC, switching chapters can be done with the 'PgUp' and 'PgDn' buttons, while in PotPlayer, the same thing can be done with 'Shift-PgUp' or 'Shift-PgDn' combo buttons.
For software decoding methods, especially for Hi10p videos, a reasonably powerful CPU is needed. Below are some recommended CPUs for the said task.
These CPU + motherboard combinations should be enough for even the most demanding of Hi10p videos out there in TokyoTosho.
With the advent of OpenCL NNEDI3 upscalers and DirectCompute error diffusion dithering methods, plus the emergence of 4k displays, currently as of March 2014 there are no GPUs that can keep up with madVR. Not even Titan Black or R9 290x GPUs allows you to completely use all madVR's new features, especially with videos with high resolutions and/or high frame rates.
This GPU should be able to handle all the madVR scaling algorithms, including Jinc. Can also be used for hardware-accelerated video decoding (native DXVA, DXVA renderless) for H.264 8-bit, VC-1 and MPEG2. Can also bitstream HD audio tracks (Dolby TrueHD and DTS-HD MA/HR). You can get away with this card too if you want to use DirectCompute error diffusion options.
You will need this extremely expensive GPU if you ever think of using NNEDI3.
Get the low end card if you want to use all madVR features minus NNEDI3 image doubling, while you should get the Titan if you want more flexibility when using NNEDI3. Both cards can stream HD Audio tracks, and use DXVA and CUDA decoding methods.
- DirectX End-user Runtime June 2010 – Download the offline installer (recommended) or the stub installer. This is a mandatory installation. If you already have it (some games installs it for you) then there is no need to redownload it again.
- Microsoft .NET Framework 4 – Download here. You probably won't need it if you already have Windows Vista or 7. You will need it with Windows XP.
- LAV Filters Megamix – Download here (Compile time: 9 April 2014 6:36am UTC+8. Build: b02e0c470e3a. Changes: New LAV Filters build. Certain antivirus software may flag the madVR package in the installer as having viruses, whic is a false positive and should be ignored).
Contains PotPlayer 32-bit (and MPC-HC 32-bit lite), LAV Filters (32-bit version only), dtsdecoderdll.dll for decoding DTS-HD MA tracks, madVR, Reclock Audio Renderer, XySubFilter and DirectVobSub xy-vsfilter (disabled by default). doom9 thread for LAV Filters. doom9 thread for madVR, doom9 thread for XySubFilter + xy-vsfilter.
Programs for troubleshooting purposes:-
- DXVA Checker – Download here. Original website.
- GPU-Z – Shows you detailed information about your GPU. Download latest version here.
- CPU-Z – Shows you detailed information about your CPU. Download latest version here.
- Driver Sweeper – Remove remnants of ATI/nVidia drivers in your system after installation. Download it here.
- nVidia RGB Full/Limited range toggler – If you have nVidia GPU and uses HDMI output, this program allows you to make the GPU output full-range RGB without making custom resolutions. Download it here.
- H.264 SD video clip with styled karaoke subtitles [MediaInfo] – The Melancholy of Haruhi Suzumiya NCED theme (Hare Hare Yukai) – download here.
- H.264 720p video clip with styled karaoke subtitles [MediaInfo] – Clannad NCED theme (Dango Daikazoku) – download here.
- H.264 1080p video clip with styled karaoke subtitles [MediaInfo] – AIR NCOP theme (Tori no Uta) – download here.
- H.264 1080p video clip with styled karaoke subtitles [MediaInfo] – Clannad After Story NCOP theme (Toki wo Kizamu Uta) – download here.
- H.264 1080p video clip with styled subtitles [MediaInfo] – Planet Earth: From Pole to Pole – download here.
- Optional test file for testing deinterlacing capabilities: H.264 1080i video clip [MediaInfo] – History Channel – Decoding the Past: Mysteries of the Freemasons – download here.
- Optional test file for testing splitter's segment linking capabilities: 3x H.264 anamorphic 1080p video clips with styled subtitles [MediaInfo] – K-On!! episode 6 – download here.
- Optional (animation) test file to test Hi10p decoding performance: H.264 1080p 10-bit video clip (no subtitles) [MediaInfo] Sentai Filmworks' Angel Beats trailer – download here.
2-pass encode with 10000Kbps bit-rate, 16 reference frames and 8 b-frames. Visually lossless compared to the source Blu-ray, even with 50% size reduction. If you can play this file flawlessly, your system should be good enough to play 99.999% Hi10p videos that anime fansubs groups will encode in the future. Even Tenshi's encodes.
- Optional (real-life) test file to demonstrate Hi10p encoding efficiency: H.264 1080p 10-bit video clip (PGS subtitles) [MediaInfo] – Pirates of the Caribbean: At World's End blooper reel – download here.
2-pass encode with saner settings: 3072Kbps bit-rate, 3 reference frames, 3 b-frames. Differences in visual quality between the encoded file and the source Blu-ray is pretty much negligible. This clip is more than 3 times longer than the Highschool of the Dead clip above, yet the differences in size is merely only 20MB. A massive 80% file reduction has been achieved from the source file, with no 80% quality reduction, or any need to downscale to lower resolutions either.
If you have any problems downloading the files, please make a comment below.
STEP 1 – Installation Stage
STEP 2 – Choosing Your Preferred Decoding Method By Configuring LAV Video Decoder
STEP 3 – Configuring LAV Splitter Source, LAV Audio Decoder and AC3Filter (optional)
STEP 4 – madVR
If you already have Haali Media Splitter, madFLAC, madVR and LAV Filters installed, uninstall them first. If you have previous versions of LAV Filter Megamix that has Haali Media Splitter in it from here before, use the uninstaller to uninstall it too. Uninstall your version of PotPlayer too if you have them installed.
First, download and install the DirectX End-user Runtime and Microsoft .NET Framework from the links above, if you haven't installed it already.
Then, download the LAV Filters Megamix above, and install it. Make sure you do not forgot to select PotPlayer in the screen below.
Click the 'Next' button a bunch of times until you arrived at the last step of the installation process as shown in the picture below.
For first-time installation, the first option in the picture above MUST BE SELECTED. Then click the 'Finish' button to finish the installation process.
When upgrading, you do not need to select the first option in the picture above if you want to keep your previous settings. But once in a while, you should reset the settings especially if a new version of LAV Filters and/or PotPlayer has been released. Or better, uninstall your current installation first before using a newer version of the installer.
A note for everyone, if you use Windows 64-bit, you do not have to use PotPlayer 64-bit too. PotPlayer 32-bit works just fine.
PotPlayer can now be started via 'All Programs —> LAV Filters —> PotPlayer'. Using Windows 8? It should be available somewhere in the Start Screen.
It will be here where you will have to decide which decoding method from the list below that you want to use:-
- High performance software decoding mode.
- DXVA renderless decoding mode.
- CUDA decoding mode.
- Intel QuickSync decoding mode.
Go to 'Start Menu —> All Programs —> LAV Filters —> LAV Video Configuration' to bring up LAV Video Decoder property page. For Windows 8 users, the shortcut should be somewhere in the Metro Start page. LAV Video Decoder property page will appear and ready to be configured according to your preferred decoding method.
Method #1 – High performance software decoding mode.
For best results, you need a fast dual-core CPU with minimum speed of 3Ghz. A quad-core CPU should at least have 2.5Ghz of speed at least. Read the Hi10p footnote below for more information.
Method #2 – DXVA renderless decoding mode.
Can only be used in Windows Vista and 7. Works best with nVidia GPUs, and also ATI GPU series that has UVD3. ATI UVD2.x users may have to switch to EVR custom presenter. Doesn't work on Hi10p videos and other unsupported video formats, and will fall into high performance software decoding mode when such files are played.
Method #3 – CUDA decoding mode (nVidia GPUs only).
note: For PureVideo 4 and 5 users, do not use 28x.xx, 29x.xx and 300.xx drivers, else MPEG4-ASP acceleration will fail. Use 27x.xx or older drivers, or use 301.42 drivers or newer.
Doesn't work on Hi10p videos and other unsupported video formats, and will fall into high performance software decoding mode when such files are played.
Method #4 – Intel QuickSync Decoding Mode.
You need an Intel SandyBridge/IvyBridge CPU that use the LGA1155 socket and a motherboard that did not use the P67 chipset. Therefore only motherboards with the B65, H61, Q67, H67, and Z68 chipsets can be used. All Series 7 motherboard chipsets will work. Windows 7 and later is recommended. Windows Vista is discouraged (no heterogenous GPU support), and Windows XP isn't supported at all.
If you want to use QuickSync ASIC for decoding while using a discrete videocard for madVR, you will need Windows 7 or later. If you only have Windows 7, you need to enable the QuickSync headless mode by following the steps in this link. If you have Windows 8, you do not have to do so.
Always make sure that you are using the latest drivers available from Intel's website, not the ones that comes from the motherboard manufacturer' websites, or the CD. Older driver versions may cause the decoder to fail.
Method #5 – native DXVA decoding mode.
Works only in Windows Vista and later. Should only be used by owners of Intel G45 chipset, Clarkdale and Arrandale CPUs, ATI HD3xxx, HD4xxx and HD5xxx GPUs. But all other GPUs/iGPUs that can use QuickSync/CUVID/DXVA renderless decoding methods should also be able to use this mode. Doesn't work on Hi10p videos and other unsupported video formats, and will fall into high performance software decoding mode when such files are played.
Click 'Apply' button to save your settings, then click the 'OK' button to close the property page.
Go to 'Start Menu —> All Programs —> LAV Filters —> LAV Splitter Configuration' to bring up LAV Splitter property page. For Windows 8 users, the shortcut should be somewhere in the Metro Start page. 'LAV Splitter' property page will appear below.
Leave everything here exactly as shown above. You're welcome to play around with automatic audio/subtitles track selection routine though to suit your needs. Verify that everything is in order, click 'Apply' and then click 'OK' to close the property page.
Go to 'Start Menu —> All Programs —> LAV Filters —> LAV Audio Configuration' to bring up LAV Audio Decoder property page. For Windows 8 users, the shortcut should be somewhere in the Metro Start page. 'LAV Audio Decoder' property page will appear below.
Enable any audio codec you want to bitstream here. Verify that everything is in order, click 'Apply' and then click 'OK' to close the property page.
Click here to read how to configure madVR.
If you have any problems, make a comment below, with the screenshots of your DXVA Checker, GPU-Z and CPU-Z results like in the example below.
Tips on improving performance:-
- LAVFilters made available here are updated at least once every couple of days (or at least when there are commits). Try updating your installation regularly to get more performance improvements.
- Try using madVR in exclusive mode + new rendering path turned on + all three options for the new rendering path also turned on + use 16 framebuffers + all flushing options disabled.
- Don't use ffdshow raw video filter during playback (you then have to hope that the encoders do the deinterlacing and deband) so that dithering will only be done on the GPU with madVR.
- PotPlayer-specific: Don't use fancy skins like the one I made available above; those kind of skins do take resources too. Especially when that spectrum equalizer is being shown.
- When push come to shove, change your video renderer to EVR custom presenter to reduce more CPU usage.
If you can play this test video I made available above flawlessly, you should not have any problems playing any Hi10p videos that anime fansub groups may encode in the future, which is highly likely are less demanding than the referenced video.
After a few days of testing MPEG4-AVC Hi10p playback on various systems using LAV Video Decoder with the two test files I have made available above and also Coalgirls Yuru Yuri episode 4 which is in 720p, here are my findings:-
Dual-core CPUs from AMD like AMD Athlon II X2 (one clocked at 3Ghz, another at 2.8Ghz) have problems playing Hi10p 1080p videos like the two test files I have made available above. In fact, even a Phenom II X2 CPU at 3Ghz has problems with them. And so is the single Brazos E-350 laptop I tested. All of those systems I mentioned have their CPU utilization pegged at 100% and will drop frames in fast scenes in the HotD sequence.
The Yuru Yuri video doesn't pose a problem with them though. Two desktop computers with an AMD Athlon II X4 2.6Ghz and another with a Phenom II X6 2.8Ghz doesn't have any performance problems whatsoever with any of the files I used.
Recommendation, in order of preference:-
- Any quad core or higher, from either the Phenom II, Athlon II or Llano A6/A8 CPU line. Personally, I have just upgraded to an Athlon II X4 640 3Ghz CPU (no need for me to change motherboard) and it works well.
- One of those tri-core Athlon II/Phenom II/Llano A6 CPUs. Some of them can be unlocked too with the right motherboard.
- For laptop: Any of the models that has Llano quad-core parts.
- Those early Phenom quad-core CPUs available in Socket AM2 format.
- Very high-clocked dual-core CPUs, like Athlon II X2 275.
- Any Sempron CPUs.
- CPUs from the K8 family and older.
- The brand new Brazos Zacate laptop, or almost all of the current mobile parts from the Bobcat CPU family. Those processors depends heavily on GPU acceleration for high-definition video playback.
Dual-core CPUs from Intel are more tolerant with those two 1080p Hi10p files I used. The CPU usage is quite high, up until 70%-80% but I have not noticed any frame drops problems. CPU tested includes Core i3 530 (2.9Ghz), Core i3 650 (3.3Ghz) and Pentium G6950 (2.8Ghz). Seeing this, I don't even bother testing any of the Intel quad-core CPUs or the Sandy Bridge dual-core systems. I think if your motherboard has Socket 1366/1156/1155, any CPU (that doesn't have 'Celeron' in its name) that fits into it should have no problems with Hi10p videos. I think the same can also be said for Arrandale or Sandy Bridge laptops as long as the CPU clock is at least 2Ghz.
Recommendation, in order of preference:-
- Any of those Nehalem/Sandy Bridge/Ivy Bridge quad-core (or higher) CPUs.
- Any dual-core CPUs from the Nehalem/Sandy Bridge/ Ivy Bridge series.
- Core 2 Quad CPUs for Socket 775.
- Some of the last-generation processors for Socket 775 like Core 2 Duo CPUs with minimum clock speed of 2.5Ghz.
- Any CPUs from generations older than Core 2 series.
- Intel Atom.