\input texinfo @c -*- texinfo -*-
@documentencoding UTF-8

@settitle General Documentation
@titlepage
@center @titlefont{General Documentation}
@end titlepage

@top

@contents

@chapter External libraries

FFmpeg can be hooked up with a number of external libraries to add support
for more formats. None of them are used by default, their use has to be
explicitly requested by passing the appropriate flags to
@command{./configure}.

@section OpenJPEG

FFmpeg can use the OpenJPEG libraries for encoding/decoding J2K videos.  Go to
@url{http://www.openjpeg.org/} to get the libraries and follow the installation
instructions.  To enable using OpenJPEG in FFmpeg, pass @code{--enable-libopenjpeg} to
@file{./configure}.


@section OpenCORE, VisualOn, and Fraunhofer libraries

Spun off Google Android sources, OpenCore, VisualOn and Fraunhofer
libraries provide encoders for a number of audio codecs.

@float NOTE
OpenCORE and VisualOn libraries are under the Apache License 2.0
(see @url{http://www.apache.org/licenses/LICENSE-2.0} for details), which is
incompatible to the LGPL version 2.1 and GPL version 2. You have to
upgrade FFmpeg's license to LGPL version 3 (or if you have enabled
GPL components, GPL version 3) by passing @code{--enable-version3} to configure in
order to use it.

The Fraunhofer AAC library is licensed under a license incompatible to the GPL
and is not known to be compatible to the LGPL. Therefore, you have to pass
@code{--enable-nonfree} to configure to use it.
@end float

@subsection OpenCORE AMR

FFmpeg can make use of the OpenCORE libraries for AMR-NB
decoding/encoding and AMR-WB decoding.

Go to @url{http://sourceforge.net/projects/opencore-amr/} and follow the
instructions for installing the libraries.
Then pass @code{--enable-libopencore-amrnb} and/or
@code{--enable-libopencore-amrwb} to configure to enable them.

@subsection VisualOn AMR-WB encoder library

FFmpeg can make use of the VisualOn AMR-WBenc library for AMR-WB encoding.

Go to @url{http://sourceforge.net/projects/opencore-amr/} and follow the
instructions for installing the library.
Then pass @code{--enable-libvo-amrwbenc} to configure to enable it.

@subsection Fraunhofer AAC library

FFmpeg can make use of the Fraunhofer AAC library for AAC encoding.

Go to @url{http://sourceforge.net/projects/opencore-amr/} and follow the
instructions for installing the library.
Then pass @code{--enable-libfdk-aac} to configure to enable it.

@section LAME

FFmpeg can make use of the LAME library for MP3 encoding.

Go to @url{http://lame.sourceforge.net/} and follow the
instructions for installing the library.
Then pass @code{--enable-libmp3lame} to configure to enable it.

@section TwoLAME

FFmpeg can make use of the TwoLAME library for MP2 encoding.

Go to @url{http://www.twolame.org/} and follow the
instructions for installing the library.
Then pass @code{--enable-libtwolame} to configure to enable it.

@section libvpx

FFmpeg can make use of the libvpx library for VP8/VP9 encoding.

Go to @url{http://www.webmproject.org/} and follow the instructions for
installing the library. Then pass @code{--enable-libvpx} to configure to
enable it.

@section libwavpack

FFmpeg can make use of the libwavpack library for WavPack encoding.

Go to @url{http://www.wavpack.com/} and follow the instructions for
installing the library. Then pass @code{--enable-libwavpack} to configure to
enable it.

@section OpenH264

FFmpeg can make use of the OpenH264 library for H.264 encoding.

Go to @url{http://www.openh264.org/} and follow the instructions for
installing the library. Then pass @code{--enable-libopenh264} to configure to
enable it.

@section x264

FFmpeg can make use of the x264 library for H.264 encoding.

Go to @url{http://www.videolan.org/developers/x264.html} and follow the
instructions for installing the library. Then pass @code{--enable-libx264} to
configure to enable it.

@float NOTE
x264 is under the GNU Public License Version 2 or later
(see @url{http://www.gnu.org/licenses/old-licenses/gpl-2.0.html} for
details), you must upgrade FFmpeg's license to GPL in order to use it.
@end float

@section x265

FFmpeg can make use of the x265 library for HEVC encoding.

Go to @url{http://x265.org/developers.html} and follow the instructions
for installing the library. Then pass @code{--enable-libx265} to configure
to enable it.

@float NOTE
x265 is under the GNU Public License Version 2 or later
(see @url{http://www.gnu.org/licenses/old-licenses/gpl-2.0.html} for
details), you must upgrade FFmpeg's license to GPL in order to use it.
@end float

@section kvazaar

FFmpeg can make use of the kvazaar library for HEVC encoding.

Go to @url{https://github.com/ultravideo/kvazaar} and follow the
instructions for installing the library. Then pass
@code{--enable-libkvazaar} to configure to enable it.

@section libilbc

iLBC is a narrowband speech codec that has been made freely available
by Google as part of the WebRTC project. libilbc is a packaging friendly
copy of the iLBC codec. FFmpeg can make use of the libilbc library for
iLBC encoding and decoding.

Go to @url{https://github.com/TimothyGu/libilbc} and follow the instructions for
installing the library. Then pass @code{--enable-libilbc} to configure to
enable it.

@section libzvbi

libzvbi is a VBI decoding library which can be used by FFmpeg to decode DVB
teletext pages and DVB teletext subtitles.

Go to @url{http://sourceforge.net/projects/zapping/} and follow the instructions for
installing the library. Then pass @code{--enable-libzvbi} to configure to
enable it.

@section AviSynth

FFmpeg can read AviSynth scripts as input. To enable support, pass
@code{--enable-avisynth} to configure.  The correct headers are
included in compat/avisynth/, which allows the user to enable support
without needing to search for these headers themselves.

For Windows, supported AviSynth variants are
@url{http://avisynth.nl, AviSynth 2.6 RC1 or higher} for 32-bit builds and
@url{http://avs-plus.net, AviSynth+ r1718 or higher} for 32-bit and 64-bit builds.

For Linux and OS X, the supported AviSynth variant is
@url{https://github.com/avxsynth/avxsynth, AvxSynth}.

@float NOTE
AviSynth and AvxSynth are loaded dynamically.  Distributors can build FFmpeg
with @code{--enable-avisynth}, and the binaries will work regardless of the
end user having AviSynth or AvxSynth installed - they'll only need to be
installed to use AviSynth scripts (obviously).
@end float

@section Intel QuickSync Video

FFmpeg can use Intel QuickSync Video (QSV) for accelerated encoding and decoding
of multiple codecs. To use QSV, FFmpeg must be linked against the @code{libmfx}
dispatcher, which loads the actual decoding libraries.

The dispatcher is open source and can be downloaded from
@url{https://github.com/lu-zero/mfx_dispatch.git}. FFmpeg needs to be configured
with the @code{--enable-libmfx} option and @code{pkg-config} needs to be able to
locate the dispatcher's @code{.pc} files.


@chapter Supported File Formats, Codecs or Features

You can use the @code{-formats} and @code{-codecs} options to have an exhaustive list.

@section File Formats

FFmpeg supports the following file formats through the @code{libavformat}
library:

@multitable @columnfractions .4 .1 .1 .4
@item Name @tab Encoding @tab Decoding @tab Comments
@item 3dostr                    @tab   @tab X
@item 4xm                       @tab   @tab X
    @tab 4X Technologies format, used in some games.
@item 8088flex TMV              @tab   @tab X
@item AAX                       @tab   @tab X
    @tab Audible Enhanced Audio format, used in audiobooks.
@item AA                        @tab   @tab X
    @tab Audible Format 2, 3, and 4, used in audiobooks.
@item ACT Voice                 @tab   @tab X
    @tab contains G.729 audio
@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.
@item 3GPP AMR                  @tab X @tab X
@item Amazing Studio Packed Animation File  @tab   @tab X
    @tab Multimedia format used in game Heart Of Darkness.
@item Apple HTTP Live Streaming @tab   @tab X
@item Artworx Data Format       @tab   @tab X
@item Interplay ACM             @tab   @tab X
    @tab Audio only format used in some Interplay games.
@item ADP                       @tab   @tab X
    @tab Audio format used on the Nintendo Gamecube.
@item AFC                       @tab   @tab X
    @tab Audio format used on the Nintendo Gamecube.
@item ADS/SS2                   @tab   @tab X
    @tab Audio format used on the PS2.
@item APNG                      @tab X @tab X
@item ASF                       @tab X @tab X
@item AST                       @tab X @tab X
    @tab Audio format used on the Nintendo Wii.
@item AVI                       @tab X @tab X
@item AviSynth                  @tab   @tab X
@item AVR                       @tab   @tab X
    @tab Audio format used on Mac.
@item AVS                       @tab   @tab X
    @tab Multimedia format used by the Creature Shock game.
@item Beam Software SIFF        @tab   @tab X
    @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 Binary text               @tab   @tab X
@item Bink                      @tab   @tab X
    @tab Multimedia format used by many games.
@item Bitmap Brothers JV        @tab   @tab X
    @tab Used in Z and Z95 games.
@item Brute Force & Ignorance   @tab   @tab X
    @tab Used in the game Flash Traffic: City of Angels.
@item BFSTM                     @tab   @tab X
    @tab Audio format used on the Nintendo WiiU (based on BRSTM).
@item BRSTM                     @tab   @tab X
    @tab Audio format used on the Nintendo Wii.
@item BWF                       @tab X @tab X
@item CRI ADX                   @tab X @tab X
    @tab Audio-only format used in console video games.
@item Discworld II BMV          @tab   @tab X
@item Interplay C93             @tab   @tab X
    @tab Used in the game Cyberia from Interplay.
@item Delphine Software International CIN @tab   @tab X
    @tab Multimedia format used by Delphine Software games.
@item Digital Speech Standard (DSS) @tab   @tab X
@item Canopus HQ                @tab   @tab X
@item Canopus HQA               @tab   @tab X
@item Canopus HQX               @tab   @tab X
@item CD+G                      @tab   @tab X
    @tab Video format used by CD+G karaoke disks
@item Phantom Cine              @tab   @tab X
@item Cineform HD               @tab   @tab X
@item Commodore CDXL            @tab   @tab X
    @tab Amiga CD video format
@item Core Audio Format         @tab X @tab X
    @tab Apple Core Audio Format
@item CRC testing format        @tab X @tab
@item Creative Voice            @tab X @tab X
    @tab Created for the Sound Blaster Pro.
@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 DCSTR                     @tab   @tab X
@item DFA                       @tab   @tab X
    @tab This format is used in Chronomaster game
@item DirectDraw Surface        @tab   @tab X
@item DSD Stream File (DSF)     @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
         game and different game cutscenes repacked for use with ScummVM.
@item Electronic Arts cdata  @tab    @tab X
@item Electronic Arts Multimedia  @tab    @tab X
    @tab Used in various EA games; files have extensions like WVE and UV2.
@item Ensoniq Paris Audio File  @tab   @tab X
@item FFM (FFserver live feed)  @tab X @tab X
@item Flash (SWF)               @tab X @tab X
@item Flash 9 (AVM2)            @tab X @tab X
    @tab Only embedded audio is decoded.
@item FLI/FLC/FLX animation     @tab   @tab X
    @tab .fli/.flc files
@item Flash Video (FLV)         @tab X @tab X
    @tab Macromedia Flash video files
@item framecrc testing format   @tab X @tab
@item FunCom ISS                @tab   @tab X
    @tab Audio format used in various games from FunCom like The Longest Journey.
@item G.723.1                   @tab X @tab X
@item G.729 BIT                 @tab X @tab X
@item G.729 raw                 @tab   @tab X
@item GENH                      @tab   @tab X
    @tab Audio format for various games.
@item GIF Animation             @tab X @tab X
@item GXF                       @tab X @tab X
    @tab General eXchange Format SMPTE 360M, used by Thomson Grass Valley
         playout servers.
@item HNM @tab   @tab X
    @tab Only version 4 supported, used in some games from Cryo Interactive
@item iCEDraw File              @tab   @tab X
@item ICO                       @tab X @tab X
    @tab Microsoft Windows ICO
@item id Quake II CIN video     @tab   @tab X
@item id RoQ                    @tab X @tab X
    @tab Used in Quake III, Jedi Knight 2 and other computer games.
@item IEC61937 encapsulation @tab X @tab X
@item IFF                       @tab   @tab X
    @tab Interchange File Format
@item iLBC                      @tab X @tab X
@item Interplay MVE             @tab   @tab X
    @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 X @tab X
    @tab A format used by libvpx
@item Internet Video Recording  @tab   @tab X
@item IRCAM                     @tab X @tab X
@item LATM                      @tab X @tab X
@item LMLM4                     @tab   @tab X
    @tab Used by Linux Media Labs MPEG-4 PCI boards
@item LOAS                      @tab   @tab X
    @tab contains LATM multiplexed AAC audio
@item LRC                       @tab X @tab X
@item LVF                       @tab   @tab X
@item LXF                       @tab   @tab X
    @tab VR native stream format, used by Leitch/Harris' video servers.
@item Magic Lantern Video (MLV) @tab   @tab X
@item Matroska                  @tab X @tab X
@item Matroska audio            @tab X @tab
@item FFmpeg metadata           @tab X @tab X
    @tab Metadata in text format.
@item MAXIS XA                  @tab   @tab X
    @tab Used in Sim City 3000; file extension .xa.
@item MD Studio                 @tab   @tab X
@item Metal Gear Solid: The Twin Snakes @tab @tab X
@item Megalux Frame             @tab   @tab X
    @tab Used by Megalux Ultimate Paint
@item Mobotix .mxg              @tab   @tab X
@item Monkey's Audio            @tab   @tab X
@item Motion Pixels MVI         @tab   @tab X
@item MOV/QuickTime/MP4         @tab X @tab X
    @tab 3GP, 3GP2, PSP, iPod variants supported
@item MP2                       @tab X @tab X
@item MP3                       @tab X @tab X
@item MPEG-1 System             @tab X @tab X
    @tab muxed audio and video, VCD format supported
@item MPEG-PS (program stream)  @tab X @tab X
    @tab also known as @code{VOB} file, SVCD and DVD format supported
@item MPEG-TS (transport stream) @tab X @tab X
    @tab also known as DVB Transport Stream
@item MPEG-4                    @tab X @tab X
    @tab MPEG-4 is a variant of QuickTime.
@item MSF                       @tab   @tab X
    @tab Audio format used on the PS3.
@item Mirillis FIC video        @tab   @tab X
    @tab No cursor rendering.
@item MIME multipart JPEG       @tab X @tab
@item MSN TCP webcam            @tab   @tab X
    @tab Used by MSN Messenger webcam streams.
@item MTV                       @tab   @tab X
@item Musepack                  @tab   @tab X
@item Musepack SV8              @tab   @tab X
@item Material eXchange Format (MXF) @tab X @tab X
    @tab SMPTE 377M, used by D-Cinema, broadcast industry.
@item Material eXchange Format (MXF), D-10 Mapping @tab X @tab X
    @tab SMPTE 386M, D-10/IMX Mapping.
@item NC camera feed            @tab   @tab X
    @tab NC (AVIP NC4600) camera streams
@item NIST SPeech HEader REsources @tab   @tab X
@item NTT TwinVQ (VQF)          @tab   @tab X
    @tab Nippon Telegraph and Telephone Corporation TwinVQ.
@item Nullsoft Streaming Video  @tab   @tab X
@item NuppelVideo               @tab   @tab X
@item NUT                       @tab X @tab X
    @tab NUT Open Container Format
@item Ogg                       @tab X @tab X
@item Playstation Portable PMP  @tab   @tab X
@item Portable Voice Format     @tab   @tab X
@item TechnoTrend PVA           @tab   @tab X
    @tab Used by TechnoTrend DVB PCI boards.
@item QCP                       @tab   @tab X
@item raw ADTS (AAC)            @tab X @tab X
@item raw AC-3                  @tab X @tab X
@item raw Chinese AVS video     @tab X @tab X
@item raw CRI ADX               @tab X @tab X
@item raw Dirac                 @tab X @tab X
@item raw DNxHD                 @tab X @tab X
@item raw DTS                   @tab X @tab X
@item raw DTS-HD                @tab   @tab X
@item raw E-AC-3                @tab X @tab X
@item raw FLAC                  @tab X @tab X
@item raw GSM                   @tab   @tab X
@item raw H.261                 @tab X @tab X
@item raw H.263                 @tab X @tab X
@item raw H.264                 @tab X @tab X
@item raw HEVC                  @tab X @tab X
@item raw Ingenient MJPEG       @tab   @tab X
@item raw MJPEG                 @tab X @tab X
@item raw MLP                   @tab   @tab X
@item raw MPEG                  @tab   @tab X
@item raw MPEG-1                @tab   @tab X
@item raw MPEG-2                @tab   @tab X
@item raw MPEG-4                @tab X @tab X
@item raw NULL                  @tab X @tab
@item raw video                 @tab X @tab X
@item raw id RoQ                @tab X @tab
@item raw Shorten               @tab   @tab X
@item raw TAK                   @tab   @tab X
@item raw TrueHD                @tab X @tab X
@item raw VC-1                  @tab X @tab X
@item raw PCM A-law             @tab X @tab X
@item raw PCM mu-law            @tab X @tab X
@item raw PCM signed 8 bit      @tab X @tab X
@item raw PCM signed 16 bit big-endian  @tab X @tab X
@item raw PCM signed 16 bit little-endian  @tab X @tab X
@item raw PCM signed 24 bit big-endian  @tab X @tab X
@item raw PCM signed 24 bit little-endian  @tab X @tab X
@item raw PCM signed 32 bit big-endian  @tab X @tab X
@item raw PCM signed 32 bit little-endian  @tab X @tab X
@item raw PCM unsigned 8 bit    @tab X @tab X
@item raw PCM unsigned 16 bit big-endian  @tab X @tab X
@item raw PCM unsigned 16 bit little-endian  @tab X @tab X
@item raw PCM unsigned 24 bit big-endian  @tab X @tab X
@item raw PCM unsigned 24 bit little-endian  @tab X @tab X
@item raw PCM unsigned 32 bit big-endian  @tab X @tab X
@item raw PCM unsigned 32 bit little-endian  @tab X @tab X
@item raw PCM floating-point 32 bit big-endian  @tab X @tab X
@item raw PCM floating-point 32 bit little-endian  @tab X @tab X
@item raw PCM floating-point 64 bit big-endian  @tab X @tab X
@item raw PCM floating-point 64 bit little-endian  @tab X @tab X
@item RDT                       @tab   @tab X
@item REDCODE R3D               @tab   @tab X
    @tab File format used by RED Digital cameras, contains JPEG 2000 frames and PCM audio.
@item RealMedia                 @tab X @tab X
@item Redirector                @tab   @tab X
@item RedSpark                  @tab   @tab X
@item Renderware TeXture Dictionary @tab   @tab X
@item Resolume DXV              @tab   @tab X
@item RL2                       @tab   @tab X
    @tab Audio and video format used in some games by Entertainment Software Partners.
@item RPL/ARMovie               @tab   @tab X
@item Lego Mindstorms RSO       @tab X @tab X
@item RSD                       @tab   @tab X
@item RTMP                      @tab X @tab X
    @tab Output is performed by publishing stream to RTMP server
@item RTP                       @tab X @tab X
@item RTSP                      @tab X @tab X
@item SAP                       @tab X @tab X
@item SBG                       @tab   @tab X
@item SDP                       @tab   @tab X
@item Sega FILM/CPK             @tab   @tab X
    @tab Used in many Sega Saturn console games.
@item Silicon Graphics Movie    @tab   @tab X
@item Sierra SOL                @tab   @tab X
    @tab .sol files used in Sierra Online games.
@item Sierra VMD                @tab   @tab X
    @tab Used in Sierra CD-ROM games.
@item Smacker                   @tab   @tab X
    @tab Multimedia format used by many games.
@item SMJPEG                    @tab X @tab X
    @tab Used in certain Loki game ports.
@item Smush                     @tab   @tab X
    @tab Multimedia format used in some LucasArts games.
@item Sony OpenMG (OMA)         @tab X @tab X
    @tab Audio format used in Sony Sonic Stage and Sony Vegas.
@item Sony PlayStation STR      @tab   @tab X
@item Sony Wave64 (W64)         @tab X @tab X
@item SoX native format         @tab X @tab X
@item SUN AU format             @tab X @tab X
@item SUP raw PGS subtitles     @tab   @tab X
@item SVAG                      @tab   @tab X
    @tab Audio format used in Konami PS2 games.
@item TDSC                      @tab   @tab X
@item Text files                @tab   @tab X
@item THP                       @tab   @tab X
    @tab Used on the Nintendo GameCube.
@item Tiertex Limited SEQ       @tab   @tab X
    @tab Tiertex .seq files used in the DOS CD-ROM version of the game Flashback.
@item True Audio                @tab   @tab X
@item VAG                       @tab   @tab X
    @tab Audio format used in many Sony PS2 games.
@item VC-1 test bitstream       @tab X @tab X
@item Vidvox Hap                @tab X @tab X
@item Vivo                      @tab   @tab X
@item VPK                       @tab   @tab X
    @tab Audio format used in Sony PS games.
@item WAV                       @tab X @tab X
@item WavPack                   @tab X @tab X
@item WebM                      @tab X @tab X
@item Windows Televison (WTV)   @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
    @tab Multimedia format used in Westwood Studios games.
@item Westwood Studios VQA      @tab   @tab X
    @tab Multimedia format used in Westwood Studios games.
@item WVE                       @tab   @tab X
@item XMV                       @tab   @tab X
    @tab Microsoft video container used in Xbox games.
@item XVAG                      @tab   @tab X
    @tab Audio format used on the PS3.
@item xWMA                      @tab   @tab X
    @tab Microsoft audio container used by XAudio 2.
@item eXtended BINary text (XBIN) @tab @tab X
@item YUV4MPEG pipe             @tab X @tab X
@item Psygnosis YOP             @tab   @tab X
@end multitable

@code{X} means that encoding (resp. decoding) is supported.

@section Image Formats

FFmpeg can read and write images for each frame of a video sequence. The
following image formats are supported:

@multitable @columnfractions .4 .1 .1 .4
@item Name @tab Encoding @tab Decoding @tab Comments
@item .Y.U.V       @tab X @tab X
    @tab one raw file per component
@item Alias PIX    @tab X @tab X
    @tab Alias/Wavefront PIX image format
@item animated GIF @tab X @tab X
@item APNG         @tab X @tab X
@item BMP          @tab X @tab X
    @tab Microsoft BMP image
@item BRender PIX  @tab   @tab X
    @tab Argonaut BRender 3D engine image format.
@item DPX          @tab X @tab X
    @tab Digital Picture Exchange
@item EXR          @tab   @tab X
    @tab OpenEXR
@item JPEG         @tab X @tab X
    @tab Progressive JPEG is not supported.
@item JPEG 2000    @tab X @tab X
@item JPEG-LS      @tab X @tab X
@item LJPEG        @tab X @tab
    @tab Lossless JPEG
@item PAM          @tab X @tab X
    @tab PAM is a PNM extension with alpha support.
@item PBM          @tab X @tab X
    @tab Portable BitMap image
@item PCX          @tab X @tab X
    @tab PC Paintbrush
@item PGM          @tab X @tab X
    @tab Portable GrayMap image
@item PGMYUV       @tab X @tab X
    @tab PGM with U and V components in YUV 4:2:0
@item PIC          @tab @tab X
    @tab Pictor/PC Paint
@item PNG          @tab X @tab X
@item PPM          @tab X @tab X
    @tab Portable PixelMap image
@item PTX          @tab   @tab X
    @tab V.Flash PTX format
@item SGI          @tab X @tab X
    @tab SGI RGB image format
@item Sun Rasterfile  @tab X @tab X
    @tab Sun RAS image format
@item TIFF         @tab X @tab X
    @tab YUV, JPEG and some extension is not supported yet.
@item Truevision Targa  @tab X @tab X
    @tab Targa (.TGA) image format
@item WebP         @tab E @tab X
    @tab WebP image format, encoding supported through external library libwebp
@item XBM  @tab X @tab X
    @tab X BitMap image format
@item XFace @tab X @tab X
    @tab X-Face image format
@item XWD  @tab X @tab X
    @tab X Window Dump image format
@end multitable

@code{X} means that encoding (resp. decoding) is supported.

@code{E} means that support is provided through an external library.

@section Video Codecs

@multitable @columnfractions .4 .1 .1 .4
@item Name @tab Encoding @tab Decoding @tab Comments
@item 4X Movie               @tab     @tab  X
    @tab Used in certain computer games.
@item 8088flex TMV           @tab     @tab  X
@item A64 multicolor         @tab  X  @tab
    @tab Creates video suitable to be played on a commodore 64 (multicolor mode).
@item Amazing Studio PAF Video @tab     @tab  X
@item American Laser Games MM  @tab    @tab X
    @tab Used in games like Mad Dog McCree.
@item AMV Video              @tab  X  @tab  X
    @tab Used in Chinese MP3 players.
@item ANSI/ASCII art         @tab     @tab  X
@item Apple Intermediate Codec @tab     @tab  X
@item Apple MJPEG-B          @tab     @tab  X
@item Apple ProRes           @tab  X  @tab  X
@item Apple QuickDraw        @tab     @tab  X
    @tab fourcc: qdrw
@item Asus v1                @tab  X  @tab  X
    @tab fourcc: ASV1
@item Asus v2                @tab  X  @tab  X
    @tab fourcc: ASV2
@item ATI VCR1               @tab     @tab  X
    @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 Avid 1:1 10-bit RGB Packer  @tab  X  @tab  X
    @tab fourcc: AVrp
@item AVS (Audio Video Standard) video  @tab     @tab  X
    @tab Video encoding used by the Creature Shock game.
@item AYUV                   @tab  X  @tab  X
    @tab Microsoft uncompressed packed 4:4:4:4
@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
@item Bitmap Brothers JV video  @tab   @tab X
@item y41p Brooktree uncompressed 4:1:1 12-bit     @tab  X  @tab  X
@item Brute Force & Ignorance   @tab   @tab X
    @tab Used in the game Flash Traffic: City of Angels.
@item C93 video              @tab     @tab  X
    @tab Codec used in Cyberia game.
@item CamStudio              @tab     @tab  X
    @tab fourcc: CSCD
@item CD+G                   @tab     @tab  X
    @tab Video codec for CD+G karaoke disks
@item CDXL                   @tab     @tab  X
    @tab Amiga CD video codec
@item Chinese AVS video      @tab  E  @tab  X
    @tab AVS1-P2, JiZhun profile, encoding through external library libxavs
@item Delphine Software International CIN video  @tab     @tab  X
    @tab Codec used in Delphine Software International games.
@item Discworld II BMV Video @tab     @tab  X
@item Canopus Lossless Codec @tab     @tab  X
@item Cinepak                @tab     @tab  X
@item Cirrus Logic AccuPak   @tab  X  @tab  X
    @tab fourcc: CLJR
@item CPiA Video Format      @tab     @tab  X
@item Creative YUV (CYUV)    @tab     @tab  X
@item DFA                    @tab     @tab  X
    @tab Codec used in Chronomaster game.
@item Dirac                  @tab  E  @tab  X
    @tab supported through external library libschroedinger
@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 fourcc: DUCK
@item Duck TrueMotion 2.0    @tab     @tab  X
    @tab fourcc: TM20
@item DV (Digital Video)     @tab  X  @tab  X
@item Dxtory capture format  @tab     @tab  X
@item Feeble Files/ScummVM DXA  @tab     @tab  X
    @tab Codec originally used in Feeble Files game.
@item Electronic Arts CMV video  @tab     @tab  X
    @tab Used in NHL 95 game.
@item Electronic Arts Madcow video  @tab     @tab  X
@item Electronic Arts TGV video  @tab     @tab  X
@item Electronic Arts TGQ video  @tab     @tab  X
@item Electronic Arts TQI video  @tab     @tab  X
@item Escape 124             @tab     @tab  X
@item Escape 130             @tab     @tab  X
@item FFmpeg video codec #1  @tab  X  @tab  X
    @tab lossless codec (fourcc: FFV1)
@item Flash Screen Video v1  @tab  X  @tab  X
    @tab fourcc: FSV1
@item Flash Screen Video v2  @tab  X  @tab  X
@item Flash Video (FLV)      @tab  X  @tab  X
    @tab Sorenson H.263 used in Flash
@item Forward Uncompressed   @tab     @tab  X
@item Fraps                  @tab     @tab  X
@item Go2Meeting             @tab     @tab  X
    @tab fourcc: G2M2, G2M3
@item Go2Webinar             @tab     @tab  X
    @tab fourcc: G2M4
@item H.261                  @tab  X  @tab  X
@item H.263 / H.263-1996     @tab  X  @tab  X
@item H.263+ / H.263-1998 / H.263 version 2  @tab  X  @tab  X
@item H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10  @tab  E  @tab  X
    @tab encoding supported through external library libx264 and OpenH264
@item HEVC                   @tab  X  @tab  X
    @tab encoding supported through external library libx265 and libkvazaar
@item HNM version 4          @tab     @tab  X
@item HuffYUV                @tab  X  @tab  X
@item HuffYUV FFmpeg variant @tab  X  @tab  X
@item IBM Ultimotion         @tab     @tab  X
    @tab fourcc: ULTI
@item id Cinematic video     @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 interleaved 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 4          @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 J2K @tab  X  @tab  X
@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 Lagarith               @tab     @tab  X
@item LCL (LossLess Codec Library) MSZH  @tab     @tab  X
@item LCL (LossLess Codec Library) ZLIB  @tab  E  @tab  E
@item LOCO                   @tab     @tab  X
@item LucasArts SANM/Smush   @tab     @tab  X
    @tab Used in LucasArts games / SMUSH animations.
@item lossless MJPEG         @tab  X  @tab  X
@item Microsoft ATC Screen   @tab     @tab  X
    @tab Also known as Microsoft Screen 3.
@item Microsoft Expression Encoder Screen  @tab     @tab  X
    @tab Also known as Microsoft Titanium Screen 2.
@item Microsoft RLE          @tab     @tab  X
@item Microsoft Screen 1     @tab     @tab  X
    @tab Also known as Windows Media Video V7 Screen.
@item Microsoft Screen 2     @tab     @tab  X
    @tab Also known as Windows Media Video V9 Screen.
@item Microsoft Video 1      @tab     @tab  X
@item Mimic                  @tab     @tab  X
    @tab Used in MSN Messenger Webcam streams.
@item Miro VideoXL           @tab     @tab  X
    @tab fourcc: VIXL
@item MJPEG (Motion JPEG)    @tab  X  @tab  X
@item Mobotix MxPEG video    @tab     @tab  X
@item Motion Pixels video    @tab     @tab  X
@item MPEG-1 video           @tab  X  @tab  X
@item MPEG-2 video           @tab  X  @tab  X
@item MPEG-4 part 2          @tab  X  @tab  X
    @tab libxvidcore can be used alternatively for encoding.
@item MPEG-4 part 2 Microsoft variant version 1  @tab     @tab  X
@item MPEG-4 part 2 Microsoft variant version 2  @tab  X  @tab  X
@item MPEG-4 part 2 Microsoft variant version 3  @tab  X  @tab  X
@item Nintendo Gamecube THP video  @tab     @tab  X
@item NuppelVideo/RTjpeg     @tab     @tab  X
    @tab Video encoding used in NuppelVideo files.
@item On2 VP3                @tab     @tab  X
    @tab still experimental
@item On2 VP5                @tab     @tab  X
    @tab fourcc: VP50
@item On2 VP6                @tab     @tab  X
    @tab fourcc: VP60,VP61,VP62
@item On2 VP7                @tab     @tab  X
    @tab fourcc: VP70,VP71
@item VP8                    @tab  E  @tab  X
    @tab fourcc: VP80, encoding supported through external library libvpx
@item VP9                    @tab  E  @tab  X
    @tab encoding supported through external library libvpx
@item Pinnacle TARGA CineWave YUV16 @tab     @tab  X
    @tab fourcc: Y216
@item Prores                 @tab     @tab  X
    @tab fourcc: apch,apcn,apcs,apco
@item Q-team QPEG            @tab     @tab  X
    @tab fourccs: QPEG, Q1.0, Q1.1
@item QuickTime 8BPS video   @tab     @tab  X
@item QuickTime Animation (RLE) video  @tab  X  @tab  X
    @tab fourcc: 'rle '
@item QuickTime Graphics (SMC)  @tab     @tab  X
    @tab fourcc: 'smc '
@item QuickTime video (RPZA) @tab     @tab  X
    @tab fourcc: rpza
@item R10K AJA Kona 10-bit RGB Codec     @tab  X  @tab  X
@item R210 Quicktime Uncompressed RGB 10-bit     @tab  X  @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 RealVideo 3.0          @tab     @tab  X
    @tab still far from ideal
@item RealVideo 4.0          @tab     @tab  X
@item Renderware TXD (TeXture Dictionary)  @tab     @tab  X
    @tab Texture dictionaries used by the Renderware Engine.
@item RL2 video              @tab     @tab  X
    @tab used in some games by Entertainment Software Partners
@item Screenpresso           @tab     @tab  X
@item Sierra VMD video       @tab     @tab  X
    @tab Used in Sierra VMD files.
@item Silicon Graphics Motion Video Compressor 1 (MVC1)  @tab     @tab  X
@item Silicon Graphics Motion Video Compressor 2 (MVC2)  @tab     @tab  X
@item Silicon Graphics RLE 8-bit video  @tab     @tab  X
@item Smacker video          @tab     @tab  X
    @tab Video encoding used in Smacker.
@item SMPTE VC-1             @tab     @tab  X
@item Snow                   @tab  X  @tab  X
    @tab experimental wavelet codec (fourcc: SNOW)
@item Sony PlayStation MDEC (Motion DECoder)  @tab     @tab  X
@item Sorenson Vector Quantizer 1  @tab  X  @tab  X
    @tab fourcc: SVQ1
@item Sorenson Vector Quantizer 3  @tab     @tab  X
    @tab fourcc: SVQ3
@item Sunplus JPEG (SP5X)    @tab     @tab  X
    @tab fourcc: SP5X
@item TechSmith Screen Capture Codec  @tab     @tab  X
    @tab fourcc: TSCC
@item TechSmith Screen Capture Codec 2  @tab     @tab  X
    @tab fourcc: TSC2
@item Theora                 @tab  E  @tab  X
    @tab encoding supported through external library libtheora
@item Tiertex Limited SEQ video  @tab     @tab  X
    @tab Codec used in DOS CD-ROM FlashBack game.
@item Ut Video               @tab  X  @tab  X
@item v210 QuickTime uncompressed 4:2:2 10-bit     @tab  X  @tab  X
@item v308 QuickTime uncompressed 4:4:4            @tab  X  @tab  X
@item v408 QuickTime uncompressed 4:4:4:4          @tab  X  @tab  X
@item v410 QuickTime uncompressed 4:4:4 10-bit     @tab  X  @tab  X
@item VBLE Lossless Codec    @tab     @tab  X
@item VMware Screen Codec / VMware Video  @tab     @tab  X
    @tab Codec used in videos captured by VMware.
@item Westwood Studios VQA (Vector Quantized Animation) video  @tab     @tab  X
@item Windows Media Image    @tab     @tab  X
@item Windows Media Video 7  @tab  X  @tab  X
@item Windows Media Video 8  @tab  X  @tab  X
@item Windows Media Video 9  @tab     @tab  X
    @tab not completely working
@item Wing Commander III / Xan  @tab     @tab  X
    @tab Used in Wing Commander III .MVE files.
@item Wing Commander IV / Xan  @tab     @tab  X
    @tab Used in Wing Commander IV.
@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 yuv4                   @tab  X  @tab  X
    @tab libquicktime uncompressed packed 4:2:0
@item ZeroCodec Lossless 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
    @tab Encoder works only in PAL8.
@end multitable

@code{X} means that encoding (resp. decoding) is supported.

@code{E} means that support is provided through an external library.

@section Audio Codecs

@multitable @columnfractions .4 .1 .1 .4
@item Name @tab Encoding @tab Decoding @tab Comments
@item 8SVX exponential       @tab     @tab  X
@item 8SVX fibonacci         @tab     @tab  X
@item AAC                    @tab EX  @tab  X
    @tab encoding supported through internal encoder and external libraries libfaac and libfdk-aac
@item AAC+                   @tab  E  @tab  IX
    @tab encoding supported through external library libfdk-aac
@item AC-3                   @tab IX  @tab  IX
@item ADPCM 4X Movie         @tab     @tab  X
@item APDCM Yamaha AICA      @tab     @tab  X
@item ADPCM CDROM XA         @tab     @tab  X
@item ADPCM Creative Technology @tab     @tab  X
    @tab 16 -> 4, 8 -> 4, 8 -> 3, 8 -> 2
@item ADPCM Electronic Arts  @tab     @tab  X
    @tab Used in various EA titles.
@item ADPCM Electronic Arts Maxis CDROM XS  @tab     @tab  X
    @tab Used in Sim City 3000.
@item ADPCM Electronic Arts R1  @tab     @tab  X
@item ADPCM Electronic Arts R2  @tab     @tab  X
@item ADPCM Electronic Arts R3  @tab     @tab  X
@item ADPCM Electronic Arts XAS @tab     @tab  X
@item ADPCM G.722            @tab  X  @tab  X
@item ADPCM G.726            @tab  X  @tab  X
@item ADPCM IMA AMV          @tab     @tab  X
    @tab Used in AMV files
@item ADPCM IMA Electronic Arts EACS  @tab     @tab  X
@item ADPCM IMA Electronic Arts SEAD  @tab     @tab  X
@item ADPCM IMA Funcom       @tab     @tab  X
@item ADPCM IMA QuickTime    @tab  X  @tab  X
@item ADPCM IMA Loki SDL MJPEG  @tab     @tab  X
@item ADPCM IMA WAV          @tab  X  @tab  X
@item ADPCM IMA Westwood     @tab     @tab  X
@item ADPCM ISS IMA          @tab     @tab  X
    @tab Used in FunCom games.
@item ADPCM IMA Dialogic     @tab     @tab  X
@item ADPCM IMA Duck DK3     @tab     @tab  X
    @tab Used in some Sega Saturn console games.
@item ADPCM IMA Duck DK4     @tab     @tab  X
    @tab Used in some Sega Saturn console games.
@item ADPCM IMA Radical      @tab     @tab  X
@item ADPCM Microsoft        @tab  X  @tab  X
@item ADPCM MS IMA           @tab  X  @tab  X
@item ADPCM Nintendo Gamecube AFC  @tab     @tab  X
@item ADPCM Nintendo Gamecube DTK  @tab     @tab  X
@item ADPCM Nintendo THP  @tab     @tab  X
@item APDCM Playstation      @tab     @tab  X
@item ADPCM QT IMA           @tab  X  @tab  X
@item ADPCM SEGA CRI ADX     @tab  X  @tab  X
    @tab Used in Sega Dreamcast games.
@item ADPCM Shockwave Flash  @tab  X  @tab  X
@item ADPCM Sound Blaster Pro 2-bit  @tab     @tab  X
@item ADPCM Sound Blaster Pro 2.6-bit  @tab     @tab  X
@item ADPCM Sound Blaster Pro 4-bit  @tab     @tab  X
@item ADPCM VIMA             @tab     @tab  X
    @tab Used in LucasArts SMUSH animations.
@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  X
    @tab encoding supported through external library libopencore-amrnb
@item AMR-WB                 @tab  E  @tab  X
    @tab encoding supported through external library libvo-amrwbenc
@item Amazing Studio PAF Audio @tab     @tab  X
@item Apple lossless audio   @tab  X  @tab  X
    @tab QuickTime fourcc 'alac'
@item ATRAC1                 @tab     @tab  X
@item ATRAC3                 @tab     @tab  X
@item ATRAC3+                @tab     @tab  X
@item Bink Audio             @tab     @tab  X
    @tab Used in Bink and Smacker files in many games.
@item CELT                   @tab     @tab  E
    @tab decoding supported through external library libcelt
@item Delphine Software International CIN audio  @tab     @tab  X
    @tab Codec used in Delphine Software International games.
@item Digital Speech Standard - Standard Play mode (DSS SP) @tab     @tab  X
@item Discworld II BMV Audio @tab     @tab  X
@item COOK                   @tab     @tab  X
    @tab All versions except 5.1 are supported.
@item DCA (DTS Coherent Acoustics)  @tab  X  @tab  X
    @tab supported extensions: XCh, XLL (partially)
@item DPCM id RoQ            @tab  X  @tab  X
    @tab Used in Quake III, Jedi Knight 2 and other computer games.
@item DPCM Interplay         @tab     @tab  X
    @tab Used in various Interplay computer games.
@item DPCM Squareroot-Delta-Exact  @tab  @tab  X
    @tab Used in various games.
@item DPCM Sierra Online     @tab     @tab  X
    @tab Used in Sierra Online game audio files.
@item DPCM Sol               @tab     @tab  X
@item DPCM Xan               @tab     @tab  X
    @tab Used in Origin's Wing Commander IV AVI files.
@item DSD (Direct Stream Digitial), least significant bit first  @tab  @tab  X
@item DSD (Direct Stream Digitial), most significant bit first   @tab  @tab  X
@item DSD (Direct Stream Digitial), least significant bit first, planar  @tab  @tab  X
@item DSD (Direct Stream Digitial), most significant bit first, planar   @tab  @tab  X
@item DSP Group TrueSpeech   @tab     @tab  X
@item DV audio               @tab     @tab  X
@item Enhanced AC-3          @tab  X  @tab  X
@item EVRC (Enhanced Variable Rate Codec) @tab     @tab  X
@item FLAC (Free Lossless Audio Codec)  @tab  X  @tab  IX
@item G.723.1                @tab X   @tab  X
@item G.729                  @tab     @tab  X
@item GSM                    @tab  E  @tab  X
    @tab encoding supported through external library libgsm
@item GSM Microsoft variant  @tab  E  @tab  X
    @tab encoding supported through external library libgsm
@item IAC (Indeo Audio Coder)  @tab     @tab  X
@item iLBC (Internet Low Bitrate Codec) @tab  E  @tab  E
    @tab encoding and decoding supported through external library libilbc
@item IMC (Intel Music Coder)  @tab     @tab  X
@item Interplay ACM            @tab     @tab  X
@item MACE (Macintosh Audio Compression/Expansion) 3:1  @tab     @tab  X
@item MACE (Macintosh Audio Compression/Expansion) 6:1  @tab     @tab  X
@item MLP (Meridian Lossless Packing)  @tab     @tab  X
    @tab Used in DVD-Audio discs.
@item Monkey's Audio         @tab     @tab  X
@item MP1 (MPEG audio layer 1)  @tab     @tab IX
@item MP2 (MPEG audio layer 2)  @tab IX  @tab IX
    @tab encoding supported also through external library TwoLAME
@item MP3 (MPEG audio layer 3)  @tab  E  @tab IX
    @tab encoding supported through external library LAME, ADU MP3 and MP3onMP4 also supported
@item MPEG-4 Audio Lossless Coding (ALS)  @tab     @tab  X
@item Musepack SV7           @tab     @tab  X
@item Musepack SV8           @tab     @tab  X
@item Nellymoser Asao        @tab  X  @tab  X
@item On2 AVC (Audio for Video Codec) @tab     @tab  X
@item Opus                   @tab  E  @tab  X
    @tab encoding supported through external library libopus
@item PCM A-law              @tab  X  @tab  X
@item PCM mu-law             @tab  X  @tab  X
@item PCM signed 8-bit planar  @tab  X  @tab  X
@item PCM signed 16-bit big-endian planar  @tab  X  @tab  X
@item PCM signed 16-bit little-endian planar  @tab  X  @tab  X
@item PCM signed 24-bit little-endian planar  @tab  X  @tab  X
@item PCM signed 32-bit little-endian planar  @tab  X  @tab  X
@item PCM 32-bit floating point big-endian  @tab  X  @tab  X
@item PCM 32-bit floating point little-endian  @tab  X  @tab  X
@item PCM 64-bit floating point big-endian  @tab  X  @tab  X
@item PCM 64-bit floating point little-endian  @tab  X  @tab  X
@item PCM D-Cinema audio signed 24-bit   @tab  X  @tab  X
@item PCM signed 8-bit       @tab  X  @tab  X
@item PCM signed 16-bit big-endian  @tab  X  @tab  X
@item PCM signed 16-bit little-endian  @tab  X  @tab  X
@item PCM signed 24-bit big-endian  @tab  X  @tab  X
@item PCM signed 24-bit little-endian  @tab  X  @tab  X
@item PCM signed 32-bit big-endian  @tab  X  @tab  X
@item PCM signed 32-bit little-endian  @tab  X  @tab  X
@item PCM signed 16/20/24-bit big-endian in MPEG-TS  @tab     @tab  X
@item PCM unsigned 8-bit     @tab  X  @tab  X
@item PCM unsigned 16-bit big-endian  @tab  X  @tab  X
@item PCM unsigned 16-bit little-endian  @tab  X  @tab  X
@item PCM unsigned 24-bit big-endian  @tab  X  @tab  X
@item PCM unsigned 24-bit little-endian  @tab  X  @tab  X
@item PCM unsigned 32-bit big-endian  @tab  X  @tab  X
@item PCM unsigned 32-bit little-endian  @tab  X  @tab  X
@item PCM Zork               @tab     @tab  X
@item QCELP / PureVoice      @tab     @tab  X
@item QDesign Music Codec 2  @tab     @tab  X
    @tab There are still some distortions.
@item RealAudio 1.0 (14.4K)  @tab  X  @tab  X
    @tab Real 14400 bit/s codec
@item RealAudio 2.0 (28.8K)  @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 Lossless     @tab     @tab  X
@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.
@item Smacker audio          @tab     @tab  X
@item SMPTE 302M AES3 audio  @tab  X  @tab  X
@item Sonic                  @tab  X  @tab  X
    @tab experimental codec
@item Sonic lossless         @tab  X  @tab  X
    @tab experimental codec
@item Speex                  @tab  E  @tab  E
    @tab supported through external library libspeex
@item TAK (Tom's lossless Audio Kompressor)  @tab     @tab  X
@item True Audio (TTA)       @tab  X  @tab  X
@item TrueHD                 @tab     @tab  X
    @tab Used in HD-DVD and Blu-Ray discs.
@item TwinVQ (VQF flavor)    @tab     @tab  X
@item VIMA                   @tab     @tab  X
    @tab Used in LucasArts SMUSH animations.
@item Vorbis                 @tab  E  @tab  X
    @tab A native but very primitive encoder exists.
@item Voxware MetaSound      @tab     @tab  X
@item WavPack                @tab  X  @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 Lossless @tab  @tab  X
@item Windows Media Audio Pro @tab    @tab  X
@item Windows Media Audio Voice @tab  @tab  X
@item Xbox Media Audio 1     @tab     @tab  X
@item Xbox Media Audio 2     @tab     @tab  X
@end multitable

@code{X} means that encoding (resp. decoding) is supported.

@code{E} means that support is provided through an external library.

@code{I} means that an integer-only version is available, too (ensures high
performance on systems without hardware floating point support).

@section Subtitle Formats

@multitable @columnfractions .4 .1 .1 .1 .1
@item Name @tab Muxing @tab Demuxing @tab Encoding @tab Decoding
@item 3GPP Timed Text  @tab   @tab   @tab X @tab X
@item AQTitle          @tab   @tab X @tab   @tab X
@item DVB              @tab X @tab X @tab X @tab X
@item DVB teletext     @tab   @tab X @tab   @tab E
@item DVD              @tab X @tab X @tab X @tab X
@item JACOsub          @tab X @tab X @tab   @tab X
@item MicroDVD         @tab X @tab X @tab   @tab X
@item MPL2             @tab   @tab X @tab   @tab X
@item MPsub (MPlayer)  @tab   @tab X @tab   @tab X
@item PGS              @tab   @tab   @tab   @tab X
@item PJS (Phoenix)    @tab   @tab X @tab   @tab X
@item RealText         @tab   @tab X @tab   @tab X
@item SAMI             @tab   @tab X @tab   @tab X
@item Spruce format (STL) @tab   @tab X @tab   @tab X
@item SSA/ASS          @tab X @tab X @tab X @tab X
@item SubRip (SRT)     @tab X @tab X @tab X @tab X
@item SubViewer v1     @tab   @tab X @tab   @tab X
@item SubViewer        @tab   @tab X @tab   @tab X
@item TED Talks captions @tab @tab X @tab   @tab X
@item VobSub (IDX+SUB) @tab   @tab X @tab   @tab X
@item VPlayer          @tab   @tab X @tab   @tab X
@item WebVTT           @tab X @tab X @tab X @tab X
@item XSUB             @tab   @tab   @tab X @tab X
@end multitable

@code{X} means that the feature is supported.

@code{E} means that support is provided through an external library.

@section Network Protocols

@multitable @columnfractions .4 .1
@item Name         @tab Support
@item file         @tab X
@item FTP          @tab X
@item Gopher       @tab X
@item HLS          @tab X
@item HTTP         @tab X
@item HTTPS        @tab X
@item Icecast      @tab X
@item MMSH         @tab X
@item MMST         @tab X
@item pipe         @tab X
@item RTMP         @tab X
@item RTMPE        @tab X
@item RTMPS        @tab X
@item RTMPT        @tab X
@item RTMPTE       @tab X
@item RTMPTS       @tab X
@item RTP          @tab X
@item SAMBA        @tab E
@item SCTP         @tab X
@item SFTP         @tab E
@item TCP          @tab X
@item TLS          @tab X
@item UDP          @tab X
@end multitable

@code{X} means that the protocol is supported.

@code{E} means that support is provided through an external library.


@section Input/Output Devices

@multitable @columnfractions .4 .1 .1
@item Name              @tab Input  @tab Output
@item ALSA              @tab X      @tab X
@item BKTR              @tab X      @tab
@item caca              @tab        @tab X
@item DV1394            @tab X      @tab
@item Lavfi virtual device @tab X   @tab
@item Linux framebuffer @tab X      @tab X
@item JACK              @tab X      @tab
@item LIBCDIO           @tab X
@item LIBDC1394         @tab X      @tab
@item OpenAL            @tab X
@item OpenGL            @tab        @tab X
@item OSS               @tab X      @tab X
@item PulseAudio        @tab X      @tab X
@item SDL               @tab        @tab X
@item Video4Linux2      @tab X      @tab X
@item VfW capture       @tab X      @tab
@item X11 grabbing      @tab X      @tab
@item Win32 grabbing    @tab X      @tab
@end multitable

@code{X} means that input/output is supported.

@section Timecode

@multitable @columnfractions .4 .1 .1
@item Codec/format      @tab Read   @tab Write
@item AVI               @tab X      @tab X
@item DV                @tab X      @tab X
@item GXF               @tab X      @tab X
@item MOV               @tab X      @tab X
@item MPEG1/2           @tab X      @tab X
@item MXF               @tab X      @tab X
@end multitable

@bye
