Jump to content

FFmpeg: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
→‎Codecs, formats and protocols supported: Rm outdated and impossible to maintain table
Tag: blanking
Line 58: Line 58:


== Codecs, formats and protocols supported ==
== Codecs, formats and protocols supported ==
{{details|libavcodec}}

===Formats===
{| class="wikitable sortable" style="width: auto; text-align: center; font-size: smaller; table-layout: fixed;"
|-
! Format
! Description
! Encoding
! Decoding
|-
! 3g2
| 3GP2 format
| {{yes}}
| {{yes}}
|-
! 3gp
| 3GP format
| {{yes}}
| {{yes}}
|-
! 4xm
| 4X Technologies format
| {{no}}
| {{yes}}
|-
! IFF
| IFF format
| {{no}}
| {{yes}}
|-
! MTV
| MTV format
| {{no}}
| {{yes}}
|-
! RoQ
| id RoQ format
| {{yes}}
| {{yes}}
|-
! aac
| ADTS AAC
| {{yes}}
| {{yes}}
|-
! ac3
| raw AC-3
| {{yes}}
| {{yes}}
|-
! adts
| ADTS AAC
| {{yes}}
| {{yes}}
|-
! aiff
| Audio IFF
| {{yes}}
| {{yes}}
|-
! alaw
| PCM A-law format
| {{yes}}
| {{yes}}
|-
! amr
| 3GPP AMR file format
| {{yes}}
| {{yes}}
|-
! apc
| CRYO APC format
| {{no}}
| {{yes}}
|-
! ape
| Monkey's Audio
| {{no}}
| {{yes}}
|-
! asf
| ASF format
| {{yes}}
| {{yes}}
|-
! asf_stream
| ASF format
| {{yes}}
| {{no}}
|-
! ass
| SSA/ASS format
| {{yes}}
| {{yes}}
|-
! au
| SUN AU format
| {{yes}}
| {{yes}}
|-
! avi
| AVI format
| {{yes}}
| {{yes}}
|-
! avm2
| Flash 9 (AVM2) format
| {{yes}}
| {{yes}}
|-
! avs
| AVISynth
| {{no}}
| {{yes}}
|-
! bethsoftvid
| Bethesda Softworks VID format
| {{no}}
| {{yes}}
|-
! bfi
| Brute Force & Ignorance
| {{no}}
| {{yes}}
|-
! c93
| Interplay C93
| {{no}}
| {{yes}}
|-
! crc
| CRC testing format
| {{yes}}
| {{no}}
|-
! daud
| D-Cinema audio format
| {{yes}}
| {{yes}}
|-
! dirac
| raw Dirac
| {{yes}}
| {{yes}}
|-
! dnxhd
| raw DNxHD (SMPTE VC-3)
| {{yes}}
| {{yes}}
|-
! dsicin
| Delphine Software International CIN format
| {{no}}
| {{yes}}
|-
! dts
| raw DTS
| {{yes}}
| {{yes}}
|-
! dv
| DV video format
| {{yes}}
| {{yes}}
|-
! dvd
| MPEG-2 PS format (DVD VOB)
| {{yes}}
| {{yes}}
|-
! dxa
| DXA
| {{no}}
| {{yes}}
|-
! ea
| Electronic Arts Multimedia Format
| {{no}}
| {{yes}}
|-
! ea_cdata
| Electronic Arts cdata
| {{no}}
| {{yes}}
|-
! eac3
| raw E-AC-3
| {{yes}}
| {{yes}}
|-
! f32be
| PCM 32 bit floating-point big-endian format
| {{yes}}
| {{yes}}
|-
! f32le
| PCM 32 bit floating-point little-endian format
| {{yes}}
| {{yes}}
|-
! f64be
| PCM 64 bit floating-point big-endian format
| {{yes}}
| {{yes}}
|-
! f64le
| PCM 64 bit floating-point little-endian format
| {{yes}}
| {{yes}}
|-
! ffm
| FFM (FFserver live feed) format
| {{yes}}
| {{yes}}
|-
! film_cpk
| Sega FILM/CPK format
| {{no}}
| {{yes}}
|-
! flac
| raw FLAC
| {{yes}}
| {{yes}}
|-
! flic
| FLI/FLC/FLX animation format
| {{no}}
| {{yes}}
|-
! flv
| FLV format
| {{yes}}
| {{yes}}
|-
! framecrc
| framecrc testing format
| {{yes}}
| {{no}}
|-
! gif
| GIF Animation
| {{yes}}
| {{no}}
|-
! gsm
| GSM
| {{no}}
| {{yes}}
|-
! gxf
| GXF format
| {{yes}}
| {{yes}}
|-
! h261
| raw H.261
| {{yes}}
| {{yes}}
|-
! h263
| raw H.263
| {{yes}}
| {{yes}}
|-
! h264
| raw H.264 video format
| {{yes}}
| {{yes}}
|-
! idcin
| id CIN format
| {{no}}
| {{yes}}
|-
! image2
| image2 sequence
| {{yes}}
| {{yes}}
|-
! image2pipe
| piped image2 sequence
| {{yes}}
| {{yes}}
|-
! ingenient
| Ingenient MJPEG
| {{no}}
| {{yes}}
|-
! ipmovie
| Interplay MVE format
| {{no}}
| {{yes}}
|-
! ipod
| iPod H.264 MP4 format
| {{yes}}
| {{yes}}
|-
! lmlm4
| lmlm4 raw format
| {{no}}
| {{yes}}
|-
! m4v
| raw MPEG-4 video format
| {{yes}}
| {{yes}}
|-
! matroska
| Matroska file format
| {{yes}}
| {{yes}}
|-
! mjpeg
| MJPEG video
| {{yes}}
| {{yes}}
|-
! mlp
| raw MLP
| {{no}}
| {{yes}}
|-
! mm
| American Laser Games MM format
| {{no}}
| {{yes}}
|-
! mmf
| mmf format
| {{yes}}
| {{yes}}
|-
! mov
| MOV format
| {{yes}}
| {{yes}}
|-
! mov,mp4,m4a,3gp,3g2,mj2
| QuickTime/MPEG-4/Motion JPEG 2000 format
| {{yes}}
| {{yes}}
|-
! mp2
| MPEG audio layer 2
| {{yes}}
| {{yes}}
|-
! mp3
| MPEG audio layer 3
| {{yes}}
| {{yes}}
|-
! mp4
| MP4 format
| {{yes}}
| {{yes}}
|-
! mpc
| Musepack
| {{no}}
| {{yes}}
|-
! mpc8
| Musepack SV8
| {{no}}
| {{yes}}
|-
! mpeg
| MPEG-1 System format
| {{yes}}
| {{yes}}
|-
! mpeg1video
| MPEG video
| {{yes}}
| {{yes}}
|-
! mpeg2video
| MPEG-2 video
| {{yes}}
| {{yes}}
|-
! mpegts
| MPEG-2 transport stream format
| {{yes}}
| {{yes}}
|-
! mpegtsraw
| MPEG-2 raw transport stream format
| {{no}}
| {{yes}}
|-
! mpegvideo
| MPEG video
| {{yes}}
| {{yes}}
|-
! mpjpeg
| Mime multipart JPEG format
| {{yes}}
| {{no}}
|-
! msnwctcp
| MSN TCP Webcam stream
| {{no}}
| {{yes}}
|-
! mulaw
| PCM mu-law format
| {{yes}}
| {{yes}}
|-
! mvi
| Motion Pixels MVI format
| {{no}}
| {{yes}}
|-
! mxf
| Material eXchange Format
| {{yes}}
| {{yes}}
|-
! nsv
| NullSoft Video format
| {{no}}
| {{yes}}
|-
! null
| null video format
| {{yes}}
| {{no}}
|-
! nut
| NUT format
| {{yes}}
| {{yes}}
|-
! nuv
| NuppelVideo format
| {{no}}
| {{yes}}
|-
! ogg
| Ogg
| {{yes}}
| {{yes}}
|-
! oma
| Sony OpenMG audio
| {{no}}
| {{yes}}
|-
! psp
| PSP MP4 format
| {{yes}}
| {{yes}}
|-
! psxstr
| Sony Playstation STR format
| {{no}}
| {{yes}}
|-
! pva
| TechnoTrend PVA file and stream format
| {{no}}
| {{yes}}
|-
! rawvideo
| raw video format
| {{yes}}
| {{yes}}
|-
! rcv
| VC-1 test bitstream
| {{yes}}
| {{no}}
|-
! redir
| Redirector format
| {{no}}
| {{yes}}
|-
! rl2
| rl2 format
| {{no}}
| {{yes}}
|-
! rm
| RM format
| {{yes}}
| {{yes}}
|-
! rpl
| RPL/ARMovie format
| {{no}}
| {{yes}}
|-
! rtp
| RTP output format
| {{yes}}
| {{no}}
|-
! rtsp
| RTSP input format
| {{no}}
| {{yes}}
|-
! s16be
| PCM signed 16 bit big-endian format
| {{yes}}
| {{yes}}
|-
! s16le
| PCM signed 16 bit little-endian format
| {{yes}}
| {{yes}}
|-
! s24be
| PCM signed 24 bit big-endian format
| {{yes}}
| {{yes}}
|-
! s24le
| PCM signed 24 bit little-endian format
| {{yes}}
| {{yes}}
|-
! s32be
| PCM signed 32 bit big-endian format
| {{yes}}
| {{yes}}
|-
! s32le
| PCM signed 32 bit little-endian format
| {{yes}}
| {{yes}}
|-
! s8
| PCM signed 8 bit format
| {{yes}}
| {{yes}}
|-
! sdp
| SDP
| {{no}}
| {{yes}}
|-
! shn
| raw Shorten
| {{no}}
| {{yes}}
|-
! siff
| Beam Software SIFF
| {{no}}
| {{yes}}
|-
! smk
| Smacker video
| {{no}}
| {{yes}}
|-
! sol
| Sierra SOL format
| {{no}}
| {{yes}}
|-
! svcd
| MPEG-2 PS format (VOB)
| {{yes}}
| {{yes}}
|-
! swf
| Flash format
| {{yes}}
| {{yes}}
|-
! thp
| THP
| {{no}}
| {{yes}}
|-
! tiertexseq
| Tiertex Limited SEQ format
| {{no}}
| {{yes}}
|-
! tta
| True Audio
| {{no}}
| {{yes}}
|-
! txd
| txd format
| {{no}}
| {{yes}}
|-
! u16be
| PCM unsigned 16 bit big-endian format
| {{yes}}
| {{yes}}
|-
! u16le
| PCM unsigned 16 bit little-endian format
| {{yes}}
| {{yes}}
|-
! u24be
| PCM unsigned 24 bit big-endian format
| {{yes}}
| {{yes}}
|-
! u24le
| PCM unsigned 24 bit little-endian format
| {{yes}}
| {{yes}}
|-
! u32be
| PCM unsigned 32 bit big-endian format
| {{yes}}
| {{yes}}
|-
! u32le
| PCM unsigned 32 bit little-endian format
| {{yes}}
| {{yes}}
|-
! u8
| PCM unsigned 8 bit format
| {{yes}}
| {{yes}}
|-
! vc1
| raw VC-1
| {{no}}
| {{yes}}
|-
! vc1test
| VC-1 test bitstream format
| {{no}}
| {{yes}}
|-
! vcd
| MPEG-1 System format (VCD)
| {{yes}}
| {{yes}}
|-
! vfwcap
| VFW video capture
| {{no}}
| {{yes}}
|-
! vmd
| Sierra VMD format
| {{no}}
| {{yes}}
|-
! vob
| MPEG-2 PS format (VOB)
| {{yes}}
| {{yes}}
|-
! voc
| Creative Voice file format
| {{yes}}
| {{yes}}
|-
! vqf
| TwinVQ format
| {{no}}
| {{yes}}
|-
! wav
| WAV format
| {{yes}}
| {{yes}}
|-
! wc3movie
| Wing Commander III movie format
| {{no}}
| {{yes}}
|-
! wsaud
| Westwood Studios audio format
| {{no}}
| {{yes}}
|-
! wsvqa
| Westwood Studios VQA format
| {{no}}
| {{yes}}
|-
! wv
| WavPack
| {{no}}
| {{yes}}
|-
! xa
| Maxis XA File Format
| {{no}}
| {{yes}}
|-
! yuv4mpegpipe
| YUV4MPEG pipe format
| {{yes}}
| {{yes}}
|}

