FFmpeg 支持哪些编解码器和格式?

我需要一个由 FFmpeg 支持的编解码器和格式的列表。我在哪里可以找到它?

251919 次浏览

适当的解码器:

ffmpeg -codecs

格式:

ffmpeg -formats

您可以在官方文档中看到支持的编解码器列表:

支持视频编解码器

支持音频编解码器

ffmpeg -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

构建的 ffmpeg所支持的 格式解码器可能因版本、编译方式以及编译期间是否支持任何外部库(如 libx264)而有所不同。

格式(复用器和复用器) :

列出所有格式:

ffmpeg -formats

显示特定于特定混频器的选项以及有关特定混频器的信息:

ffmpeg -h muxer=matroska

显示特定于特定分解器的选项和有关特定分解器的信息:

ffmpeg -h demuxer=gif

编解码器(编码器和解码器) :

列出所有解码器:

ffmpeg -codecs

列出所有编码器:

ffmpeg -encoders

列出所有解码器:

ffmpeg -decoders

显示特定于特定编码器的选项和有关特定编码器的信息:

ffmpeg -h encoder=mpeg4

显示特定于特定解码器的选项和关于特定解码器的信息:

ffmpeg -h decoder=aac

看结果

输出顶部附近有一个键,它描述格式、编码器、解码器或编解码器名称前面的每个字母:

$ 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

在这个例子中,V.S...表明编码器 mpeg4是一个 Video 编码器,并支持 Slice 级多线程。

也看到了

什么是编解码器? 它与格式有什么不同?