Configuring PotPlayer for GPU-accelerated video playback with DirectX Video Acceleration (DXVA), Compute Unified Device Architecture (CUDA) or high-performance software decoding

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

Changelog

Introduction

Supported Hardware

Software Checklist

The Guide

Notes about Hi10p MPEG4-AVC 10-bit decoding.

CHANGELOG

21 September 2014 – Modified slightly the CUVID decoding method below to include the HEVC hybrid decoding method.

Also included: A detailed QuickSync headless mode setup. You do not need this if you use Windows 8 and has installed the latest drivers.

From 12 May 2014, the installer will always reset the PotPlayer settings. Existing users that want to retain their custom settings should make a back-up of their default preset by opening the ‘Preferences’ window (F5) and clicking the ‘Export Presets (S)’ button as shown below.



Introduction

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.

Supported hardware

Amazon referel links.

Updated January 2018 - With the advent of 4K UHD HDR displays, UHD discs now rippable, madVR removing NNEDI3 from image upscaling section and SPECTRE + MELTDOWN fiasco, there is only one hardware combination that you should get, which is AMD Ryzen systems with nVidia GPUs.

Recommended baseline CPU: AMD Ryzen 5 1600X Processor (YD160XBCAEWOF).

Recommended Motherboard: ASRock X370 TAICHI Socket AM4/AMD X370/DDR4/Quad CrossFireX & SLI/SATA3&USB3.1/M.2/Wi-Fi/A&GbE/ATX Motherboard.

It is really hard for you to go wrong with these two, especially when playing 4K HEVC 10-bit videos in software mode using LAV Video Decoder 64-bit. No Intel until maybe three to five years from now.

As for GPUs, it depends whether you have a 4K display or not. Now assuming that you want a 4K display right now that is capable of HDR for watching videos, I suggest that you do not bother with 4K HDR computer monitors, and go straight to a big 4K UHD TV.

Example 4K UHD TV: LG Electronics OLED55E7P 55-Inch 4K Ultra HD Smart OLED TV (2017 Model).

The TV above is 55", 4K resolution and has HDR too. The size means you do not have to change Windows scaling to have a usable desktop.

GPU recommendation (high-end - 4K HDR display or not): ZOTAC GeForce GTX 1080 Ti AMP Edition 11GB GDDR5X 352-bit PCIe 3.0 Gaming Graphics Card VR Ready(ZT-P10810D-10P).

Regardless whether you have a 4K display or not, the best nVidia GPU recommended is a GTX 1080Ti like the one above. It supports HEVC 10-bit and VP9 hardware video decoding, and does HDR passthrough really well. Can really handle NGU in madVR to as long as you don't go overboard.

GPU recommendation (low-end - 4K HDR display): ZOTAC GeForce GTX 1050 Ti OC Edition 4GB GDDR5 Super Compact Gaming Graphics Card (ZT-P10510B-10L).

GPU recommendation (low-end - non-4K display or 4K non-HDR display ): ZOTAC GeForce GTX 1060 Mini, ZT-P10600A-10L, 6GB GDDR5 Super Compact VR Ready Gaming Graphics Card.

The GPU for displays not capable of HDR (GTX 1060) is more powerful than GPU for 4K HDR displays (GTX 1050Ti) because converting HDR to SDR via pixel shader operations is a quite costly operation in term of GPUI resources. These two can handle all relevant video codecs, but if you have a 4K display, you should choose the bottom-most madVR preset in the installer.

Lastly, try and get Windows 8.1 instead of Windows 10 or Windows 7.

Software Checklist

DirectX End-user Runtime June 2010 – This is a mandatory installation . You can install this via the LAV Filter Megamix installer below (requires a working Internet connection). If you already have it (some games installs it for you) then there is no need to redownload it again. Windows 7 SP1 Platform Update – Download here. For Windows 7 users, this package needs to be installed to use DirectX 11 features in madVR. Also can be installed via Windows Update ( KB2670838 ). LAV Filters Megamix – Download the 64-bit version or 32-bit version. (Compile time: 15 September 2020 11:54pm UTC+8. Build: cac4dcd705d. Changes: New LAV Filters build. Note: Do not use the new D3D11 native decoding mode in LAV Video Decoder if you plan to play interlaced videos and/or plan to use the madVR super-low-end (DXVA scalers) preset). Contains PotPlayer (and MPC-HC + MPDN), LAV Filters, madVR, Reclock (only in 32-bit installer), AssFilterMod, XySubFilter and DirectVobSub xy-vsfilter (disabled by default). doom9 thread for LAV Filters, doom9 thread for madVR, doom9 thread for XySubFilter + xy-vsfilter, doom9 thread forAssFilterMod. 64-bit version is vastly recommended. Use the 32-bit version only if you need Reclock or have 32-bit Windows . From now on PotPlayer will only be updated between stable versions so that both installers will have the same version.

