ffdshow is a
media decoder and encoder mainly used for the fast and high-quality decoding of
video in the
MPEG-4 ASP (e.g. encoded with
DivX,
Xvid, or
FFmpeg MPEG-4) and AVC (
H.264)
formats, but it supports numerous other video and audio formats as well. It is
free software released under the
GPL license, runs on
Windows, and is implemented as a
DirectShow and
VFW decoding
filter.
Installation and configuration
ffdshow does not include media player or
container parsers. Instead, after installation of ffdshow, compatible DirectShow or VFW
media players such as
Media Player Classic,
Winamp, and
Windows Media Player (not 12) will use the ffdshow decoder automatically, thus avoiding the need to install separate
codecs for the various formats supported by ffdshow. The user configures ffdshow's audio and video settings by launching the
ffdshow video decoder configuration program independently of any media player.
For playing transport stream files such as AVC(H.264) an additional mediasplitter should also be installed. There are several free mediasplitters available such as the Haali Media Splitter.
Format and filter support
ffdshow can be configured to display subtitles, to enable or disable various built-in codecs, to grab screenshots, to enable keyboard control, and to enhance movies with increased
resolution, sharpness, and many other post-processing filters. It has the ability to manipulate audio with effects like an equalizer, a
Dolby decoder, reverb,
Winamp DSP plugins, and more. Some of the postprocessing is borrowed from the
MPlayer project and
AviSynth filters.
ffdshow uses the libavcodec library and several other free, open source software packages to decode video in most common formats, such as:
MPEG-4 Part 2 (including video encoded with Xvid, 3ivx, and all versions of DivX).
Flash Video, H.263 and VP6 (used by sites such as YouTube).
H.264/AVC, Theora, WMV as well as numerous others.
ffdshow also decodes audio, such as:
MP3,
AAC,
Dolby AC3,
WMA
FLAC, and
Vorbis formats, among others.
The post-processing video filters of ffdshow can be used in video editors such as VirtualDub or AviSynth, by configuring the VFW settings. In these editors, ffdshow can also be used to encode MPEG-4 video compatible with Xvid, DivX, or x264 codecs, as well as lossless video and a few other formats supported by libavcodec.
History
The first versions of ffdshow were published in April 2002, as an alternative to the
DivX ;-) 3.11 and
DivX 5.02 (which came bundled with
Gator) decoders of the time, and as a way to combine the speed and quality of
MPlayer with popular Windows video players. It continues to support more formats, new and old, as
FFmpeg developers add support for them.
The main developer was Milan Cutka. When he stopped updating the project in 2006, new maintainers opened the ffdshow-tryouts as a fork, where bugfixes, stability fixes, new features, and codec updates continue.
Notes
A common misconception is that
ICL SSE/SSE2 builds will decode video better than "generic" builds. In fact, the video decoders are always compiled in gcc and are usually hand-optimized; it is the ffdshow filters that benefit from ICL.
Codec packs or transcoding suites like Nero Recode that install their own video splitters also have been known to damage ffdshow's performance in the past. Some will override ffdshow, disrupt proper video display, or install outdated ffdshow versions.
See also
Comparison of video player software
Open source codecs and containers
References
External links
Current Sourceforge ffdshow page
Wiki, online help
Official Doom9 support, discussion, & development thread
Official support forum
Version history of ffdshow-tryout
Recent ffdshow builds from codecs.com, usually a few days behind the official site.
Historical links
CVS snapshots by celtic_druid (US) (Mirror (FR)) (Mirror (JP)) (No longer updated)
Old speed comparisons: ASP, AVC
Category:Free multimedia codecs, containers, and splitters
Category:Free software programmed in assembly
Category:Free software programmed in C
Category:Free software programmed in C++
Category:Video codecs
Category:Windows-only free software