X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=doc%2Fgeneral.texi;h=fe94c40386a234e57527a40428465014e560387c;hb=41ef6dd67d48f13a18ba0fa3e2dc1bc448a0ecbb;hp=6a21a8b7943b7932e655dd54998944389db6ddb6;hpb=9bf9358b615dbf3d0f81ca2dbfbec6103dc77f25;p=ffmpeg diff --git a/doc/general.texi b/doc/general.texi index 6a21a8b7943..fe94c40386a 100644 --- a/doc/general.texi +++ b/doc/general.texi @@ -1,4 +1,5 @@ \input texinfo @c -*- texinfo -*- +@documentencoding UTF-8 @settitle General Documentation @titlepage @@ -11,113 +12,209 @@ @chapter External libraries -Libav can be hooked up with a number of external libraries to add support +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 Alliance for Open Media libaom +@section Alliance for Open Media (AOM) -Libav can make use of the libaom and libdav1d libraries for AV1 decoding. +FFmpeg can make use of the AOM library for AV1 decoding and encoding. Go to @url{http://aomedia.org/} and follow the instructions for -installing libaom. Then pass @code{--enable-libaom} to configure to +installing the library. Then pass @code{--enable-libaom} to configure to enable it. -Go to @url{https://code.videolan.org/videolan/dav1d/} and follow the -instructions for installing libdav1d. Then pass @code{--enable-libdav1d} -to configure to enable it. +@section AMD AMF/VCE -@section OpenCORE and VisualOn libraries +FFmpeg can use the AMD Advanced Media Framework library under Windows +for accelerated H.264 and HEVC encoding on hardware with Video Coding Engine (VCE). -Spun off Google Android sources, OpenCore, VisualOn and Fraunhofer -libraries provide encoders for a number of audio codecs. +To enable support you must obtain the AMF framework header files from +@url{https://github.com/GPUOpen-LibrariesAndSDKs/AMF.git}. + +Create an @code{AMF/} directory in the system include path. +Copy the contents of @code{AMF/amf/public/include/} into that directory. +Then configure FFmpeg with @code{--enable-amf}. + +@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 -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 with the LGPL version 2.1 and GPL version 2. You have to -upgrade Libav's license to LGPL version 3 (or if you have enabled -GPL components, GPL version 3) to use it. +There is currently a regression in AviSynth+'s @code{capi.h} header as of +October 2016, which interferes with the ability for builds of FFmpeg to use +MSVC-built binaries of AviSynth. Until this is resolved, you can make sure +a known good version is installed by checking out a version from before +the regression occurred: + +@code{git clone -b MT git://github.com/AviSynth/AviSynthPlus.git @* +cd AviSynthPlus @* +git checkout -b oldheader b4f292b4dbfad149697fb65c6a037bb3810813f9 @* +make install PREFIX=/install/prefix} @end float -@subsection OpenCORE AMR +@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 -Libav can make use of the OpenCORE libraries for AMR-NB -decoding/encoding and AMR-WB decoding. +@section Chromaprint -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. +FFmpeg can make use of the Chromaprint library for generating audio fingerprints. +Pass @code{--enable-chromaprint} to configure to +enable it. See @url{https://acoustid.org/chromaprint}. -@subsection VisualOn AAC encoder library +@section codec2 -Libav can make use of the VisualOn AACenc library for AAC encoding. +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 @url{http://sourceforge.net/projects/opencore-amr/} and follow the -instructions for installing the library. -Then pass @code{--enable-libvo-aacenc} to configure to enable it. +Go to @url{http://freedv.org/}, 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 @code{--enable-libcodec2} to configure to enable it. -@subsection VisualOn AMR-WB encoder library +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: +@code{ffmpeg -i input.wav -mode 700C output.c2}. +Playback is as simple as @code{ffplay output.c2}. +For a list of supported modes, run @code{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: +@code{ffmpeg -f codec2raw -mode 1300 -i input.raw output.wav}. -Libav can make use of the VisualOn AMR-WBenc library for AMR-WB encoding. +@section davs2 -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. +FFmpeg can make use of the davs2 library for AVS2-P2/IEEE1857.4 video decoding. -@subsection Fraunhofer AAC library +Go to @url{https://github.com/pkuvcl/davs2} and follow the instructions for +installing the library. Then pass @code{--enable-libdavs2} to configure to +enable it. -Libav can make use of the Fraunhofer AAC library for AAC encoding. +@float NOTE +libdavs2 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 -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 Game Music Emu + +FFmpeg can make use of the Game Music Emu library to read audio from supported video game +music file formats. Pass @code{--enable-libgme} to configure to +enable it. See @url{https://bitbucket.org/mpyne/game-music-emu/overview}. + +@section 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 @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. + +@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 LAME -Libav can make use of the LAME library for MP3 encoding. +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 +@section libilbc -Libav can make use of the TwoLAME library for MP2 encoding. +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 @url{http://www.twolame.org/} and follow the -instructions for installing the library. -Then pass @code{--enable-libtwolame} to configure to enable it. +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 libvpx -Libav can make use of the libvpx library for VP8 encoding. +FFmpeg can make use of the libvpx library for VP8/VP9 decoding and 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 - -Libav can make use of the libwavpack library for WavPack encoding. +@section ModPlug -Go to @url{http://www.wavpack.com/} and follow the instructions for -installing the library. Then pass @code{--enable-libwavpack} to configure to +FFmpeg can make use of this library, originating in Modplug-XMMS, to read from MOD-like music files. +See @url{https://github.com/Konstanty/libmodplug}. Pass @code{--enable-libmodplug} to configure to enable it. -@section libxavs +@section OpenCORE, VisualOn, and Fraunhofer libraries -Libav can make use of the libxavs library for Xavs encoding. +Spun off Google Android sources, OpenCore, VisualOn and Fraunhofer +libraries provide encoders for a number of audio codecs. -Go to @url{http://xavs.sf.net/} and follow the instructions for -installing the library. Then pass @code{--enable-libxavs} to configure to -enable it. +@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 license of the Fraunhofer AAC library is incompatible with the GPL. +Therefore, for GPL builds, you have to pass @code{--enable-nonfree} to +configure in order to use it. To the best of our knowledge, it is +compatible with the LGPL. +@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 decoding & 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 OpenH264 -Libav can make use of the OpenH264 library for H.264 encoding and decoding. +FFmpeg can make use of the OpenH264 library for H.264 decoding and encoding. Go to @url{http://www.openh264.org/} and follow the instructions for installing the library. Then pass @code{--enable-libopenh264} to configure to @@ -130,9 +227,43 @@ constrained baseline profile and CABAC.) Using it is mostly useful for testing and for taking advantage of Cisco's patent portfolio license (@url{http://www.openh264.org/BINARY_LICENSE.txt}). +@section OpenJPEG + +FFmpeg can use the OpenJPEG libraries for decoding/encoding 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 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 VapourSynth + +FFmpeg can read VapourSynth scripts as input. To enable support, pass +@code{--enable-vapoursynth} to configure. Vapoursynth is detected via +@code{pkg-config}. Versions 42 or greater supported. +See @url{http://www.vapoursynth.com/}. + +Due to security concerns, Vapoursynth scripts will not +be autodetected so the input format has to be forced. For ff* CLI tools, +add @code{-f vapoursynth} before the input @code{-i yourscript.vpy}. + +@section WavPack + +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 x264 -Libav can make use of the x264 library for H.264 encoding. +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 @@ -141,138 +272,75 @@ 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 Libav's license to GPL in order to use it. +details), you must upgrade FFmpeg's license to GPL in order to use it. @end float @section x265 -Libav can make use of the x265 library for HEVC encoding. +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 +@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 Libav's license to GPL in order to use it. +details), you must upgrade FFmpeg's license to GPL in order to use it. @end float -@section kvazaar - -Libav can make use of the kvazaar library for HEVC encoding. +@section xavs -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. +FFmpeg can make use of the xavs library for AVS encoding. -@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. Libav can make use of the libilbc library for -iLBC encoding and decoding. - -Go to @url{https://github.com/dekkers/libilbc} and follow the instructions for -installing the library. Then pass @code{--enable-libilbc} to configure to +Go to @url{http://xavs.sf.net/} and follow the instructions for +installing the library. Then pass @code{--enable-libxavs} to configure to enable it. -@section libhdcd +@section xavs2 -Libav can make use of the libhdcd library for High Definition Compatible -Digital (HDCD) decoding via the @code{hdcd} filter. +FFmpeg can make use of the xavs2 library for AVS2-P2/IEEE1857.4 video encoding. -Go to @url{https://github.com/bp0/libhdcd} and follow the instructions for -installing the library. Then pass @code{--enable-libhdcd} to configure to +Go to @url{https://github.com/pkuvcl/xavs2} and follow the instructions for +installing the library. Then pass @code{--enable-libxavs2} to configure to enable it. -@section AviSynth - -Libav can read AviSynth scripts as input. To enable support you need a -suitable @file{avisynth_c.h} header to compile against. The header as -provided by AviSynth+ is fully compatible. AviSynth 2.5 is not supported -by Libav. Once you have the appropriate header, pass -@code{--enable-avisynth} to configure to enable AviSynth support. - -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. -@url{https://github.com/AviSynth/AviSynthPlus, AviSynth+'s git repository} -provides a GNU-style Makefile which can install just the headers using -@code{make install PREFIX=/install/prefix}. - -@float NOTE -There is currently a regression in AviSynth+'s @code{capi.h} header as of -October 2016, which interferes with the ability for builds of Libav to use -MSVC-built binaries of AviSynth. Until this is resolved, you can make sure -a known good version is installed by checking out a version from before -the regression occurred: - -@code{git clone -b MT git://github.com/AviSynth/AviSynthPlus.git @* -cd AviSynthPlus @* -git checkout -b oldheader b4f292b4dbfad149697fb65c6a037bb3810813f9 @* -make install PREFIX=/install/prefix} -@end float - @float NOTE -When using AviSynth+'s installed headers, the user must also pass -the avisynth/ include directory to @code{--extra-cflags}. For example, -if the PREFIX given to AviSynth+'s Makefile was /usr/i686-w64-mingw32, -then the correct command would be -@code{--extra-cflags="-I/usr/i686-w64-mingw32/include/avisynth"}. -@end float - -For Linux and OS X, the supported AviSynth variant is -@url{https://github.com/avxsynth/avxsynth, AvxSynth}. -@file{avxsynth_c.h} is installed as part of the normal -build routine, as illustrated on -@url{https://github.com/avxsynth/avxsynth/wiki/System-Setup, AvxSynth's wiki}. -(the instructions for compiling its prerequisites are outdated, as FFMS 2.18 -or higher is now needed; the list of dependencies to be downloaded from the -repositories is still the same, though). - -@float NOTE -AviSynth and AvxSynth are loaded dynamically. Distributors can build Libav -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). +libxavs2 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 Intel QuickSync Video - -Libav can use Intel QuickSync Video (QSV) for accelerated encoding and decoding -of multiple codecs. To use QSV, Libav 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}. Libav 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. - -@section AMD VCE +@section ZVBI -Libav can use the AMD Advanced Media Framework library for accelerated H.264 and HEVC encoding on VCE enabled hardware under Windows. +ZVBI is a VBI decoding library which can be used by FFmpeg to decode DVB +teletext pages and DVB teletext subtitles. -To enable support you must obtain the AMF framework header files from @url{https://github.com/GPUOpen-LibrariesAndSDKs/AMF.git}. - -Create an @code{AMF/} directory in the system include path. -Copy the contents of @code{AMF/amf/public/include/} into that directory. -Then Configure Libav with @code{--enable-amf}. +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. -@chapter Supported File Formats and Codecs +@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 -Libav supports the following file formats through the @code{libavformat} +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 @@ -281,22 +349,45 @@ library: @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 codec2 (raw) @tab X @tab X + @tab Must be given -mode format option to decode correctly. +@item codec2 (.c2 files) @tab X @tab X + @tab Contains header with version and mode info, simplifying playback. @item CRI ADX @tab X @tab X @tab Audio-only format used in console video games. @item Discworld II BMV @tab @tab X @@ -310,9 +401,11 @@ library: @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 @tab X +@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 @@ -321,9 +414,11 @@ library: @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 @@ -331,6 +426,8 @@ library: @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. @@ -341,30 +438,48 @@ library: @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 GIF Animation @tab X @tab +@item G.723.1 @tab X @tab X +@item G.726 @tab @tab X @tab Both left- and right-justified. +@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, other computer games. + @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 Iterated Systems ClearVideo @tab @tab X + @tab I-frames only @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 @@ -372,6 +487,9 @@ library: @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 @@ -387,8 +505,11 @@ library: @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 MIDI Sample Dump Standard @tab @tab X @item MIME multipart JPEG @tab X @tab @item MSN TCP webcam @tab @tab X @tab Used by MSN Messenger webcam streams. @@ -401,6 +522,8 @@ library: @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 Computerized Speech Lab NSP @tab @tab X @item NTT TwinVQ (VQF) @tab @tab X @tab Nippon Telegraph and Telephone Corporation TwinVQ. @item Nullsoft Streaming Video @tab @tab X @@ -409,16 +532,22 @@ library: @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 AMR-NB @tab @tab X +@item raw AMR-WB @tab @tab X +@item raw aptX @tab X @tab X +@item raw aptX HD @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 @@ -436,12 +565,14 @@ library: @item raw NULL @tab X @tab @item raw video @tab X @tab X @item raw id RoQ @tab X @tab +@item raw SBC @tab X @tab X @item raw Shorten @tab @tab X @item raw TAK @tab @tab X @item raw TrueHD @tab X @tab X -@item raw VC-1 @tab @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 Archimedes VIDC @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 @@ -449,6 +580,8 @@ library: @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 signed 64 bit big-endian @tab X @tab X +@item raw PCM signed 64 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 @@ -456,6 +589,8 @@ library: @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 16.8 floating point little-endian @tab @tab X +@item raw PCM 24.0 floating point little-endian @tab @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 @@ -465,20 +600,24 @@ library: @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 Sample Dump eXchange @tab @tab X @item SAP @tab X @tab X -@item Screenpresso @tab @tab X +@item SBG @tab @tab X @item SDP @tab @tab X -@item Sega FILM/CPK @tab @tab X +@item SER @tab @tab X +@item Sega FILM/CPK @tab X @tab X @tab Used in many Sega Saturn console games. @item Silicon Graphics Movie @tab @tab X @item Sierra SOL @tab @tab X @@ -489,47 +628,60 @@ library: @tab Multimedia format used by many games. @item SMJPEG @tab X @tab X @tab Used in certain Loki game ports. -@item Smush +@item SMPTE 337M encapsulation @tab @tab X +@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 @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 X @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 True Audio @tab X @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 @tab X +@item WavPack @tab X @tab X @item WebM @tab X @tab X -@item Windows Televison (WTV) @tab @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 Wideband Single-bit Data (WSD) @tab @tab X +@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 -@item ZeroCodec Lossless Video @tab @tab X @end multitable @code{X} means that encoding (resp. decoding) is supported. @section Image Formats -Libav can read and write images for each frame of a video sequence. The +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 @@ -539,7 +691,7 @@ following image formats are supported: @item Alias PIX @tab X @tab X @tab Alias/Wavefront PIX image format @item animated GIF @tab X @tab X - @tab Only uncompressed GIFs are generated. +@item APNG @tab X @tab X @item BMP @tab X @tab X @tab Microsoft BMP image @item BRender PIX @tab @tab X @@ -548,10 +700,11 @@ following image formats are supported: @tab Digital Picture Exchange @item EXR @tab @tab X @tab OpenEXR +@item FITS @tab X @tab X + @tab Flexible Image Transport System @item JPEG @tab X @tab X @tab Progressive JPEG is not supported. -@item JPEG 2000 @tab E @tab X - @tab encoding supported through external library libopenjpeg +@item JPEG 2000 @tab X @tab X @item JPEG-LS @tab X @tab X @item LJPEG @tab X @tab @tab Lossless JPEG @@ -568,9 +721,10 @@ following image formats are supported: @item PIC @tab @tab X @tab Pictor/PC Paint @item PNG @tab X @tab X - @tab 2/4 bpp not supported yet @item PPM @tab X @tab X @tab Portable PixelMap image +@item PSD @tab @tab X + @tab Photoshop @item PTX @tab @tab X @tab V.Flash PTX format @item SGI @tab X @tab X @@ -585,6 +739,10 @@ following image formats are supported: @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 XPM @tab @tab X + @tab X PixMap image format @item XWD @tab X @tab X @tab X Window Dump image format @end multitable @@ -600,14 +758,12 @@ following image formats are supported: @item 4X Movie @tab @tab X @tab Used in certain computer games. @item 8088flex TMV @tab @tab X -@item 8SVX exponential @tab @tab X -@item 8SVX fibonacci @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 @tab X +@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 @@ -631,13 +787,19 @@ following image formats are supported: @tab fourcc: AASC @item AV1 @tab E @tab E @tab Supported through external libraries libaom and libdav1d +@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 BitJazz SheerVideo @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 @@ -650,19 +812,19 @@ following image formats are supported: @tab Amiga CD video codec @item Chinese AVS video @tab E @tab X @tab AVS1-P2, JiZhun profile, encoding through external library libxavs -@item Cineform HD @tab @tab X @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 X @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 E - @tab supported through external library libschroedinger +@item Dirac @tab E @tab X + @tab supported though the native vc2 (Dirac Pro) encoder @item Deluxe Paint Animation @tab @tab X @item DNxHD @tab X @tab X @tab aka SMPTE VC3 @@ -685,10 +847,10 @@ following image formats are supported: @item Escape 124 @tab @tab X @item Escape 130 @tab @tab X @item FFmpeg video codec #1 @tab X @tab X - @tab experimental lossless codec (fourcc: FFV1) + @tab lossless codec (fourcc: FFV1) @item Flash Screen Video v1 @tab X @tab X @tab fourcc: FSV1 -@item Flash Screen Video v2 @tab @tab X +@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 FM Screen Capture Codec @tab @tab X @@ -698,6 +860,7 @@ following image formats are supported: @tab fourcc: G2M2, G2M3 @item Go2Webinar @tab @tab X @tab fourcc: G2M4 +@item Gremlin Digital Video @tab @tab X @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 @@ -718,6 +881,7 @@ following image formats are supported: @tab IFF interleaved bitmap @item IFF ByteRun1 @tab @tab X @tab IFF run length encoded bitmap +@item Infinity IMM4 @tab @tab X @item Intel H.263 @tab @tab X @item Intel Indeo 2 @tab @tab X @item Intel Indeo 3 @tab @tab X @@ -727,8 +891,7 @@ following image formats are supported: @tab Used in the game Cyberia from Interplay. @item Interplay MVE video @tab @tab X @tab Used in Interplay .MVE files. -@item Iterated Systems ClearVideo @tab @tab X - @tab I-frames only +@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 @@ -737,10 +900,11 @@ following image formats are supported: @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 @tab @tab X - @tab Used in LucasArts SMUSH animations. +@item LucasArts SANM/Smush @tab @tab X + @tab Used in LucasArts games / SMUSH animations. @item lossless MJPEG @tab X @tab X -@item MagicYUV Lossless Video @tab @tab X +@item MagicYUV Video @tab X @tab X +@item Mandsoft Screen Capture Codec @tab @tab X @item Microsoft ATC Screen @tab @tab X @tab Also known as Microsoft Screen 3. @item Microsoft Expression Encoder Screen @tab @tab X @@ -765,6 +929,7 @@ following image formats are supported: @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 Newtek SpeedHQ @tab @tab X @item Nintendo Gamecube THP video @tab @tab X @item NuppelVideo/RTjpeg @tab @tab X @tab Video encoding used in NuppelVideo files. @@ -779,9 +944,11 @@ following image formats are supported: @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 planar RGB @tab @tab X - @tab fourcc: 8BPS + @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 @@ -791,8 +958,8 @@ following image formats are supported: @tab fourcc: 'smc ' @item QuickTime video (RPZA) @tab @tab X @tab fourcc: rpza -@item R10K AJA Kona 10-bit RGB Codec @tab @tab X -@item R210 Quicktime Uncompressed RGB 10-bit @tab @tab X +@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 @@ -803,6 +970,9 @@ following image formats are supported: @tab Texture dictionaries used by the Renderware Engine. @item RL2 video @tab @tab X @tab used in some games by Entertainment Software Partners +@item ScreenPressor @tab @tab X +@item Screenpresso @tab @tab X +@item Screen Recorder Gold Codec @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 @@ -811,6 +981,8 @@ following image formats are supported: @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 @@ -828,6 +1000,8 @@ following image formats are supported: @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 @@ -846,6 +1020,9 @@ following image formats are supported: @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 @@ -860,11 +1037,15 @@ following image formats are supported: @multitable @columnfractions .4 .1 .1 .4 @item Name @tab Encoding @tab Decoding @tab Comments -@item 8SVX audio @tab @tab X -@item AAC @tab E @tab X - @tab encoding supported through external library libfaac and libvo-aacenc -@item AC-3 @tab IX @tab X +@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 library 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 @@ -889,23 +1070,26 @@ following image formats are supported: @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 THP @tab @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 SMJPEG IMA @tab @tab X - @tab Used in certain Loki game ports. @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 +@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. @@ -917,33 +1101,52 @@ following image formats are supported: @item Amazing Studio PAF Audio @tab @tab X @item Apple lossless audio @tab X @tab X @tab QuickTime fourcc 'alac' +@item aptX @tab X @tab X + @tab Used in Bluetooth A2DP +@item aptX HD @tab X @tab X + @tab Used in Bluetooth A2DP @item ATRAC1 @tab @tab X @item ATRAC3 @tab @tab X @item ATRAC3+ @tab @tab X +@item ATRAC9 @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 codec2 @tab E @tab E + @tab en/decoding supported through external library libcodec2 @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 @tab X - @tab supported extensions: XCh, XLL (partially) +@item DCA (DTS Coherent Acoustics) @tab X @tab X + @tab supported extensions: XCh, XXCH, X96, XBR, XLL, LBR (partially) +@item Dolby E @tab @tab X @item DPCM id RoQ @tab X @tab X - @tab Used in Quake III, Jedi Knight 2, other computer games. + @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 Digital), least significant bit first @tab @tab X +@item DSD (Direct Stream Digital), most significant bit first @tab @tab X +@item DSD (Direct Stream Digital), least significant bit first, planar @tab @tab X +@item DSD (Direct Stream Digital), most significant bit first, planar @tab @tab X @item DSP Group TrueSpeech @tab @tab X +@item DST (Direct Stream Transfer) @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.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 @@ -952,14 +1155,14 @@ following image formats are supported: @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 +@item MLP (Meridian Lossless Packing) @tab X @tab X @tab Used in DVD-Audio discs. @item Monkey's Audio @tab @tab X - @tab Only versions 3.97-3.99 are supported. @item MP1 (MPEG audio layer 1) @tab @tab IX -@item MP2 (MPEG audio layer 2) @tab IE @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 @@ -968,14 +1171,16 @@ following image formats are supported: @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 E - @tab supported through external library libopus +@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 16-bit big-endian planar @tab @tab X -@item PCM signed 16-bit little-endian planar @tab @tab X -@item PCM signed 24-bit little-endian planar @tab @tab X -@item PCM signed 32-bit little-endian planar @tab @tab X +@item PCM Archimedes VIDC @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 @@ -998,6 +1203,7 @@ following image formats are supported: @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 1 @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 @@ -1008,29 +1214,38 @@ following image formats are supported: @tab Real low bitrate AC-3 codec @item RealAudio Lossless @tab @tab X @item RealAudio SIPR / ACELP.NET @tab @tab X +@item SBC (low-complexity subband codec) @tab X @tab X + @tab Used in Bluetooth A2DP @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 @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 @tab X -@item TrueHD @tab @tab X +@item True Audio (TTA) @tab X @tab X +@item TrueHD @tab X @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 E @tab X - @tab supported through external library libwavpack +@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. @@ -1044,21 +1259,41 @@ performance on systems without hardware floating point support). @multitable @columnfractions .4 .1 .1 .1 .1 @item Name @tab Muxing @tab Demuxing @tab Encoding @tab Decoding -@item SSA/ASS @tab X @tab X @tab X @tab X -@item DVB @tab X @tab X @tab X @tab X -@item DVD @tab X @tab X @tab X @tab X -@item PGS @tab @tab @tab @tab X -@item SubRip (SRT) @tab X @tab X @tab @tab X -@item XSUB @tab @tab @tab X @tab X +@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 @@ -1067,6 +1302,7 @@ performance on systems without hardware floating point support). @item MMSH @tab X @item MMST @tab X @item pipe @tab X +@item Pro-MPEG FEC @tab X @item RTMP @tab X @item RTMPE @tab X @item RTMPS @tab X @@ -1074,7 +1310,9 @@ performance on systems without hardware floating point support). @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 @@ -1091,17 +1329,36 @@ performance on systems without hardware floating point support). @item Name @tab Input @tab Output @item ALSA @tab X @tab X @item BKTR @tab X @tab -@item Linux framebuffer @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 -@item Video4Linux2 @tab X @tab +@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