Quais são todos os codecs e formatos suportados pelo FFmpeg?

135

Eu preciso de uma lista de codecs e formatos suportados pelo FFmpeg. Onde posso encontrá-lo?

poobalan
fonte
Deve haver um site SE para FFmpeg. Por favor, siga e verificar o seu e-mail para elenco que você vote!
Shimmy Weitzhandler
Minha pergunta semelhante tem uma boa resposta: stackoverflow.com/questions/8727992/...
Sugrue

Respostas:

171

Codecs adequados:

ffmpeg -codecs

Formatos:

ffmpeg -formats
Matthew Flaschen
fonte
4
Isso seria apenas uma lista de formatos suportados por uma compilação / instalação específica do FFmpeg. Há uma gama muito ampla de compilações do FFmpeg em uso.
mikerobi
19
Sim, se você estiver interessado abstratamente, pode consultar o código fonte e a documentação mais ampla. No entanto, a maioria das pessoas estará inicialmente interessada no seu ffmpeg.
Matthew Flaschen
1
Acho que depende da intenção do interlocutor, mas não o considero abstrato. Se um cliente ligar e me pedir para dar suporte ao Purple Unicorn Codec 2.718, não me ocorreria ffmpeg -formats.
mikerobi
FWIW, a opção "-codec" não está disponível para a versão ffmpeg SVN-r0.5.10 e (presumivelmente) anteriormente.
Digger
@ Matthew Não necessariamente ... A principal razão pela qual estou interessado em ver se um codec é suportado é que eu já recebi uma mensagem "Codec não suportado" do meu ffprobe e quero ver se isso é devido à minha instalação local ....
Ntg 18/04
120

Os formatos e codecs suportados por sua compilação ffmpegpodem variar de acordo com a versão, como foi compilada e se alguma biblioteca externa, como libx264, foi suportada durante a compilação.

Formatos (muxers e desmuxers):

Listar todos os formatos:

ffmpeg -formats

Exibir opções específicas e informações sobre um muxer específico:

ffmpeg -h muxer=matroska

Exibir opções específicas e informações sobre um desmuxador específico:

ffmpeg -h demuxer=gif

Codecs (codificadores e decodificadores):

Listar todos os codecs:

ffmpeg -codecs

Listar todos os codificadores:

ffmpeg -encoders

Listar todos os decodificadores:

ffmpeg -decoders

Exibir opções específicas e informações sobre um codificador específico:

ffmpeg -h encoder=mpeg4

Exibir opções específicas e informações sobre um determinado decodificador:

ffmpeg -h decoder=aac

Lendo os resultados

Há uma chave na parte superior da saída que descreve cada letra que precede o nome do formato, codificador, decodificador ou 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

Neste exemplo, V.S...indica que o codificador mpeg4é um Vcodificador de vídeo e suporta Smultithreading no nível de piolhos.

Veja também

O que é um codec e como ele difere de um formato?

llogan
fonte
Muito obrigado llogan por essas opções de filtragem extras. É possível ir mais longe e, por exemplo, pedir ao FFMPEG para listar todos os codificadores / decodificadores que são apenas para vídeo ou apenas para áudio?
spaceman
1
@ spaceman Você pode fazer isso com algum processamento adicional. Exemplo de uso grepno Linux:ffmpeg -encoders | grep "^ V"
llogan
59
ffmpeg -codecs

deve fornecer todas as informações sobre os codecs disponíveis.

Você verá algumas letras ao lado dos 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
suja
fonte