===Codecs===
===Codecs===
{{details|libavcodec}}
{| class="wikitable sortable" style="width: auto; text-align: center; font-size: smaller; table-layout: fixed;"
|-
! Format
! Description
! Type
! Encode
! Decode
! Slice
! Direct-Render
! Truncated Input
|-
! 4xm
| 4X Movie
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! 8bps
| QuickTime 8BPS video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! 8svx_exp
| 8SVX exponential
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! 8svx_fib
| 8SVX fibonacci
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! aac
| Advanced Audio Coding
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! aasc
| Autodesk RLE
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! ac3
| ATSC A/52A (AC-3)
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_4xm
| 4X Movie ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_adx
| SEGA CRI ADX
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ct
| Creative Technology ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ea
| Electronic Arts ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ea_maxis_xa
| Electronic Arts Maxis CDROM XA ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ea_r1
| Electronic Arts R1 ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ea_r2
| Electronic Arts R2 ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ea_r3
| Electronic Arts R3 ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ea_xas
| Electronic Arts XAS ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ima_amv
| IMA AMV ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ima_dk3
| IMA Duck DK3 ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ima_dk4
| IMA Duck DK4 ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ima_ea_eacs
| IMA Electronic Arts EACS ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ima_ea_sead
| IMA Electronic Arts SEAD ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ima_qt
| IMA QuickTime ADPCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ima_smjpeg
| IMA Loki SDL MJPEG ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ima_wav
| IMA Wav ADPCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ima_ws
| IMA Westwood ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_ms
| Microsoft ADPCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_sbpro_2
| Sound Blaster Pro 2-bit ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_sbpro_3
| Sound Blaster Pro 2.6-bit ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_sbpro_4
| Sound Blaster Pro 4-bit ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_swf
| Shockwave Flash ADPCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_thp
| Nintendo Gamecube THP ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_xa
| CDROM XA ADPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! adpcm_yamaha
| Yamaha ADPCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! alac
| ALAC (Apple Lossless Audio Codec)
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! amv
| AMV Video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! ape
| Monkey's Audio
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! asv1
| ASUS V1
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! asv2
| ASUS V2
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! atrac3
| Atrac 3 (Adaptive TRansform Acoustic Coding 3)
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! avs
| AVS (Audio Video Standard) video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! bethsoftvid
| Bethesda VID video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! bfi
| Brute Force & Ignorance
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! bmp
| BMP image
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! c93
| Interplay C93
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! camstudio
| CamStudio
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! camtasia
| TechSmith Screen Capture Codec
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! cavs
| Chinese AVS video (AVS1-P2, JiZhun profile)
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! cinepak
| Cinepak
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! cljr
| Cirrus Logic AccuPak
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! cook
| COOK
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! cyuv
| Creative YUV (CYUV)
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! dca
| DCA (DTS Coherent Acoustics)
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! dnxhd
| VC3/DNxHD
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! dsicinaudio
| Delphine Software International CIN audio
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! dsicinvideo
| Delphine Software International CIN video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! dvbsub
| DVB subtitles
| Subtitle
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! dvdsub
| DVD subtitles
| Subtitle
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! dvvideo
| DV (Digital Video)
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! dxa
| Feeble Files/ScummVM DXA
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! eac3
| ATSC A/52B (AC-3, E-AC-3)
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! eacmv
| Electronic Arts CMV Video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! eatgq
| Electronic Arts TGQ Video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! eatgv
| Electronic Arts TGV Video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! escape124
| Escape 124
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! ffv1
| FFmpeg codec #1
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! ffvhuff
| Huffyuv FFmpeg variant
| Video
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
|-
! flac
| FLAC (Free Lossless Audio Codec)
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! flashsv
| Flash Screen Video
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! flic
| Autodesk Animator Flic video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! flv
| Flash Video
| Video
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
|-
! fraps
| Fraps
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! g726
| G.726 ADPCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! gif
| GIF (Graphics Interchange Format)
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! h261
| H.261
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! h263
| H.263
| Video
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
|-
! h263i
| H.263i
| Video
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
|-
! h263p
| H.263+ / H.263 version 2
| Video
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! h264
| H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! huffyuv
| Huffyuv / HuffYUV
| Video
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
|-
! idcinvideo
| id Quake II CIN video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! imc
| IMC (Intel Music Coder)
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! indeo2
| Intel Indeo 2
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! indeo3
| Intel Indeo 3
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! interplay_dpcm
| Interplay DPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! interplayvideo
| Interplay MVE Video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! jpegls
| JPEG-LS
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! kmvc
| Karl Morton's video codec
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! libfaac
| libfaac AAC (Advanced Audio Codec)
| Audio
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! libgsm
| libgsm GSM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! libgsm_ms
| libgsm GSM Microsoft variant
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! libmp3lame
| libmp3lame MP3 (MPEG audio layer 3)
| Audio
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! libschroedinger
| libschroedinger Dirac 2.2
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! libspeex
| libspeex
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! libtheora
| libtheora Theora
| Video
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! libvorbis
| libvorbis Vorbis
| Audio
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! libx264
| libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
| Video
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! libxvid
| libxvidcore MPEG-4 part 2
| Video
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! ljpeg
| Lossless JPEG
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! loco
| LOCO
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! mace3
| MACE (Macintosh Audio Compression/Expansion) 3:1
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! mace6
| MACE (Macintosh Audio Compression/Expansion) 6:1
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! mdec
| Sony PlayStation MDEC (Motion DECoder)
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! mimic
| Mimic
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! mjpeg
| MJPEG (Motion JPEG)
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! mjpegb
| Apple MJPEG-B
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! mlp
| Meridian Lossless Packing
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! mmvideo
| American Laser Games MM Video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! motionpixels
| Motion Pixels Video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! mp2
| MP2 (MPEG audio layer 2)
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! mp3
| MP3 (MPEG audio layer 3)
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! mp3adu
| ADU (Application Data Unit) MP3 (MPEG audio layer 3)
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! mp3on4
| MP3onMP4
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! mpc7
| Musepack SV7
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! mpc8
| Musepack SV8
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! mpeg1video
| MPEG-1 video
| Video
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
|-
! mpeg2video
| MPEG-2 video
| Video
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
|-
! mpeg4
| MPEG-4 part 2
| Video
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
|-
! mpegvideo
| MPEG-1 video
| Video
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
|-
! msmpeg4
| MPEG-4 part 2 Microsoft variant version 3
| Video
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
|-
! msmpeg4v1
| MPEG-4 part 2 Microsoft variant version 1
| Video
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
|-
! msmpeg4v2
| MPEG-4 part 2 Microsoft variant version 2
| Video
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
|-
! msrle
| Microsoft RLE
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! msvideo1
| Microsoft Video 1
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! mszh
| LCL (LossLess Codec Library) MSZH
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! nellymoser
| Nellymoser Asao Codec
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! nuv
| NuppelVideo
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! pam
| PAM (Portable AnyMap) image
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pbm
| PBM (Portable BitMap) image
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_alaw
| A-law PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_dvd
| signed 20|24-bit big-endian PCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_f32be
| 32-bit floating point big-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_f32le
| 32-bit floating point little-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_f64be
| 64-bit floating point big-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_f64le
| 64-bit floating point little-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_mulaw
| mu-law PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_s16be
| signed 16-bit big-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_s16le
| signed 16-bit little-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_s16le_planar
| 16-bit little-endian planar PCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_s24be
| signed 24-bit big-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_s24daud
| D-Cinema audio signed 24-bit PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_s24le
| signed 24-bit little-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_s32be
| signed 32-bit big-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_s32le
| signed 32-bit little-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_s8
| signed 8-bit PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_u16be
| unsigned 16-bit big-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_u16le
| unsigned 16-bit little-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_u24be
| unsigned 24-bit big-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_u24le
| unsigned 24-bit little-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_u32be
| unsigned 32-bit big-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_u32le
| unsigned 32-bit little-endian PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_u8
| unsigned 8-bit PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcm_zork
| Zork PCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pcx
| PC Paintbrush PCX image
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pgm
| PGM (Portable GrayMap) image
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! pgmyuv
| PGMYUV (Portable GrayMap YUV) image
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! png
| PNG image
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! ppm
| PPM (Portable PixelMap) image
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! ptx
| V.Flash PTX image
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! qcelp
| QCELP / PureVoice
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! qdm2
| QDesign Music Codec 2
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! qdraw
| Apple QuickDraw
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! qpeg
| Q-team QPEG
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! qtrle
| QuickTime Animation (RLE) video
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! rawvideo
| raw video
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! real_144
| RealAudio 1.0 (14.4K)
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! real_288
| RealAudio 2.0 (28.8K)
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! rl2
| RL2 video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! roq_dpcm
| id RoQ DPCM
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! roqvideo
| id RoQ video
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! rpza
| QuickTime video (RPZA)
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! rv10
| RealVideo 1.0
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! rv20
| RealVideo 2.0
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! rv30
| RealVideo 3.0
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! rv40
| RealVideo 4.0
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! sgi
| SGI image
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! shorten
| Shorten
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! smackaud
| Smacker audio
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! smackvid
| Smacker video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! smc
| QuickTime Graphics (SMC)
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! snow
| Snow
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! sol_dpcm
| Sol DPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! sonic
| Sonic
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! sonicls
| Sonic lossless
| Audio
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! sp5x
| Sunplus JPEG (SP5X)
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! sunrast
| Sun Rasterfile image
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! svq1
| Sorenson Vector Quantizer 1
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! svq3
| Sorenson Vector Quantizer 3
| Video
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
|-
! targa
| Truevision Targa image
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! theora
| Theora
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! thp
| Nintendo Gamecube THP video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! tiertexseqvideo
| Tiertex Limited SEQ video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! tiff
| TIFF image
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! truemotion1
| Duck TrueMotion 1.0
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! truemotion2
| Duck TrueMotion 2.0
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! truespeech
| DSP Group TrueSpeech
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! tta
| True Audio
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! txd
| Renderware TXD (TeXture Dictionary) image
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! ultimotion
| IBM UltiMotion
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! vb
| Beam Software VB
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! vc1
| SMPTE VC-1
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! vcr1
| ATI VCR1
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! vmdaudio
| Sierra VMD audio
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! vmdvideo
| Sierra VMD video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! vmnc
| VMware Screen Codec / VMware Video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! vorbis
| Vorbis
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! vp3
| On2 VP3
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! vp5
| On2 VP5
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! vp6
| On2 VP6
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! vp6a
| On2 VP6 (Flash version, with alpha channel)
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! vp6f
| On2 VP6 (Flash version)
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! vqavideo
| Westwood Studios VQA (Vector Quantized Animation) video
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! wavpack
| WavPack
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! wmav1
| Windows Media Audio 1
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! wmav2
| Windows Media Audio 2
| Audio
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! wmv1
| Windows Media Video 7
| Video
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
|-
! wmv2
| Windows Media Video 8
| Video
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
|-
! wmv3
| Windows Media Video 9
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! wnv1
| Winnov WNV1
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! ws_snd1
| Westwood Audio (SND1)
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! xan_dpcm
| Xan DPCM
| Audio
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! xan_wc3
| Wing Commander III / Xan
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! xl
| Miro VideoXL
| Video
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! xsub
| XSUB
| Subtitle
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! zlib
| LCL (LossLess Codec Library) ZLIB
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
! zmbv
| Zip Motion Blocks Video
| Video
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! Format
! Description
! Type
! Encode
! Decode
! Slice
! Direct-Render
! Truncated Input
|}


