Installing Ffdshow Software

AntiPack
was intended as a starting point in that it only includes high quality
hardware accelerated codecs for the most popular A/V formats, but does
not support everything.  If you need more, ffdshow should be next on
your list.  It provides the most full featured software video and audio
decoder of any OSS or free DirectShow filter; because of this when
installed and configured properly it is an excellent complement to what
we started earlier.  For me, the most important feature that ffdshow
provides that isn’t found anywhere else is DTS-MA support.  While only
core (i.e. DTS) is supported because the underlying libdts/libca does
not yet support full MA, ffdshow will connect to splitters that present
the proper DTS-MA media type (like the beta SageTV demuxer) without
needing to transcode or recontainer the content prior to playback.

I don’t generally recommend ffdshow to those just looking "to make it
work" because it requires some tweaking beyond installation to ensure
good behavior.  Today we’re going to walk through how to install it,
and the basic configuration to make sure that it works they way you
want.  Keep in mind this is just an installation guide, ffdshow has
many capabilities that are beyond the scope of this article.

This walk-through is based on the latest stable build of ffdshow tryouts (Beta 6), but there are much newer unofficial builds available; either way the installation process should be pretty much the same.

I almost left out screen shots of the less interesting dialogs in the
install to make this shorter, but opted to include everything for
completeness. 

Choose a language.

Ffdshow

Click "Next"

Ffdshow

Choose an install location and click "Next".  If you change it make sure you remember the folder, you’ll need it later.

Ffdshow

VFW, or Video for Windows, is a media framework that predates DirectShow and
as far as I know the only current use is for transcoding.  The other
options are all more advanced features beyond the scope of this guide. 
If you plan to use ffdshow for transcoding leave the box checked,
otherwise uncheck the box and select "Next".

Ffdshow

Click "Next

Ffdshow

Here’s where the install gets interesting.  This page is where we have the
option to choose which codecs ffdshow will support. Don’t worry, it’s
easy to reconfigure if you change your mind later.  Click the "Decode
the following video formats with ffdshow" checkbox twice to clear all
the selected video codecs, then walk through the list and specifically
opt in on the codecs you want it to handle.  I use a combination of the
modified MPC-HC video decoder in AntiPack and some professional filters
for most of my video needs, so there isn’t much here for me to select.

Ffdshow Codecs

You may need some of the more obscure codecs on the second page like MJPEG
or CamStudio though.  If you’d prefer to select everything and use
merit to control ffdshow that’s also a viable approach, we will cover
setting ffdshow’s merit in a bit.

Ffdshow Audio and Video Codecs

I use the same opt in approach for audio as video, so click "Decode the
following audio formats with ffdshow" twice to clear all the selections.

Ffdshow Video Decoder

While I’m not a big fan of the ffdshow video decoder (you probably guessed
that already :)); the audio decoder is quite useful not only because it
works, but also because it handles audio stream switching very well. 
Because of this I enable most of the audio formats even though in some
cases another filter (like AC3Filter) is my preferred filter for that
type.  Note that DTS-MA is not on this list (or the audio decoder
configuration dialog we’ll look at later) if you want to decode DTS-MA
core you must enalbe DTS.  Also note that while AC-3 and Dolby TrueHD
are presented as separate options, AC3 must be enabled for TrueHD
decoding support.

Ffdshow

And some more audio codecs, select what you want and click "Next".

Ffdshow Audio Codecs

If you want to bitstream AC-3 or DTS select the appropriate box for S/PDIF passthrough and click "Next".

Ffdshow AC-3 and DTS

I prefer to listen to audio in the native format so I disable the mixer. 
If you’d prefer that ffdshow expand the audio, select the appropriate
option for your setup and click "Next".

Ffdshow

Almost done, click "Install".

Ffdshow

Because we’re going to change the merit for both filters which will require
escalation, it’s best to uncheck both "Run…" options.

Ffdshow

Should be easy enough to find the ffdshow configuration links on the start menu, right-click and select "Run as administrator".

Ffdshow

But when we do that it doesn’t work because the paths in the shortcut
aren’t created correctly.  What this means for anyone running in a
limited user context (Vista or 7 with UAC enabled) is that ffdshow is
now installed with a ridiculous merit, and it’s not immediately clear
how to fix it.  To make matters worse, when the configuration dialogs
are run normally from the start menu, merit control is allowed and the
UI fails so gracefully that the failure is hidden from the user.  The
only obvious way that I could find to discover the problem was to
relaunch the dialog and check.

Ffdshow

Fortunately working around this issue is relatively easy.  By opening an escalated
command prompt and typing "rundll32.exe "\Program
Files\ffdshow\ffdshow.ax",configureAudio" the audio dialog will launch
in the correct context enabling us to change the merit to more
reasonable value.  To make it even easier, two cmd files
can be downloaded with the command already included (if you changed the
install directory here’s where you’ll want to remember).  Just
right-click the correct file and select "Run as administrator" to
launch.

Ffdshow

Let’s start with the video decoder.  Run the cmd file, then select
"DirectShow control" on the left.  Pull the merit slider from "ffdshow
default" to a more appropriate value like "normal".  I use "unlikely"
because I want ffdshow’s video decoder to only provide coverage.

Ffdshow

And codec support is controlled from the "Codecs" page; run wild.  There is
a lot more to the video decoder, including post processing for image
quality.  This is only intended to be a quick install guide and walk
through, so we’ll leave that for another time.  Go ahead and click "OK"
and let’s move on to the audio decoder.

Ffdshow

After launching the audio decoder configuration dialog with the cmd file
(remember to right-click and run as admin), browse to the DirectShow
control screen and select a more reasonable merit.  Because I like the
audio decoder, I go with "normal".

Ffdshow

Like the video decoder codec support is managed on the codecs page.  From
here you have a lot of control, clicking on the "Decoder" column even
lets you choose which OSS library will handle the format.

Ffdshow

If you’ve changed your mind since the install on how you want channel
mapping to occur, browse over to the "Mixer" page.  If you opted to
disable it, make sure you check the "Mixer" box at the top before
leaving the page.

Ffdshow

The last screen we’re going to look at is "Output". This page is where we
can toggle between S/PDIF and PCM, control sample formats, and even
have ffdshow encode PCM to AC-3 for bitstreaming (have to remember add
this as an option the earlier article on multi-channel audio).  Click
"OK" to save the settings and you’re done.

And that’s it, when done you should be able to play and hear any and all video formats which you have configured the software to do. Feel free to post any comments/questions in our Forum link below.

  • Sorry, Im trying to play my

    Sorry, Im trying to play my torrent downloads from my NAS to my newely build HTPC, (ati 5570 HDMI) for instant I cant open up a XVID movie file…  even though I loaded down a XVID CODEC.   I thought streaming my movies would be easy but there seems to be another brick wall to climb over… if I bought a AV receiver HDMI in and out would this deal with the problem or do I still need all these codecs?

    my apologies for my ignorance