General Documentation
Table of Contents
1 External libraries
1.1 Alliance for Open Media (AOM)
1.2 AMD AMF/VCE
1.3 AviSynth
1.4 Chromaprint
1.5 codec2
1.6 dav1d
1.7 davs2
1.8 uavs3d
1.9 Game Music Emu
1.10 Intel QuickSync Video
1.11 Kvazaar
1.12 LAME
1.13 LCEVCdec
1.14 libilbc
1.15 libjxl
1.16 libvpx
1.17 ModPlug
1.18 OpenCORE, VisualOn, and Fraunhofer libraries
1.18.1 OpenCORE AMR
1.18.2 VisualOn AMR-WB encoder library
1.18.3 Fraunhofer AAC library
1.18.4 Fraunhofer MPEG-H 3D Audio decoder library
1.18.5 LC3 library
1.19 OpenH264
1.20 OpenJPEG
1.21 rav1e
1.22 SVT-AV1
1.23 SVT-JPEG-XS
1.24 TwoLAME
1.25 VapourSynth
1.26 x264
1.27 x265
1.28 xavs
1.29 xavs2
1.30 eXtra-fast Essential Video Encoder (XEVE)
1.31 eXtra-fast Essential Video Decoder (XEVD)
1.32 ZVBI
2 Supported File Formats, Codecs or Features
2.1 File Formats
2.2 Image Formats
2.3 Video Codecs
2.4 Audio Codecs
2.5 Subtitle Formats
2.6 Network Protocols
2.7 Input/Output Devices
2.8 Timecode
1 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
./configure
1.1 Alliance for Open Media (AOM)
FFmpeg can make use of the AOM library for AV1 decoding and encoding.
Go to
and follow the instructions for
installing the library. Then pass
--enable-libaom
to configure to
enable it.
1.2 AMD AMF/VCE
FFmpeg can use the AMD Advanced Media Framework library
for accelerated H.264 and HEVC(only windows) encoding on hardware with Video Coding Engine (VCE).
To enable support you must obtain the AMF framework header files(version 1.4.9+) from
Create an
AMF/
directory in the system include path.
Copy the contents of
AMF/amf/public/include/
into that directory.
Then configure FFmpeg with
--enable-amf
Initialization of amf encoder occurs in this order:
1) trying to initialize through dx11(only windows)
2) trying to initialize through dx9(only windows)
3) trying to initialize through vulkan
To use h.264(AMD VCE) encoder on linux amdgru-pro version 19.20+ and amf-amdgpu-pro
package(amdgru-pro contains, but does not install automatically) are required.
This driver can be installed using amdgpu-pro-install script in official amd driver archive.
1.3 AviSynth
FFmpeg can read AviSynth scripts as input. To enable support, pass
--enable-avisynth
to configure after installing the headers
provided by
AviSynth+
AviSynth+ can be configured to install only the headers by either
passing
-DHEADERS_ONLY:bool=on
to the normal CMake-based build
system, or by using the supplied
GNUmakefile
For Windows, supported AviSynth variants are
AviSynth 2.6 RC1 or higher
for 32-bit builds and
AviSynth+ r1718 or higher
for 32-bit and 64-bit builds.
For Linux, macOS, and BSD, the only supported AviSynth variant is
AviSynth+
, starting with version 3.5.
In 2016, AviSynth+ added support for building with GCC. However, due to
the eccentricities of Windows’ calling conventions, 32-bit GCC builds
of AviSynth+ are not compatible with typical 32-bit builds of FFmpeg.
By default, FFmpeg assumes compatibility with 32-bit MSVC builds of
AviSynth+ since that is the most widely-used and entrenched build
configuration. Users can override this and enable support for 32-bit
GCC builds of AviSynth+ by passing
-DAVSC_WIN32_GCC32
to
--extra-cflags
when configuring FFmpeg.
64-bit builds of FFmpeg are not affected, and can use either MSVC or
GCC builds of AviSynth+ without any special flags.
AviSynth(+) is loaded dynamically. Distributors can build FFmpeg
with
--enable-avisynth
, and the binaries will work regardless
of the end user having AviSynth installed. If/when an end user
would like to use AviSynth scripts, then they can install AviSynth(+)
and FFmpeg will be able to find and use it to open scripts.
1.4 Chromaprint
FFmpeg can make use of the Chromaprint library for generating audio fingerprints.
Pass
--enable-chromaprint
to configure to
enable it. See
1.5 codec2
FFmpeg can make use of the codec2 library for codec2 decoding and encoding.
There is currently no native decoder, so libcodec2 must be used for decoding.
Go to
, download "Codec 2 source archive".
Build and install using CMake. Debian users can install the libcodec2-dev package instead.
Once libcodec2 is installed you can pass
--enable-libcodec2
to configure to enable it.
The easiest way to use codec2 is with .c2 files, since they contain the mode information required for decoding.
To encode such a file, use a .c2 file extension and give the libcodec2 encoder the -mode option:
ffmpeg -i input.wav -mode 700C output.c2
Playback is as simple as
ffplay output.c2
For a list of supported modes, run
ffmpeg -h encoder=libcodec2
Raw codec2 files are also supported.
To make sense of them the mode in use needs to be specified as a format option:
ffmpeg -f codec2raw -mode 1300 -i input.raw output.wav
1.6 dav1d
FFmpeg can make use of the dav1d library for AV1 video decoding.
Go to
and follow the instructions for
installing the library. Then pass
--enable-libdav1d
to configure to enable it.
1.7 davs2
FFmpeg can make use of the davs2 library for AVS2-P2/IEEE1857.4 video decoding.
Go to
and follow the instructions for
installing the library. Then pass
--enable-libdavs2
to configure to
enable it.
libdavs2 is under the GNU Public License Version 2 or later
(see
for
details), you must upgrade FFmpeg’s license to GPL in order to use it.
1.8 uavs3d
FFmpeg can make use of the uavs3d library for AVS3-P2/IEEE1857.10 video decoding.
Go to
and follow the instructions for
installing the library. Then pass
--enable-libuavs3d
to configure to
enable it.
1.9 Game Music Emu
FFmpeg can make use of the Game Music Emu library to read audio from supported video game
music file formats. Pass
--enable-libgme
to configure to
enable it. See
1.10 Intel QuickSync Video
FFmpeg can use Intel QuickSync Video (QSV) for accelerated decoding and encoding
of multiple codecs. To use QSV, FFmpeg must be linked against the
libmfx
dispatcher, which loads the actual decoding libraries.
The dispatcher is open source and can be downloaded from
. FFmpeg needs to be configured
with the
--enable-libmfx
option and
pkg-config
needs to be able to
locate the dispatcher’s
.pc
files.
1.11 Kvazaar
FFmpeg can make use of the Kvazaar library for HEVC encoding.
Go to
and follow the
instructions for installing the library. Then pass
--enable-libkvazaar
to configure to enable it.
1.12 LAME
FFmpeg can make use of the LAME library for MP3 encoding.
Go to
and follow the
instructions for installing the library.
Then pass
--enable-libmp3lame
to configure to enable it.
1.13 LCEVCdec
FFmpeg can make use of the liblcevc_dec library for LCEVC enhancement layer
decoding on supported bitstreams.
Go to
and follow the instructions
for installing the library. Then pass
--enable-liblcevc-dec
to configure to
enable it.
LCEVCdec is under the BSD-3-Clause-Clear License.
1.14 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 decoding and encoding.
Go to
and follow the instructions for
installing the library. Then pass
--enable-libilbc
to configure to
enable it.
1.15 libjxl
JPEG XL is an image format intended to fully replace legacy JPEG for an extended
period of life. See
for more information, and see
for the library source. You can pass
--enable-libjxl
to configure in order enable the libjxl wrapper.
1.16 libvpx
FFmpeg can make use of the libvpx library for VP8/VP9 decoding and encoding.
Go to
and follow the instructions for
installing the library. Then pass
--enable-libvpx
to configure to
enable it.
1.17 ModPlug
FFmpeg can make use of this library, originating in Modplug-XMMS, to read from MOD-like music files.
See
. Pass
--enable-libmodplug
to configure to
enable it.
1.18 OpenCORE, VisualOn, and Fraunhofer libraries
Spun off Google Android sources, OpenCore, VisualOn and Fraunhofer
libraries provide encoders for a number of audio codecs.
OpenCORE and VisualOn libraries are under the Apache License 2.0
(see
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
--enable-version3
to configure in
order to use it.
The license of the Fraunhofer AAC library is incompatible with the GPL.
Therefore, for GPL builds, you have to pass
--enable-nonfree
to
configure in order to use it. To the best of our knowledge, it is
compatible with the LGPL.
1.18.1 OpenCORE AMR
FFmpeg can make use of the OpenCORE libraries for AMR-NB
decoding/encoding and AMR-WB decoding.
Go to
and follow the
instructions for installing the libraries.
Then pass
--enable-libopencore-amrnb
and/or
--enable-libopencore-amrwb
to configure to enable them.
1.18.2 VisualOn AMR-WB encoder library
FFmpeg can make use of the VisualOn AMR-WBenc library for AMR-WB encoding.
Go to
and follow the
instructions for installing the library.
Then pass
--enable-libvo-amrwbenc
to configure to enable it.
1.18.3 Fraunhofer AAC library
FFmpeg can make use of the Fraunhofer AAC library for AAC decoding & encoding.
Go to
and follow the
instructions for installing the library.
Then pass
--enable-libfdk-aac
to configure to enable it.
1.18.4 Fraunhofer MPEG-H 3D Audio decoder library
FFmpeg can make use of the Fraunhofer MPEG-H decoder library for MPEG-H 3DA decoding.
Go to
and follow the
instructions for installing the library.
Then pass
--enable-libmpeghdec --enable-nonfree
to configure to enable it.
1.18.5 LC3 library
FFmpeg can make use of the Google LC3 library for LC3 decoding & encoding.
Go to
and follow the instructions for
installing the library.
Then pass
--enable-liblc3
to configure to enable it.
1.19 OpenH264
FFmpeg can make use of the OpenH264 library for H.264 decoding and encoding.
Go to
and follow the instructions for
installing the library. Then pass
--enable-libopenh264
to configure to
enable it.
For decoding, this library is much more limited than the built-in decoder
in libavcodec; currently, this library lacks support for decoding B-frames
and some other main/high profile features. (It currently only supports
constrained baseline profile and CABAC.) Using it is mostly useful for
testing and for taking advantage of Cisco’s patent portfolio license
).
1.20 OpenJPEG
FFmpeg can use the OpenJPEG libraries for decoding/encoding J2K videos. Go to
to get the libraries and follow the installation
instructions. To enable using OpenJPEG in FFmpeg, pass
--enable-libopenjpeg
to
./configure
1.21 rav1e
FFmpeg can make use of rav1e (Rust AV1 Encoder) via its C bindings to encode videos.
Go to
and follow the instructions to build
the C library. To enable using rav1e in FFmpeg, pass
--enable-librav1e
to
./configure
1.22 SVT-AV1
FFmpeg can make use of the Scalable Video Technology for AV1 library for AV1 encoding.
Go to
and follow the instructions
for installing the library. Then pass
--enable-libsvtav1
to configure to
enable it.
1.23 SVT-JPEG-XS
FFmpeg can make use of the Scalable Video Technology for JPEG-XS library for JPEG-XS
decoding and encoding.
Go to
and follow the instructions
for installing the library. Then pass
--enable-libsvtjpegxs
to configure to
enable it.
1.24 TwoLAME
FFmpeg can make use of the TwoLAME library for MP2 encoding.
Go to
and follow the
instructions for installing the library.
Then pass
--enable-libtwolame
to configure to enable it.
1.25 VapourSynth
FFmpeg can read VapourSynth scripts as input. To enable support, pass
--enable-vapoursynth
to configure. Vapoursynth is detected via
pkg-config
. Versions 42 or greater supported.
See
Due to security concerns, Vapoursynth scripts will not
be autodetected so the input format has to be forced. For ff* CLI tools,
add
-f vapoursynth
before the input
-i yourscript.vpy
1.26 x264
FFmpeg can make use of the x264 library for H.264 encoding.
Go to
and follow the
instructions for installing the library. Then pass
--enable-libx264
to
configure to enable it.
x264 is under the GNU Public License Version 2 or later
(see
for
details), you must upgrade FFmpeg’s license to GPL in order to use it.
1.27 x265
FFmpeg can make use of the x265 library for HEVC encoding.
Go to
and follow the instructions
for installing the library. Then pass
--enable-libx265
to configure
to enable it.
x265 is under the GNU Public License Version 2 or later
(see
for
details), you must upgrade FFmpeg’s license to GPL in order to use it.
1.28 xavs
FFmpeg can make use of the xavs library for AVS encoding.
Go to
and follow the instructions for
installing the library. Then pass
--enable-libxavs
to configure to
enable it.
1.29 xavs2
FFmpeg can make use of the xavs2 library for AVS2-P2/IEEE1857.4 video encoding.
Go to
and follow the instructions for
installing the library. Then pass
--enable-libxavs2
to configure to
enable it.
libxavs2 is under the GNU Public License Version 2 or later
(see
for
details), you must upgrade FFmpeg’s license to GPL in order to use it.
1.30 eXtra-fast Essential Video Encoder (XEVE)
FFmpeg can make use of the XEVE library for EVC video encoding.
Go to
and follow the instructions for
installing the XEVE library. Then pass
--enable-libxeve
to configure to
enable it.
1.31 eXtra-fast Essential Video Decoder (XEVD)
FFmpeg can make use of the XEVD library for EVC video decoding.
Go to
and follow the instructions for
installing the XEVD library. Then pass
--enable-libxevd
to configure to
enable it.
1.32 ZVBI
ZVBI is a VBI decoding library which can be used by FFmpeg to decode DVB
teletext pages and DVB teletext subtitles.
Go to
and follow the instructions for
installing the library. Then pass
--enable-libzvbi
to configure to
enable it.
2 Supported File Formats, Codecs or Features
You can use the
-formats
and
-codecs
options to have an exhaustive list.
2.1 File Formats
FFmpeg supports the following file formats through the
libavformat
library:
Name
Encoding
Decoding
Comments
3dostr
4xm
4X Technologies format, used in some games.
8088flex TMV
AAX
Audible Enhanced Audio format, used in audiobooks.
AA
Audible Format 2, 3, and 4, used in audiobooks.
ACT Voice
contains G.729 audio
Adobe Filmstrip
Audio IFF (AIFF)
American Laser Games MM
Multimedia format used in games like Mad Dog McCree.
3GPP AMR
Amazing Studio Packed Animation File
Multimedia format used in game Heart Of Darkness.
Apple HTTP Live Streaming
Artworx Data Format
Interplay ACM
Audio only format used in some Interplay games.
ADP
Audio format used on the Nintendo Gamecube.
AFC
Audio format used on the Nintendo Gamecube.
ADS/SS2
Audio format used on the PS2.
APNG
ASF
Advanced / Active Streaming Format.
AST
Audio format used on the Nintendo Wii.
AVI
AviSynth
AVR
Audio format used on Mac.
AVS
Multimedia format used by the Creature Shock game.
Beam Software SIFF
Audio and video format used in some games by Beam Software.
Bethesda Softworks VID
Used in some games from Bethesda Softworks.
Binary text
Bink
Multimedia format used by many games.
Bink Audio
Audio only multimedia format used by some games.
Bitmap Brothers JV
Used in Z and Z95 games.
BRP
Argonaut Games format.
Brute Force & Ignorance
Used in the game Flash Traffic: City of Angels.
BFSTM
Audio format used on the Nintendo WiiU (based on BRSTM).
BRSTM
Audio format used on the Nintendo Wii.
BW64
Broadcast Wave 64bit.
BWF
codec2 (raw)
Must be given -mode format option to decode correctly.
codec2 (.c2 files)
Contains header with version and mode info, simplifying playback.
CRI ADX
Audio-only format used in console video games.
CRI AIX
CRI HCA
Audio-only format used in console video games.
Discworld II BMV
Interplay C93
Used in the game Cyberia from Interplay.
Delphine Software International CIN
Multimedia format used by Delphine Software games.
Digital Speech Standard (DSS)
CD+G
Video format used by CD+G karaoke disks
Phantom Cine
Commodore CDXL
Amiga CD video format
Core Audio Format
Apple Core Audio Format
CRC testing format
Creative Voice
Created for the Sound Blaster Pro.
CRYO APC
Audio format used in some games by CRYO Interactive Entertainment.
D-Cinema audio
Deluxe Paint Animation
DCSTR
DFA
This format is used in Chronomaster game
DirectDraw Surface
DSD Stream File (DSF)
DV video
DXA
This format is used in the non-Windows version of the Feeble Files
game and different game cutscenes repacked for use with ScummVM.
Electronic Arts cdata
Electronic Arts Multimedia
Used in various EA games; files have extensions like WVE and UV2.
Ensoniq Paris Audio File
FFM (FFserver live feed)
Flash (SWF)
Flash 9 (AVM2)
Only embedded audio is decoded.
FLI/FLC/FLX animation
.fli/.flc files
Flash Video (FLV)
Macromedia Flash video files
framecrc testing format
FunCom ISS
Audio format used in various games from FunCom like The Longest Journey.
G.723.1
G.726
Both left- and right-justified.
G.729 BIT
G.729 raw
GENH
Audio format for various games.
GIF Animation
GXF
General eXchange Format SMPTE 360M, used by Thomson Grass Valley
playout servers.
HNM
Only version 4 supported, used in some games from Cryo Interactive
iCEDraw File
ICO
Microsoft Windows ICO
id Quake II CIN video
id RoQ
Used in Quake III, Jedi Knight 2 and other computer games.
IEC61937 encapsulation
IFF
Interchange File Format
IFV
A format used by some old CCTV DVRs.
iLBC
Interplay MVE
Format used in various Interplay computer games.
Iterated Systems ClearVideo
I-frames only
IV8
A format generated by IndigoVision 8000 video server.
IVF (On2)
A format used by libvpx
Internet Video Recording
IRCAM
LAF
Limitless Audio Format
LATM
LMLM4
Used by Linux Media Labs MPEG-4 PCI boards
LOAS
contains LATM multiplexed AAC audio
LRC
LVF
LXF
VR native stream format, used by Leitch/Harris’ video servers.
Magic Lantern Video (MLV)
Matroska
Matroska audio
FFmpeg metadata
Metadata in text format.
MAXIS XA
Used in Sim City 3000; file extension .xa.
MCA
Used in some games from Capcom; file extension .mca.
MD Studio
Metal Gear Solid: The Twin Snakes
Megalux Frame
Used by Megalux Ultimate Paint
MobiClip MODS
MobiClip MOFLEX
Mobotix .mxg
Monkey’s Audio
Motion Pixels MVI
MOV/QuickTime/MP4
3GP, 3GP2, PSP, iPod variants supported
MP2
MP3
MPEG-1 System
muxed audio and video, VCD format supported
MPEG-PS (program stream)
also known as
VOB
file, SVCD and DVD format supported
MPEG-TS (transport stream)
also known as DVB Transport Stream
MPEG-4
MPEG-4 is a variant of QuickTime.
MSF
Audio format used on the PS3.
Mirillis FIC video
No cursor rendering.
MIDI Sample Dump Standard
MIME multipart JPEG
MSN TCP webcam
Used by MSN Messenger webcam streams.
MTV
Musepack
Musepack SV8
Material eXchange Format (MXF)
SMPTE 377M, used by D-Cinema, broadcast industry.
Material eXchange Format (MXF), D-10 Mapping
SMPTE 386M, D-10/IMX Mapping.
NC camera feed
NC (AVIP NC4600) camera streams
NIST SPeech HEader REsources
Computerized Speech Lab NSP
NTT TwinVQ (VQF)
Nippon Telegraph and Telephone Corporation TwinVQ.
Nullsoft Streaming Video
NuppelVideo
NUT
NUT Open Container Format
Ogg
Playstation Portable PMP
Portable Voice Format
RK Audio (RKA)
TechnoTrend PVA
Used by TechnoTrend DVB PCI boards.
QCP
raw ADTS (AAC)
raw AC-3
raw AMR-NB
raw AMR-WB
raw APAC
raw APV
raw aptX
raw aptX HD
raw Bonk
raw Chinese AVS video
raw DFPWM
raw Dirac
raw DNxHD
raw DTS
raw DTS-HD
raw E-AC-3
raw EVC
raw FLAC
raw G.728
raw GSM
raw H.261
raw H.263
raw H.264
raw HEVC
raw Ingenient MJPEG
raw MJPEG
raw MLP
raw MPEG
raw MPEG-1
raw MPEG-2
raw MPEG-4
raw NULL
raw video
raw id RoQ
raw OBU
raw OSQ
raw SBC
raw Shorten
raw TAK
raw TrueHD
raw VC-1
raw PCM A-law
raw PCM mu-law
raw PCM Archimedes VIDC
raw PCM signed 8 bit
raw PCM signed 16 bit big-endian
raw PCM signed 16 bit little-endian
raw PCM signed 24 bit big-endian
raw PCM signed 24 bit little-endian
raw PCM signed 32 bit big-endian
raw PCM signed 32 bit little-endian
raw PCM signed 64 bit big-endian
raw PCM signed 64 bit little-endian
raw PCM unsigned 8 bit
raw PCM unsigned 16 bit big-endian
raw PCM unsigned 16 bit little-endian
raw PCM unsigned 24 bit big-endian
raw PCM unsigned 24 bit little-endian
raw PCM unsigned 32 bit big-endian
raw PCM unsigned 32 bit little-endian
raw PCM 16.8 floating point little-endian
raw PCM 24.0 floating point little-endian
raw PCM floating-point 32 bit big-endian
raw PCM floating-point 32 bit little-endian
raw PCM floating-point 64 bit big-endian
raw PCM floating-point 64 bit little-endian
RDT
REDCODE R3D
File format used by RED Digital cameras, contains JPEG 2000 frames and PCM audio.
RealMedia
Redirector
RedSpark
Renderware TeXture Dictionary
Resolume DXV
Encoding is only supported for the DXT1 (Normal Quality, No Alpha) texture format.
RF64
RL2
Audio and video format used in some games by Entertainment Software Partners.
RPL/ARMovie
Lego Mindstorms RSO
RSD
RTMP
Output is performed by publishing stream to RTMP server
RTP
RTSP
Sample Dump eXchange
SAP
SBG
SDNS
SDP
SER
Digital Pictures SGA
Sega FILM/CPK
Used in many Sega Saturn console games.
Silicon Graphics Movie
Sierra SOL
.sol files used in Sierra Online games.
Sierra VMD
Used in Sierra CD-ROM games.
Smacker
Multimedia format used by many games.
SMJPEG
Used in certain Loki game ports.
SMPTE 337M encapsulation
Smush
Multimedia format used in some LucasArts games.
Sony OpenMG (OMA)
Audio format used in Sony Sonic Stage and Sony Vegas.
Sony PlayStation STR
Sony Wave64 (W64)
SoX native format
SUN AU format
SUP raw PGS subtitles
SVAG
Audio format used in Konami PS2 games.
TDSC
Text files
THP
Used on the Nintendo GameCube.
Tiertex Limited SEQ
Tiertex .seq files used in the DOS CD-ROM version of the game Flashback.
True Audio
VAG
Audio format used in many Sony PS2 games.
VC-1 test bitstream
Vidvox Hap
Vivo
VPK
Audio format used in Sony PS games.
Marble WADY
WAV
Waveform Archiver
WavPack
WebM
Windows Televison (WTV)
Wing Commander III movie
Multimedia format used in Origin’s Wing Commander III computer game.
Westwood Studios audio
Multimedia format used in Westwood Studios games.
Westwood Studios VQA
Multimedia format used in Westwood Studios games.
Wideband Single-bit Data (WSD)
WVE
Konami XMD
XMV
Microsoft video container used in Xbox games.
XVAG
Audio format used on the PS3.
xWMA
Microsoft audio container used by XAudio 2.
eXtended BINary text (XBIN)
YUV4MPEG pipe
Psygnosis YOP
means that the feature in that column (encoding / decoding) is supported.
2.2 Image Formats
FFmpeg can read and write images for each frame of a video sequence. The
following image formats are supported:
Name
Encoding
Decoding
Comments
.Y.U.V
one raw file per component
Alias PIX
Alias/Wavefront PIX image format
animated GIF
APNG
Animated Portable Network Graphics
BMP
Microsoft BMP image
BRender PIX
Argonaut BRender 3D engine image format.
CRI
Cintel RAW
DPX
Digital Picture Exchange
EXR
OpenEXR
FITS
Flexible Image Transport System
HDR
Radiance HDR RGBE Image format
IMG
GEM Raster image
JPEG
Progressive JPEG is not supported.
JPEG 2000
JPEG-LS
JPEG-XS
Supported through external library libsvtjpegxs
LJPEG
Lossless JPEG
Media 100
MSP
Microsoft Paint image
PAM
PAM is a PNM extension with alpha support.
PBM
Portable BitMap image
PCD
PhotoCD
PCX
PC Paintbrush
PFM
Portable FloatMap image
PGM
Portable GrayMap image
PGMYUV
PGM with U and V components in YUV 4:2:0
PGX
PGX file decoder
PHM
Portable HalfFloatMap image
PIC
Pictor/PC Paint
PNG
Portable Network Graphics image
PPM
Portable PixelMap image
PSD
Photoshop
PTX
V.Flash PTX format
QOI
Quite OK Image format
SGI
SGI RGB image format
Sun Rasterfile
Sun RAS image format
TIFF
YUV, JPEG and some extension is not supported yet.
Truevision Targa
Targa (.TGA) image format
VBN
Vizrt Binary Image format
WBMP
Wireless Application Protocol Bitmap image format
WebP
WebP image format, encoding supported through external library libwebp
XBM
X BitMap image format
XFace
X-Face image format
XPM
X PixMap image format
XWD
X Window Dump image format
means that the feature in that column (encoding / decoding) is supported.
means that support is provided through an external library.
2.3 Video Codecs
Name
Encoding
Decoding
Comments
4X Movie
Used in certain computer games.
8088flex TMV
A64 multicolor
Creates video suitable to be played on a commodore 64 (multicolor mode).
Amazing Studio PAF Video
American Laser Games MM
Used in games like Mad Dog McCree.
Amuse Graphics Movie
AMV Video
Used in Chinese MP3 players.
ANSI/ASCII art
Apple Intermediate Codec
Apple MJPEG-B
Apple Pixlet
Apple ProRes
fourcc: apch,apcn,apcs,apco,ap4h,ap4x
Apple QuickDraw
fourcc: qdrw
APV
Argonaut Video
Used in some Argonaut games.
Asus v1
fourcc: ASV1
Asus v2
fourcc: ASV2
ATI VCR1
fourcc: VCR1
ATI VCR2
fourcc: VCR2
Auravision Aura
Auravision Aura 2
Autodesk Animator Flic video
Autodesk RLE
fourcc: AASC
AV1
Supported through external libraries libaom, libdav1d, librav1e and libsvtav1
Avid 1:1 10-bit RGB Packer
fourcc: AVrp
AVS (Audio Video Standard) video
Video encoding used by the Creature Shock game.
AVS2-P2/IEEE1857.4
Supported through external libraries libxavs2 and libdavs2
AVS3-P2/IEEE1857.10
Supported through external library libuavs3d
AYUV
Microsoft uncompressed packed 4:4:4:4
Beam Software VB
Bethesda VID video
Used in some games from Bethesda Softworks.
Bink Video
BitJazz SheerVideo
Bitmap Brothers JV video
y41p Brooktree uncompressed 4:1:1 12-bit
Brooktree ProSumer Video
fourcc: BT20
Brute Force & Ignorance
Used in the game Flash Traffic: City of Angels.
C93 video
Codec used in Cyberia game.
CamStudio
fourcc: CSCD
CD+G
Video codec for CD+G karaoke disks
CDXL
Amiga CD video codec
Chinese AVS video
AVS1-P2, JiZhun profile, encoding through external library libxavs
Delphine Software International CIN video
Codec used in Delphine Software International games.
Discworld II BMV Video
CineForm HD
Canopus HQ
Canopus HQA
Canopus HQX
Canopus Lossless Codec
CDToons
Codec used in various Broderbund games.
Cinepak
Cirrus Logic AccuPak
fourcc: CLJR
CPiA Video Format
Creative YUV (CYUV)
DFA
Codec used in Chronomaster game.
Dirac
supported though the native vc2 (Dirac Pro) encoder
Deluxe Paint Animation
DNxHD
aka SMPTE VC3
Duck TrueMotion 1.0
fourcc: DUCK
Duck TrueMotion 2.0
fourcc: TM20
Duck TrueMotion 2.0 RT
fourcc: TR20
DV (Digital Video)
Dxtory capture format
Feeble Files/ScummVM DXA
Codec originally used in Feeble Files game.
Electronic Arts CMV video
Used in NHL 95 game.
Electronic Arts Madcow video
Electronic Arts TGV video
Electronic Arts TGQ video
Electronic Arts TQI video
Escape 124
Escape 130
EVC / MPEG-5 Part 1
encoding and decoding supported through external libraries libxeve and libxevd
FFmpeg video codec #1
lossless codec (fourcc: FFV1)
Flash Screen Video v1
fourcc: FSV1
Flash Screen Video v2
Flash Video (FLV)
Sorenson H.263 used in Flash
FM Screen Capture Codec
Forward Uncompressed
Fraps
Go2Meeting
fourcc: G2M2, G2M3
Go2Webinar
fourcc: G2M4
Gremlin Digital Video
H.261
H.263 / H.263-1996
H.263+ / H.263-1998 / H.263 version 2
H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
encoding supported through external library libx264 and OpenH264
HEVC
encoding supported through external library libx265 and libkvazaar
HNM version 4
HuffYUV
HuffYUV FFmpeg variant
IBM Ultimotion
fourcc: ULTI
id Cinematic video
Used in Quake II.
id RoQ video
Used in Quake III, Jedi Knight 2, other computer games.
IFF ILBM
IFF interleaved bitmap
IFF ByteRun1
IFF run length encoded bitmap
Infinity IMM4
Intel H.263
Intel Indeo 2
Intel Indeo 3
Intel Indeo 4
Intel Indeo 5
Interplay C93
Used in the game Cyberia from Interplay.
Interplay MVE video
Used in Interplay .MVE files.
J2K
Karl Morton’s video codec
Codec used in Worms games.
Kega Game Video (KGV1)
Kega emulator screen capture codec.
Lagarith
LCEVC / MPEG-5 LCEVC / MPEG-5 Part 2
decoding supported through external library liblcevc-dec
LCL (LossLess Codec Library) MSZH
LCL (LossLess Codec Library) ZLIB
LEAD MCMP
LOCO
LucasArts SANM/Smush
Used in LucasArts games / SMUSH animations.
lossless MJPEG
MagicYUV Video
Mandsoft Screen Capture Codec
Microsoft ATC Screen
Also known as Microsoft Screen 3.
Microsoft Expression Encoder Screen
Also known as Microsoft Titanium Screen 2.
Microsoft RLE
Microsoft Screen 1
Also known as Windows Media Video V7 Screen.
Microsoft Screen 2
Also known as Windows Media Video V9 Screen.
Microsoft Video 1
Mimic
Used in MSN Messenger Webcam streams.
Miro VideoXL
fourcc: VIXL
MJPEG (Motion JPEG)
Mobotix MxPEG video
Motion Pixels video
MPEG-1 video
MPEG-2 video
MPEG-4 part 2
libxvidcore can be used alternatively for encoding.
MPEG-4 part 2 Microsoft variant version 1
MPEG-4 part 2 Microsoft variant version 2
MPEG-4 part 2 Microsoft variant version 3
Newtek SpeedHQ
Nintendo Gamecube THP video
NotchLC
NuppelVideo/RTjpeg
Video encoding used in NuppelVideo files.
On2 VP3
still experimental
On2 VP4
fourcc: VP40
On2 VP5
fourcc: VP50
On2 VP6
fourcc: VP60,VP61,VP62
On2 VP7
fourcc: VP70,VP71
VP8
fourcc: VP80, encoding supported through external library libvpx
VP9
encoding supported through external library libvpx
Pinnacle TARGA CineWave YUV16
fourcc: Y216
Q-team QPEG
fourccs: QPEG, Q1.0, Q1.1
QuickTime 8BPS video
QuickTime Animation (RLE) video
fourcc: ’rle ’
QuickTime Graphics (SMC)
fourcc: ’smc ’
QuickTime video (RPZA)
fourcc: rpza
R10K AJA Kona 10-bit RGB Codec
R210 Quicktime Uncompressed RGB 10-bit
Raw Video
RealVideo 1.0
RealVideo 2.0
RealVideo 3.0
still far from ideal
RealVideo 4.0
RealVideo 6.0
Renderware TXD (TeXture Dictionary)
Texture dictionaries used by the Renderware Engine.
RivaTuner Video
fourcc: ’RTV1’
RL2 video
used in some games by Entertainment Software Partners
ScreenPressor
Screenpresso
Screen Recorder Gold Codec
Sierra VMD video
Used in Sierra VMD files.
Silicon Graphics Motion Video Compressor 1 (MVC1)
Silicon Graphics Motion Video Compressor 2 (MVC2)
Silicon Graphics RLE 8-bit video
Smacker video
Video encoding used in Smacker.
SMPTE VC-1
Snow
experimental wavelet codec (fourcc: SNOW)
Sony PlayStation MDEC (Motion DECoder)
Sorenson Vector Quantizer 1
fourcc: SVQ1
Sorenson Vector Quantizer 3
fourcc: SVQ3
Sunplus JPEG (SP5X)
fourcc: SP5X
TechSmith Screen Capture Codec
fourcc: TSCC
TechSmith Screen Capture Codec 2
fourcc: TSC2
Theora
encoding supported through external library libtheora
Tiertex Limited SEQ video
Codec used in DOS CD-ROM FlashBack game.
Ut Video
v210 QuickTime uncompressed 4:2:2 10-bit
v308 QuickTime uncompressed 4:4:4
v408 QuickTime uncompressed 4:4:4:4
v410 QuickTime uncompressed 4:4:4 10-bit
VBLE Lossless Codec
vMix Video
fourcc: ’VMX1’
VMware Screen Codec / VMware Video
Codec used in videos captured by VMware.
Westwood Studios VQA (Vector Quantized Animation) video
Windows Media Image
Windows Media Video 7
Windows Media Video 8
Windows Media Video 9
not completely working
Wing Commander III / Xan
Used in Wing Commander III .MVE files.
Wing Commander IV / Xan
Used in Wing Commander IV.
Winnov WNV1
WMV7
YAMAHA SMAF
Psygnosis YOP Video
yuv4
libquicktime uncompressed packed 4:2:0
ZeroCodec Lossless Video
ZLIB
part of LCL, encoder experimental
Zip Motion Blocks Video
Encoder works only in PAL8.
means that the feature in that column (encoding / decoding) is supported.
means that support is provided through an external library.
2.4 Audio Codecs
Name
Encoding
Decoding
Comments
8SVX exponential
8SVX fibonacci
AAC
EX
encoding supported through internal encoder and external library libfdk-aac
AAC+
IX
encoding supported through external library libfdk-aac
AC-3
IX
IX
ACELP.KELVIN
ADPCM 4X Movie
ADPCM Yamaha AICA
ADPCM AmuseGraphics Movie
ADPCM Argonaut Games
ADPCM CDROM XA
ADPCM Creative Technology
16 -> 4, 8 -> 4, 8 -> 3, 8 -> 2
ADPCM Electronic Arts
Used in various EA titles.
ADPCM Electronic Arts Maxis CDROM XS
Used in Sim City 3000.
ADPCM Electronic Arts R1
ADPCM Electronic Arts R2
ADPCM Electronic Arts R3
ADPCM Electronic Arts XAS
ADPCM G.722
ADPCM G.726
ADPCM IMA Acorn Replay
ADPCM IMA AMV
Used in AMV files
ADPCM IMA Cunning Developments
ADPCM IMA Electronic Arts EACS
ADPCM IMA Electronic Arts SEAD
ADPCM IMA Funcom
ADPCM IMA High Voltage Software ALP
ADPCM IMA Mobiclip MOFLEX
ADPCM IMA QuickTime
ADPCM IMA Simon & Schuster Interactive
ADPCM IMA Ubisoft APM
ADPCM IMA Loki SDL MJPEG
ADPCM IMA WAV
ADPCM IMA Westwood
ADPCM ISS IMA
Used in FunCom games.
ADPCM IMA Dialogic
ADPCM IMA Duck DK3
Used in some Sega Saturn console games.
ADPCM IMA Duck DK4
Used in some Sega Saturn console games.
ADPCM IMA Radical
ADPCM IMA Xbox
ADPCM Microsoft
ADPCM MS IMA
ADPCM Nintendo Gamecube AFC
ADPCM Nintendo Gamecube DTK
ADPCM Nintendo THP
ADPCM Playstation
ADPCM QT IMA
ADPCM Sanyo
ADPCM SEGA CRI ADX
Used in Sega Dreamcast games.
ADPCM Shockwave Flash
ADPCM Sound Blaster Pro 2-bit
ADPCM Sound Blaster Pro 2.6-bit
ADPCM Sound Blaster Pro 4-bit
ADPCM VIMA
Used in LucasArts SMUSH animations.
ADPCM Konami XMD
ADPCM Westwood Studios IMA
Used in Westwood Studios games like Command and Conquer.
ADPCM Yamaha
ADPCM Zork
AMR-NB
encoding supported through external library libopencore-amrnb
AMR-WB
encoding supported through external library libvo-amrwbenc
Amazing Studio PAF Audio
Apple lossless audio
QuickTime fourcc ’alac’
aptX
Used in Bluetooth A2DP
aptX HD
Used in Bluetooth A2DP
ATRAC1
ATRAC3
ATRAC3+
ATRAC9
Bink Audio
Used in Bink and Smacker files in many games.
Bonk audio
CELT
decoding supported through external library libcelt
codec2
en/decoding supported through external library libcodec2
CRI HCA
Delphine Software International CIN audio
Codec used in Delphine Software International games.
DFPWM
Digital Speech Standard - Standard Play mode (DSS SP)
Discworld II BMV Audio
COOK
All versions except 5.1 are supported.
DCA (DTS Coherent Acoustics)
supported extensions: XCh, XXCH, X96, XBR, XLL, LBR (partially)
Dolby E
DPCM Cuberoot-Delta-Exact
Used in few games.
DPCM Gremlin
DPCM id RoQ
Used in Quake III, Jedi Knight 2 and other computer games.
DPCM Marble WADY
DPCM Interplay
Used in various Interplay computer games.
DPCM Squareroot-Delta-Exact
Used in various games.
DPCM Sierra Online
Used in Sierra Online game audio files.
DPCM Sol
DPCM Xan
Used in Origin’s Wing Commander IV AVI files.
DPCM Xilam DERF
DSD (Direct Stream Digital), least significant bit first
DSD (Direct Stream Digital), most significant bit first
DSD (Direct Stream Digital), least significant bit first, planar
DSD (Direct Stream Digital), most significant bit first, planar
DSP Group TrueSpeech
DST (Direct Stream Transfer)
DV audio
Enhanced AC-3
EVRC (Enhanced Variable Rate Codec)
FLAC (Free Lossless Audio Codec)
IX
FTR Voice
G.723.1
G.728
G.729
GSM
encoding supported through external library libgsm
GSM Microsoft variant
encoding supported through external library libgsm
IAC (Indeo Audio Coder)
iLBC (Internet Low Bitrate Codec)
EX
encoding and decoding supported through external library libilbc
IMC (Intel Music Coder)
Interplay ACM
LC3
supported through external library liblc3
MACE (Macintosh Audio Compression/Expansion) 6:1
Marian’s A-pac audio
MI-SC4 (Micronas SC-4 Audio)
MLP (Meridian Lossless Packing)
Used in DVD-Audio discs.
Monkey’s Audio
MP1 (MPEG audio layer 1)
IX
MP2 (MPEG audio layer 2)
IX
IX
encoding supported also through external library TwoLAME
MP3 (MPEG audio layer 3)
IX
encoding supported through external library LAME, ADU MP3 and MP3onMP4 also supported
MPEG-4 Audio Lossless Coding (ALS)
MPEG-H 3D Audio
decoding supported through external library libmpeghdec
MobiClip FastAudio
Musepack SV7
Musepack SV8
Nellymoser Asao
On2 AVC (Audio for Video Codec)
Opus
encoding supported through external library libopus
OSQ (Original Sound Quality)
PCM A-law
PCM mu-law
PCM Archimedes VIDC
PCM signed 8-bit planar
PCM signed 16-bit big-endian planar
PCM signed 16-bit little-endian planar
PCM signed 24-bit little-endian planar
PCM signed 32-bit little-endian planar
PCM 32-bit floating point big-endian
PCM 32-bit floating point little-endian
PCM 64-bit floating point big-endian
PCM 64-bit floating point little-endian
PCM D-Cinema audio signed 24-bit
PCM signed 8-bit
PCM signed 16-bit big-endian
PCM signed 16-bit little-endian
PCM signed 24-bit big-endian
PCM signed 24-bit little-endian
PCM signed 32-bit big-endian
PCM signed 32-bit little-endian
PCM signed 16/20/24-bit big-endian in MPEG-TS
PCM unsigned 8-bit
PCM unsigned 16-bit big-endian
PCM unsigned 16-bit little-endian
PCM unsigned 24-bit big-endian
PCM unsigned 24-bit little-endian
PCM unsigned 32-bit big-endian
PCM unsigned 32-bit little-endian
PCM SGA
QCELP / PureVoice
QDesign Music Codec 1
QDesign Music Codec 2
There are still some distortions.
RealAudio 1.0 (14.4K)
Real 14400 bit/s codec
RealAudio 2.0 (28.8K)
Real 28800 bit/s codec
RealAudio 3.0 (dnet)
IX
Real low bitrate AC-3 codec
RealAudio Lossless
RealAudio SIPR / ACELP.NET
RK Audio (RKA)
SBC (low-complexity subband codec)
Used in Bluetooth A2DP
Shorten
Sierra VMD audio
Used in Sierra VMD files.
Smacker audio
SMPTE 302M AES3 audio
Sonic
experimental codec
Sonic lossless
experimental codec
Speex
EX
supported through external library libspeex
TAK (Tom’s lossless Audio Kompressor)
True Audio (TTA)
TrueHD
Used in HD-DVD and Blu-Ray discs.
TwinVQ (VQF flavor)
VIMA
Used in LucasArts SMUSH animations.
ViewQuest VQC
Vorbis
A native but very primitive encoder exists.
Voxware MetaSound
Waveform Archiver
WavPack
Westwood Audio (SND1)
Windows Media Audio 1
Windows Media Audio 2
Windows Media Audio Lossless
Windows Media Audio Pro
Windows Media Audio Voice
Xbox Media Audio 1
Xbox Media Audio 2
means that the feature in that column (encoding / decoding) is supported.
means that support is provided through an external library.
means that an integer-only version is available, too (ensures high
performance on systems without hardware floating point support).
2.5 Subtitle Formats
Name
Muxing
Demuxing
Encoding
Decoding
3GPP Timed Text
AQTitle
DVB
DVB teletext
DVD
JACOsub
MicroDVD
MPL2
MPsub (MPlayer)
PGS
PJS (Phoenix)
RealText
SAMI
Spruce format (STL)
SSA/ASS
SubRip (SRT)
SubViewer v1
SubViewer
TED Talks captions
TTML
VobSub (IDX+SUB)
VPlayer
WebVTT
XSUB
means that the feature is supported.
means that support is provided through an external library.
2.6 Network Protocols
Name
Support
AMQP
file
FTP
Gopher
Gophers
HLS
HTTP
HTTPS
Icecast
MMSH
MMST
pipe
Pro-MPEG FEC
RTMP
RTMPE
RTMPS
RTMPT
RTMPTE
RTMPTS
RTP
SAMBA
SCTP
SFTP
TCP
TLS
UDP
ZMQ
means that the protocol is supported.
means that support is provided through an external library.
2.7 Input/Output Devices
Name
Input
Output
ALSA
BKTR
caca
DV1394
Lavfi virtual device
Linux framebuffer
JACK
LIBCDIO
LIBDC1394
OpenAL
OpenGL
OSS
PulseAudio
SDL
Video4Linux2
VfW capture
X11 grabbing
Win32 grabbing
means that input/output is supported.
2.8 Timecode
Codec/format
Read
Write
AVI
DV
GXF
MOV
MPEG1/2
MXF
This document was generated on
April 23, 2026
using
makeinfo
Hosting provided by
telepoint.bg
US