Codecs with the origin in the project:
Codecs with the origin in the project:

Revision as of 15:40, 4 March 2010

FFmpeg
Developer(s)FFmpeg team
Stable release
0.5.1 / March 2, 2010; 14 years ago (2010-03-02)
Preview release
SVN
Repository
Written inC
Operating systemCross-platform
PlatformMulti-platform
TypeMultimedia framework
LicenseGNU Lesser General Public License
Websitehttp://ffmpeg.org/

FFmpeg is a free software / open source project that produces libraries and programs for handling multimedia data and publishes them under the GNU Lesser General Public License or GNU General Public License (depending on which options are enabled). The most notable parts of FFmpeg are libavcodec, an audio/video codec library used by several other projects, libavformat, an audio/video container mux and demux library, and the ffmpeg command line program for transcoding multimedia files.

The project was started by Fabrice Bellard[citation needed] (using the pseudonym “Gerard Lantau”), and is now maintained by Michael Niedermayer. Many FFmpeg developers are also part of the MPlayer project, and FFmpeg is hosted at the MPlayer project server. The name of the project comes from the MPEG video standards group, together with "FF" for "fast forward".[1] The logo uses a zigzag pattern that shows how MPEG video codecs handle entropy encoding.

FFmpeg is developed under GNU/Linux, but it can be compiled under most operating systems, including Apple Inc. Mac OS X, Microsoft Windows and AmigaOS. Most computing platforms and microprocessor instruction set architecture are also supported, like x86 (IA-32 and x86-64), PPC (PowerPC), ARM, DEC Alpha, SPARC, and MIPS architecture.[2]

