What are all codecs and formats supported by FFmpeg?
Solution 1
Codecs proper:
ffmpeg -codecs
Formats:
ffmpeg -formats
Solution 2
The formats and codecs supported by your build of ffmpeg
can vary due the version, how it was compiled, and if any external libraries, such as libx264, were supported during compilation.
Formats (muxers and demuxers):
List all formats:
ffmpeg -formats
Display options specific to, and information about, a particular muxer:
ffmpeg -h muxer=matroska
Display options specific to, and information about, a particular demuxer:
ffmpeg -h demuxer=gif
Codecs (encoders and decoders):
List all codecs:
ffmpeg -codecs
List all encoders:
ffmpeg -encoders
List all decoders:
ffmpeg -decoders
Display options specific to, and information about, a particular encoder:
ffmpeg -h encoder=mpeg4
Display options specific to, and information about, a particular decoder:
ffmpeg -h decoder=aac
Reading the results
There is a key near the top of the output that describes each letter that precedes the name of the format, encoder, decoder, or codec:
$ ffmpeg -encoders
[…]
Encoders:
V..... = Video
A..... = Audio
S..... = Subtitle
.F.... = Frame-level multithreading
..S... = Slice-level multithreading
...X.. = Codec is experimental
....B. = Supports draw_horiz_band
.....D = Supports direct rendering method 1
------
[…]
V.S... mpeg4 MPEG-4 part 2
In this example V.S...
indicates that the encoder mpeg4
is a V
ideo encoder and supports S
lice-level multithreading.
Also see
What is a codec and how does it differ from a format?
Solution 3
ffmpeg -codecs
should give you all the info about the codecs available.
You will see some letters next to the codecs:
Codecs:
D..... = Decoding supported
.E.... = Encoding supported
..V... = Video codec
..A... = Audio codec
..S... = Subtitle codec
...I.. = Intra frame-only codec
....L. = Lossy compression
.....S = Lossless compression
Solution 4
You can see the list of supported codecs in the official documentation:
Related videos on Youtube
poobalan
Updated on December 18, 2020Comments
-
poobalan over 3 years
I need a list of codecs and formats supported by FFmpeg. Where can I find it?
-
Shimmy Weitzhandler about 12 yearsThere should be a SE site for FFmpeg. Please follow and verify your email to cast you vote!
-
Sugrue about 12 yearsMy similar question got a good answer: stackoverflow.com/questions/8727992/…
-
-
mikerobi over 12 yearsThat would only be a list of formats supported by a specific build/installation of FFmpeg. There are a very wide range of FFmpeg builds in use.
-
Matthew Flaschen over 12 yearsYes, if you're interested in it abstractly, you can consult the source code and broader documentation. However, most people will initially be interested in their ffmpeg.
-
mikerobi over 12 yearsI guess it depends on the intent of the questioner, but I don't consider it abstract. If a client calls and ask me to support the Purple Unicorn Codec 2.718, it wouldn't occur to me to do
ffmpeg -formats
. -
Digger over 8 yearsFWIW, the "-codec" option is not available for ffmpeg version SVN-r0.5.10 and (presumably) earlier.
-
ntg about 7 years@Matthew Not necessarily... The main reason I am interested to see if a codec is supported is that I already got an "Unsupported codec" message from my ffprobe and want to see if this is due to my local installation....
-
spaceman about 4 yearsThank you very much llogan for those extra filtering options. Is it possible to further go, and for example ask FFMPEG to list all Encoders/Decoders that are only for Video, or only for Audio?
-
llogan about 4 years@spaceman You can do that with some additional processing. Example using
grep
on Linux:ffmpeg -encoders | grep "^ V"
-
OrangeDog over 3 yearsCodecs, those DEVILS.
-
Nicke Manarin about 3 yearsIs there any way to list codecs available for each format?
-
llogan about 3 years@NickeManarin No, but you can view the default encoders for a muxer, such as with:
ffmpeg -h muxer=webm