MPC-HC Video Decoder Comparison

From wiki.mikejung.biz
Jump to: navigation, search

MadVR Main Page 720p Chroma Upscaling Screens PotPlayer DSR 720p Image Doubling madVR Dithering Chroma Upscaling Benchmarks Nvidia Noise Reduction
PotPlayer Main Page 1080p Chroma Upscaling Screens PotPlayer Decoder Comparison 720p Image Upscaling Processing Options NNEDI3 Main Page Nvidia Edge Enhancement

MPC-HC Video Decoder Overview

MPC-HC offers a few different options for video decoders. DXVA2 and CUVID are the two decoders I am going to test out on this page. The goal is to figure out what video decoder offers the "best" video quality. I fired up the latest version of MPC-HC to ensure that I was using the default settings. I then played a 1080p video and used MPC-HC's screenshot function to capture the exact same frame using DXVA and CUVID. You can take screenshots with MPC-HC by using the ALT + i hotkey.

To change the default MPC-HC video decoder, go to the Options menu, then click on Internal Filters on the left hand side, then click on Video Decoder. Once you have reached the video decoder options page all you need to do is click on the dropdown box under Hardware Acceleration and select CUVID if you use a Nvidia GPU, or DXVA if you are not sure what to pick.

MPC-HC how to set CUVID CUDA DXVA decoder.jpg

If you are using a Nvidia GPU, make sure that you are also enabling Noise Reduction and Edge Enhancement in the Nvidia Control Panel, you can find the settings under the Video Section. Visit the pages above for more information on how to configure these settings, and for a comparison between 0% and 100% slider levels.

DXVA2 and CUVID: 1080p .mp4 video

MPC-HC Totally Default Settings (DXVA Native)

This is what a 1920x800 MP4 video looks like using MPC-HC (Media Player Classic Home Cinema) with totally default settings. By default the DXVA(native) decoder is selected. I am not using MadVR to render video in this screenshot, MPC-HC is set to use system default. Nvidia CUVID is not enabled in the mpc-hc settings area. The video here looks ok, but you will notice that as soon as cuvid is enabled with media player classic, the video quality increases significantly.

Mpc-hc DXVA(native) default renderer(nomadvr) 1080p mp4.jpg

MPC-HC using CUVID Video Decoder

This screenshot was taken with MPC-HC default renderer settings, the only thing that I changed was the Video Decoder, which I changed to Nvidia's CUVID since I have a GTX 970. Notice that the video quality seems to be improved quite a bit. CUVID used the CUDA API to decode video in a way that is much more efficient than using your CPU. As you can see here, if you compare DXVA2 versus CUVID, there's no question that cuvid outperforms dxva when it comes to quality and performance.

Mpc-hc CUVID default renderer(nomadvr) 1080p mp4.jpg

MPC-HC using NO Video Decoder

I took another screenshot using the "none" option for the video decoder, just to see what would happen. If you have hardware that supports DXVA then selecting "none" will still use DXVA. The screenshots look the exact same so in terms of quality none is the same as DXVA. I tried to upload the image but MediaWiki says the files are the exact same, even though the two screenshots are different files, so if you own a Nvidia GPU your options for the MPC-HC video decoder are CUVID or DXVA. Personally I think using CUVID is the way to go here.

DXVA2 and CUVID: 720p .mkv video

MPC-HC Totally Default Settings (DXVA Native)

This is what a 1280x534 mkv video looks like using MPC-HC (Media Player Classic Home Cinema) with the default video renderer and video decoder. By default MPC-HC uses the DXVA(native) decoder if it detects hardware that supports it. I am not using madVR to render video in this screenshot, MPC-HC is set to use system default.

Mpc-hc DXVA(native) default renderer(nomadvr) 720p mkv.jpg

MPC-HC using CUVID Video Decoder

I changed the MPC-HC Video Decoder from DXVA (native) to CUVID since I have a GTX 970. Notice that the video quality seems to be improved quite a bit, similar to the 1080p screenshots above, the video looks significantly clearer when using the NVIDIA CUVID video decoder. This seems to be true with 1080p video, 720p video, and for .mkv and .mp4 files.

Mpc-hc CUVID default renderer(nomadvr) 720p mkv.jpg

If you are wondering if you should use CUVID vs. DXVA2 with your media player, I suggest using CUVID if you have a Nvidia GPU that supports it. You should use CUVID whenever possible, and only use DXVA2 if you use an AMD GPU, or have an older nvidia GPU that does not support CUVID.

Other Pages of Interest

MadVR Main Page 720p Chroma Upscaling Screens PotPlayer DSR 720p Image Doubling madVR Dithering Chroma Upscaling Benchmarks Nvidia Noise Reduction
PotPlayer Main Page 1080p Chroma Upscaling Screens PotPlayer Decoder Comparison 720p Image Upscaling Processing Options NNEDI3 Main Page Nvidia Edge Enhancement


.