@item 4xm @tab @tab X
@tab 4X Technologies format, used in some games.
@item 8088flex TMV @tab @tab X
+@item Adobe Filmstrip @tab X @tab X
@item Audio IFF (AIFF) @tab X @tab X
@item American Laser Games MM @tab @tab X
@tab Multimedia format used in games like Mad Dog McCree.
@tab Audio and video format used in some games by Beam Software.
@item Bethesda Softworks VID @tab @tab X
@tab Used in some games from Bethesda Softworks.
+@item Bink @tab @tab X
+ @tab Multimedia format used by many games.
@item Brute Force & Ignorance @tab @tab X
@tab Used in the game Flash Traffic: City of Angels.
@item Interplay C93 @tab @tab X
@item CRYO APC @tab @tab X
@tab Audio format used in some games by CRYO Interactive Entertainment.
@item D-Cinema audio @tab X @tab X
+@item Deluxe Paint Animation @tab @tab X
@item DV video @tab X @tab X
@item DXA @tab @tab X
@tab This format is used in the non-Windows version of the Feeble Files
@tab Format used in various Interplay computer games.
@item IV8 @tab @tab X
@tab A format generated by IndigoVision 8000 video server.
+@item IVF (On2) @tab @tab X
+ @tab A format used by libvpx
@item LMLM4 @tab @tab X
@tab Used by Linux Media Labs MPEG-4 PCI boards
@item Matroska @tab X @tab X
@item RTMP @tab X @tab X
@tab Output is performed by publishing stream to RTMP server
@item RTP @tab @tab X
-@item RTSP @tab @tab X
+@item RTSP @tab X @tab X
@item SDP @tab @tab X
@item Sega FILM/CPK @tab @tab X
@tab Used in many Sega Saturn console games.
@item VC-1 test bitstream @tab X @tab X
@item WAV @tab X @tab X
@item WavPack @tab @tab X
+@item WebM @tab X @tab X
@item Wing Commander III movie @tab @tab X
@tab Multimedia format used in Origin's Wing Commander III computer game.
@item Westwood Studios audio @tab @tab X
@item Westwood Studios VQA @tab @tab X
@tab Multimedia format used in Westwood Studios games.
@item YUV4MPEG pipe @tab X @tab X
+@item Psygnosis YOP @tab @tab X
@end multitable
@code{X} means that encoding (resp. decoding) is supported.
@tab fourcc: VCR1
@item ATI VCR2 @tab @tab X
@tab fourcc: VCR2
+@item Auravision Aura @tab @tab X
+@item Auravision Aura 2 @tab @tab X
@item Autodesk Animator Flic video @tab @tab X
@item Autodesk RLE @tab @tab X
@tab fourcc: AASC
@item Beam Software VB @tab @tab X
@item Bethesda VID video @tab @tab X
@tab Used in some games from Bethesda Softworks.
+@item Bink Video @tab @tab X
+ @tab Support for version 'b' is missing.
@item Brute Force & Ignorance @tab @tab X
@tab Used in the game Flash Traffic: City of Angels.
@item C93 video @tab @tab X
@item Creative YUV (CYUV) @tab @tab X
@item Dirac @tab E @tab E
@tab supported through external libdirac/libschroedinger libraries
+@item Deluxe Paint Animation @tab @tab X
@item DNxHD @tab X @tab X
@tab aka SMPTE VC3
@item Duck TrueMotion 1.0 @tab @tab X
@tab Used in Quake II.
@item id RoQ video @tab X @tab X
@tab Used in Quake III, Jedi Knight 2, other computer games.
+@item IFF ILBM @tab @tab X
+ @tab IFF interlaved bitmap
+@item IFF ByteRun1 @tab @tab X
+ @tab IFF run length encoded bitmap
@item Intel H.263 @tab @tab X
@item Intel Indeo 2 @tab @tab X
@item Intel Indeo 3 @tab @tab X
+@item Intel Indeo 5 @tab @tab X
@item Interplay C93 @tab @tab X
@tab Used in the game Cyberia from Interplay.
@item Interplay MVE video @tab @tab X
@tab Used in Interplay .MVE files.
@item Karl Morton's video codec @tab @tab X
@tab Codec used in Worms games.
+@item Kega Game Video (KGV1) @tab @tab X
+ @tab Kega emulator screen capture codec.
@item LCL (LossLess Codec Library) MSZH @tab @tab X
@item LCL (LossLess Codec Library) ZLIB @tab E @tab E
@item LOCO @tab @tab X
@tab fourcc: VP50
@item On2 VP6 @tab @tab X
@tab fourcc: VP60,VP61,VP62
+@item VP8 @tab X @tab X
+ @tab fourcc: VP80, de/encoding supported through external library libvpx
@item planar RGB @tab @tab X
@tab fourcc: 8BPS
@item Q-team QPEG @tab @tab X
@tab fourcc: 'smc '
@item QuickTime video (RPZA) @tab @tab X
@tab fourcc: rpza
+@item R210 Quicktime Uncompressed RGB 10-bit @tab @tab X
@item Raw Video @tab X @tab X
@item RealVideo 1.0 @tab X @tab X
@item RealVideo 2.0 @tab X @tab X
@item Winnov WNV1 @tab @tab X
@item WMV7 @tab X @tab X
@item YAMAHA SMAF @tab X @tab X
+@item Psygnosis YOP Video @tab @tab X
@item ZLIB @tab X @tab X
@tab part of LCL, encoder experimental
@item Zip Motion Blocks Video @tab X @tab X
@item ADPCM Westwood Studios IMA @tab @tab X
@tab Used in Westwood Studios games like Command and Conquer.
@item ADPCM Yamaha @tab X @tab X
-@item AMR-NB @tab E @tab E
- @tab supported through external library libopencore-amrnb
+@item AMR-NB @tab E @tab X
+ @tab encoding supported through external library libopencore-amrnb
@item AMR-WB @tab @tab E
@tab decoding supported through external library libopencore-amrwb
@item Apple lossless audio @tab X @tab X
@tab QuickTime fourcc 'alac'
@item Atrac 1 @tab @tab X
@item Atrac 3 @tab @tab X
+@item Bink Audio @tab @tab X
+ @tab Used in Bink and Smacker files in many games.
@item Delphine Software International CIN audio @tab @tab X
@tab Codec used in Delphine Software International games.
@item COOK @tab @tab X
@tab Real 28800 bit/s codec
@item RealAudio 3.0 (dnet) @tab IX @tab X
@tab Real low bitrate AC-3 codec
+@item RealAudio SIPR / ACELP.NET @tab @tab X
@item Shorten @tab @tab X
@item Sierra VMD audio @tab @tab X
@tab Used in Sierra VMD files.
@tab Used in HD-DVD and Blu-Ray discs.
@item TwinVQ (VQF flavor) @tab @tab X
@item Vorbis @tab E @tab X
- @ A native but very primitive encoder exists.
+ @tab A native but very primitive encoder exists.
@item WavPack @tab @tab X
@item Westwood Audio (SND1) @tab @tab X
@item Windows Media Audio 1 @tab X @tab X
@item Windows Media Audio 2 @tab X @tab X
@item Windows Media Audio Pro @tab @tab X
+@item Windows Media Audio Voice @tab @tab X
@end multitable
@code{X} means that encoding (resp. decoding) is supported.
@item file @tab X
@item Gopher @tab X
@item HTTP @tab X
+@item MMS @tab X
@item pipe @tab X
@item RTP @tab X
@item TCP @tab X
@chapter Platform Specific information
-@section BSD
+@section BeOS
+
+BeOS support is broken in mysterious ways.
+
+@section DOS
+
+Using a cross-compiler is preferred for various reasons.
+
+@subsection DJGPP
+
+FFmpeg cannot be compiled because of broken system headers, add
+@code{--extra-cflags=-U__STRICT_ANSI__} to the configure options as a
+workaround.
+
+@section OS/2
+
+For information about compiling FFmpeg on OS/2 see
+@url{http://www.edm2.com/index.php/FFmpeg}.
+
+@section Unix-like
+
+Some parts of FFmpeg cannot be built with version 2.15 of the GNU
+assembler which is still provided by a few AMD64 distributions. To
+make sure your compiler really uses the required version of gas
+after a binutils upgrade, run:
+
+@example
+$(gcc -print-prog-name=as) --version
+@end example
+
+If not, then you should install a different compiler that has no
+hard-coded path to gas. In the worst case pass @code{--disable-asm}
+to configure.
+
+@subsection BSD
BSD make will not build FFmpeg, you need to install and use GNU Make
(@file{gmake}).
+@subsubsection FreeBSD
+
+FreeBSD will not compile out-of-the-box due to broken system headers.
+Passing @code{--extra-cflags=-D__BSD_VISIBLE} to configure will work
+around the problem. This may have unexpected sideeffects, so use it at
+your own risk. If you care about FreeBSD, please make an attempt at
+getting the system headers fixed.
+
+@subsection (Open)Solaris
+
+GNU Make is required to build FFmpeg, so you have to invoke (@file{gmake}),
+standard Solaris Make will not work. When building with a non-c99 front-end
+(gcc, generic suncc) add either @code{--extra-libs=/usr/lib/values-xpg6.o}
+or @code{--extra-libs=/usr/lib/64/values-xpg6.o} to the configure options
+since the libc is not c99-compliant by default. The probes performed by
+configure may raise an exception leading to the death of configure itself
+due to a bug in the system shell. Simply invoke a different shell such as
+bash directly to work around this:
+
+@example
+bash ./configure
+@end example
+
@section Windows
To get help and instructions for building FFmpeg under Windows, check out
@subsection Compilation under Cygwin
-The main issue with the 1.5.x Cygwin versions is that newlib, its C library,
-does not contain llrint(). You need to upgrade to the unstable 1.7.x versions,
-or leverage the implementation in MinGW (as explained below).
+Please use Cygwin 1.7.x as the obsolete 1.5.x Cygwin versions lack
+llrint() in its C library.
-Just install your Cygwin with all the "Base" packages, plus the
+Install your Cygwin with all the "Base" packages, plus the
following "Devel" ones:
@example
-binutils, gcc-core, make, subversion, mingw-runtime
+binutils, gcc4-core, make, subversion, mingw-runtime, texi2html
@end example
And the following "Utils" one:
diffutils
@end example
-The experimental gcc4 package is still buggy, hence please
-use the official gcc 3.4.4 or a 4.2.x compiled from source by yourself.
-
-Install the current binutils-20080624-2 as they work fine (the old
-binutils-20060709-1 proved buggy on shared builds).
-
-Then create a small library that just contains llrint():
-
-@example
-ar x /usr/lib/mingw/libmingwex.a llrint.o
-ar cq /usr/local/lib/libllrint.a llrint.o
-@end example
-
Then run
@example
-./configure --enable-static --disable-shared --extra-ldflags='-L /usr/local/lib' --extra-libs='-l llrint'
+./configure --enable-static --disable-shared
@end example
-to make a static build or
+to make a static build.
+
+The current @code{gcc4-core} package is buggy and needs this flag to build
+shared libraries:
@example
-./configure --enable-shared --disable-static --extra-ldflags='-L /usr/local/lib' --extra-libs='-l llrint'
+./configure --enable-shared --disable-static --extra-cflags=-fno-reorder-functions
@end example
-to build shared libraries.
-
If you want to build FFmpeg with additional libraries, download Cygwin
"Devel" packages for Ogg and Vorbis from any Cygwin packages repository:
@example
./configure --target-os=mingw32 --enable-memalign-hack --enable-shared --disable-static --extra-cflags=-mno-cygwin --extra-libs=-mno-cygwin
@end example
-@section BeOS
-
-BeOS support is broken in mysterious ways.
-
-@section OS/2
-
-For information about compiling FFmpeg on OS/2 see
-@url{http://www.edm2.com/index.php/FFmpeg}.
-
@bye