Using madVR for high-quality video playback

How to get the highest-quality video playback

This article will show you how to get the high-quality video playback on your Windows PC. I will show you how to use madVR, a very popular high-quality DirectShow video renderer that uses the power of your graphics card to provide fast and very high-quality video playback.

DirectShow

DirectShow is a software component system from Microsoft. With DirectShow, a developer can create a video player that supports all video formats on the market. This is possible without having to implement all the video formats. Players can also support new video formats without doing any update to the video player software. So pretty awesome, let’s dig more into how DirectShow works.

How DirectShow works

A DirectShow filter is a piece of software packaged in a file with the .ax extension. Filters are registered in the windows registry. Video players then query the Windows registry for filters. The application can then build a filter graph to transform frames from a video into pixels on the screen.

Let us break down the simplest type of DirectShow filter in an application.

First, the application uses an input filter to read the video file. The input filter sends the data to a decoder filter. The decoder filter decodes the video stream and sends it to a render filter. The render filer puts the pixels on the screen.

The reader filters are typically installed by default in Windows. Some older decoder filters are installed with Windows and you download more yourself and install them. These type of video decoder filters are often called codecs. Then there are standard render filters installed with Windows, you can also download and install your own render filters. These custom render filters usually do different types of filtering to reduce artifacts caused by the compression in the video files.

The naïve way to build a filter graph is to let directshow automatically connect the pins. Unfortunately, this simple approach often does not work very well due to filter incompatibilities. More advanced video software has lots of code to reliably manually construct the filter graph.

High quality video rendering

madVR is a very popular high-quality DirectShow video renderer that uses the power of your graphics card to provide fast and very high-quality video output.

Key madVR Features according to their homepage:

  • MadVR does High bitdepth processing (32bit per component)
  • It has high quality algorithms for scaling, sharpening, debanding, dithering etc.
  • It does Smooth motion playback without 3:2 pulldown judder even at 60Hz
  • Using forced film mode it turns 60i movies into perfect 24p
  • It has a very reliable playback using automatic fullscreen exclusive mode

To summarize, you will get better video playback quality with madVR. The improved quality is especially evident when you play older low-quality videos. To do its magic MadVR needs several decoded video frames. Because of this, it will take a few more moments until you see the first rendered image compared to using more basic renderers. If you are after high-quality video output madVR is the way to go.

How to install MadVR

Download the madVR zip file from their homepage and unpack it. Make sure to unpack to a folder where you can keep the files. Since madVR does not come with a normal windows installer the software will be installed to where you unpack the zip file.
Go to the unpacked folder, right-click on the install.bat file and select “Run as administrator”. This will register the madVR Directshow filter (madVR.ax) in your computer’s registry so that programs can find it.

Selecting to use MadVR for high-quality video playback

The integrated video player in Fast video cataloger, https://videocataloger.com/download natively supports MadVR. However, it is but it is not selected by default.
Start Fast video cataloger, open the preferences and go to the “Video Player” tab.
From the “Video player to use” dropdown menu select “Direct + madVR”. This will tell Fast video cataloger to use special code to build a filter graph using the madVR high-quality renderer.

madvr selected for high-quality video playback

Using the madVR renderer

New recommended codec pack

To play videos in most windows program you first need to install codecs. If you are an advanced video user you can probably install what you need. However, perhaps you don’t want to waste time doing that or just don’t know how to do it?

As a developer of some video programs the number one problem I hear from my users are related to codecs. Users are asking me why some or all of their video files not working, or not working as they should. Most of these issues are related to problems with missing or badly installed codecs.

Another, easier, option to get the required codecs onto your computer is to use a codec pack. A codec pack is a packet with a number of codecs (direct show filters) that you install at the same time.

You should be aware that there are a number of bad packs that will install codecs that are incompatible and can ruin your computer. It’s also a really bad idea to get a bunch of codec packs and install them all. However, if you don’t go overboard installing a good codec pack can be a simple solution to your video playback problems.

I have for the last couple of years recommended the ffdshow direct show filter pack. The fast video cataloger installer even asks if you want to download and install that ffdshow pack as part of the installation process.

After a lot of testing I am now recommending The CCCP (Combined Community Codec Pack).

In the coming update of Fast Video Cataloger we will ask if you want to download and install this package instead. So what’s so good about it? Well first of all there are no adwares or malware installed with the pack, though you did not get that with ffdshow either. The cccp does install all the codec filters that ffdshow installed, ffdshow is actually part of the package being installed. It also installs the Haali media splitter that you need for processing videos in some formats including mp4.

All in all CCCP has worked fine on all computers I have tested it on and it’s my current recommendation for a codec pack. You can download it either from the projects homepage at http://cccp-project.net/