FFmpeg version 0.5 appeared after a long time without formal releases. Previously, FFmpeg developers recommended using the latest neutral build from their source code Subversion version control system as development attempts to maintain a stable trunk.[3]

There are two video codecs and one video container invented in the FFmpeg project during its development. The two video codecs are the lossless "FFV1", and the lossless or lossy "Snow codec", which is still in a sporadic development, but its bitstream format hasn't been finalized yet, making it experimental for now (January 2010), and the multimedia container is "NUT" which is not being actively developed anymore.

Design

Diagram showing different applications (VDR, MPlayer, Xine and VideoLAN) using FFmpeg

Components

The project is made of several components:

  • ffmpeg is a command line tool to convert one video file format to another. It can also grab and encode in real time from a TV card.
  • ffserver is an HTTP and RTSP multimedia streaming server for live broadcasts. It can also time shift live broadcast.
  • ffplay is a simple media player based on SDL and on the FFmpeg libraries.
  • ffprobe is a command line tool to show media information.
  • libavcodec is a library containing all the FFmpeg audio/video encoders and decoders. Most codecs were developed from scratch to ensure best performance and high code reusability.
  • libavformat is a library containing demuxers and muxers for audio/video container formats.
  • libavutil is a helper library containing routines common to different parts of FFmpeg. This library include adler32, crc, md5, sha1, lzo decompressor, Base64 encoder/decoder, des encrypter/decrypter, rc4 encrypter/decrypter and aes encrypter/decrypter.
  • libpostproc is a library containing video postprocessing routines.
  • libswscale is a library containing video image scaling and colorspace/pixelformat conversion routines.
  • libavfilter is the substitute for vhook which allows the video to be modified or examined between the decoder and the encoder.