Programs for troubleshooting purposes:-

DXVA Checker – Download latest version here. 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.

Test videos:-

If you have any problems downloading the files, please make a comment below.

The Guide Itself

Jump to:-

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

Step 1 – Installation Stage

Download the LAV Filters Megamix above, and install it. Make sure you do not forgot to select PotPlayer in the screen below.

First, select ‘PotPlayer’ as the player option, then select a madVR profile that fits your preferences and GPU profile. If you enabled the ‘H.264 MVC 3D Decoder (extra download)’ option, you will need a working Internet connection to complete the installation process.

You will still need to go to madVR settings page and configure your display’s characteristics (‘devices —> ‘your-display-name-here’).

PotPlayer can now be started via ‘All Programs —> LAV Filters —> PotPlayer’. Using Windows 8? It should be available somewhere in the Start Screen.

Step 2 –Choosing Your Preferred Decoding Method By Configuring LAV Video Decoder

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.

Click here for the goodies! SelectShow> HEVC can only be supported if your GPU expose the ‘HEVC_VLD_Main’ and/or ‘HEVC_VLD_Main10’ modes in DXVA Checker. VP9 is supported is your GPU expose the ‘VP9_VLD_Profile0’ mode in DXVA Checker. This is also the mode you have to use if you want to decode 10-bit HEVC videos with nVidia GTX960 GPUs.

Method #3 – CUDA decoding mode (nVidia GPUs only).

note: Must use driver version 340.52, if your GPU is supported, if you want HEV hybrid decoding support.

Doesn’t work on H.264 Hi10p videos and other unsupported video formats, and will fall into high performance software decoding mode when such files are played. Windows 10 users should avoid this method, and instead should use the DXVA renderless method above.

Click here for the goodies! SelectShow> Configure the ‘Codecs for HW decoding’ appropriately according to the nVidia GPU you have:- nVidia PureVideo 2 – H.264 and DVD.

nVidia PureVideo 3 – H.264, VC-1, MPEG-2 and DVD.

nVidia PureVideo 4 – H.264, VC-1, MPEG-2, DVD and MPEG-4.

nVidia PureVideo 5 and 6 – H.264, VC-1, MPEG-2, DVD, MPEG-4 and HEVC. Also enable the UHD (4k) option if you have PureVideo 5 or later GPUs.

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.

Click here for the goodies! SelectShow> If you have an Ivy Bridge CPU or newer, you can also enable UHD (4K) option; you need to have the latest drivers of course. HEVC can only be supported if your GPU expose the ‘HEVC_VLD_Main’ and ‘HEVC_VLD_Main10’ modes in DXVA Checker. VP9 is supported is your GPU expose the ‘VP9_VLD_Profile0’ mode in DXVA Checker. Will decode only 8-bit HEVC videos fully in hardware, 10-bit decoding will be done in hybrid mode.

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 here for the goodies! SelectShow> HEVC can only be supported if your GPU expose the ‘HEVC_VLD_Main’ and ‘HEVC_VLD_Main10’ modes in DXVA Checker. Will only decode 8-bit HEVC clips. nVidia GTX960 GPUs users should switch to the DXVA renderless method to also be able to decode 10-bit HEVC clips. VP9 is supported is your GPU expose the ‘VP9_VLD_Profile0’ mode in DXVA Checker.

Click ‘Apply’ button to save your settings, then click the ‘OK’ button to close the property page.

Step 3 –Configuring LAV Splitter Source, LAV Audio Decoder and AC3Filter (optional)

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.

Step 4 – Configuring madVR

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.

Notes about Hi10p MPEG4-AVC 10-bit decoding.

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.

CPU commentary:-

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:-

AMD:

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.

Not recommended:-

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.

Intel:

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.

Not recommended:-

Any CPUs from generations older than Core 2 series. Intel Atom. Celerons.

Shortlink: http://wp.me/PrgSo-gQ

Share this: Facebook

Twitter

Pinterest