Codecs, formats and protocols supported

Codecs

Codecs with the origin in the project:

The FFmpeg developers have implemented among others:

The default MPEG-4 codec used by FFmpeg for encoding has the FourCC of FMP4.

Formats

Protocols

Projects using FFmpeg

FFmpeg is used by many open source projects, including ffmpeg2theora, VLC, MPlayer, Handbrake, Blender, Google Chrome and others.[12]

Multimedia frameworks using FFmpeg

FFmpeg contains more than 100 codecs [13] most of which do not just store uncompressed data. At least all codecs that compress information could be claimed by patent holders.[14] Such claims may be enforceable in countries like the United States which have implemented software patents, but are considered unenforceable or void in countries that have not implemented software patents. Furthermore, many of these codecs are only released under terms that forbid reverse engineering, even for purposes of interoperability. However, these terms of use are forbidden in certain countries. For example, some European Union nations have not implemented software patents and/or have laws expressly allowing reverse engineering for purposes of interoperability.[15]

Most GNU/Linux distributions include a stripped version of FFmpeg only including certain codecs to avoid legal complications, instead providing such software at unofficial repositories.[citation needed]

See also

References

  1. ^ Bellard, Fabrice (18 February 2006). "FFmpeg naming and logo". FFmpeg developer mailing list. Mplayer website. Retrieved 29 March 2007.
  2. ^ FFmpeg Automated Testing Environment
  3. ^ "FFmpeg Download and SVN". FFmpeg website. Retrieved 22 March 2008.
  4. ^ a b c d e f g banan (17 April 2007). "Changelog". FFmpeg trunk SVN. FFmpeg website. Retrieved 26 April 2007.
  5. ^ a b banan (7 May 2007). "FFmpeg development mailing list". FFmpeg development. FFmpeg website. Retrieved 1 June 2007.
  6. ^ vitor (13 April 2008). "FFmpeg development mailing list". FFmpeg development. FFmpeg website. Retrieved 14 April 2008.
  7. ^ vitor (30 March 2008). "FFmpeg development mailing list". FFmpeg development. FFmpeg website. Retrieved 30 March 2008.
  8. ^ faust3 (21 March 2008). "FFmpeg development mailing list". FFmpeg development. FFmpeg website. Retrieved 21 March 2008.{{cite web}}: CS1 maint: numeric names: authors list (link)
  9. ^ benoit (14 April 2008). "FFmpeg development mailing list". FFmpeg development. FFmpeg website. Retrieved 14 April 2008.
  10. ^ ramiro (18 March 2008). "FFmpeg development mailing list". FFmpeg development. FFmpeg website. Retrieved 18 March 2008.
  11. ^ banan (8 June 2008). "FFmpeg development mailing list". FFmpeg development. FFmpeg website. Retrieved 8 June 2008.
  12. ^ http://ffmpeg.org/projects.html
  13. ^ "Codecs list".
  14. ^ "Legal information on FFmpeg's website".
  15. ^ . Council Directive 91/250/EEC of 14 May 1991 on the legal protection of computer programs. {{cite encyclopedia}}: Missing or empty |title= (help)