Manual online do FFMPEG (parte 2)
Versão desatualizada. A tradução mais atual pode ser encontrada no site do mantenedor
dividido em duas partes: parte 1; parte 2.
Calculadora FFMPEG
Quando calculando uma cadeia de controle de proporção (“rate control string”), o FFMPEG usa uma calculadora de fórmulas interna.
As seguintes operações binárias estão disponíveis:
As seguintes operações unárias estão disponíveis:
As seguintes funções estão disponíveis:
cosh(x)
tanh(x)
sin(x)
cos(x)
tan(x)
exp(x)
log(x)
squish(x)
gauss(x)
abs(x)
max(x, y)
min(x, y)
gt(x, y)
lt(x, y)
eq(x, y)
bits2qp(bits)
qp2bits(qp)
As seguintes constantes estão disponíveis:
E
iTex
pTex
tex
mv
fCode
iCount
mcVar
var
isI
isP
isB
avgQP
qComp
avgIITex
avgPITex
avgPPTex
avgBPTex
avgTex
Protocolos
O nome do arquivo pode ser ‘-’ para ser lido na entrada padrão ou para ser escrito para saída padrão. O FFMPEG também comporta vários protocolos especificados com uma sintaxe URL. Use ‘ffmpeg -formats‘ para ver uma lista dos protocolos suportados.
O protocolo http: atualmente é usado somente para se comunicar com o servidor FF (“FFserver”) (veja a documentação do FFserver). Quando o FFMPEG for um tocador de vídeo, ele também será usado para fazer transmissão (“streaming”)
Dicas
- Para transmissão (“streaming”) a aplicações com taxas de bits (“bitrate”) muito baixas, use uma proporção de frames baixa e um tamanho pequeno para o Grupo de Imagens (“GOP size”). Isso é especialmente verdade para RealVideo, com o qual o tocador de Linux parece não ser muito rápido, então pode haver perda de frames. Um exemplo é:
ffmpeg -g 3 -r 3 -t 10 -b 50 -s qcif -f rv10 /tmp/b.rm
- O parâmetro ‘q’ que é exibido enquanto acontece a codificação é o ‘quantizer’ atual. O valor 1 indica que uma qualidade muito boa pode ser alcançada. O valor 31 indica a pior qualidade. Se q=31 aparecer com muita freqüência, significa que o codificador não consegue comprimir o suficiente para chegar à taxa de bits (“bitrate”) que você fixou. Você deve ou aumentar a taxa de bits, abaixar a proporção de frames (“frame rate”) ou diminuir o tamanho do frame.
- Se seu computador não é rápido o suficiente, você pode acelerar a compressão perdendo um pouco da proporção de compressão. Você pode usar ‘-me zero’ para acelerar a estimativa de movimentação, e ‘-intra’ para desabilitar completamente a estimativa de movimento (você terá apenas frames-I, o que significa que é uma compressão tão boa quanto uma compressão JPEG).
- Para ter taxas de bits (“bitrates”) muito baixas, reduza a freqüência de amostragem (“sampling frequency”) (para até 22050 kHz para áudio em MPEG, 22050 ou 11025 para áudio em AC3).
- Para ter uma qualidade constante (mas não uma taxa de bits variável (“variable bitrate”)), use a opção ‘-qscale n’, na qual o valor ‘n’ deve estar entre 1 (qualidade excelente) e 31 (pior qualidade).
- Ao converter arquivos de vídeo, você pode usar a função ‘-sameq’, que usa o mesmo fator de qualidade tanto no codificador quanto no decodificador. Ele também permite codificação sem perdas (“lossless encoding”).
Formatos de arquivos suportados e Codecs
Você pode usar a função -formats para ver uma extensa lista.
Formatos de arquivos
O FFMPEG suporta os seguintes formatos de arquivo por meio da biblioteca libavformat:
| Formato de Arquivo Suportado | Codificação | Decodificação | Comentários |
| MPEG Áudio | X | X | |
| MPEG-1 systems (sistemas) | X | X | áudio e vídeo comprimidos juntos (“muxed”) |
| MPEG-2 PS | X | X | também conhecido como arquivo VOB |
| MPEG-2 TS | X | também conhecido como DVB Transport Stream | |
| ASF | X | X | |
| AVI | X | X | |
| WAV | X | X | |
| Macromedia Flash | X | X | Somente áudio embutido (“embedded”) é decodificado. |
| FLV | X | X | arquivos de vídeo Macromedia Flash |
| Real Áudio e Vídeo | X | X | |
| Raw AC3 (AC3 bruto) | X | X | |
| Raw MJPEG (MJPEG bruto) | X | X | |
| Raw MPEG vídeo (MPEG bruto ” vídeo) | X | X | |
| Raw PCM8/16 bits, mulaw/Alaw (PCM bruto) | X | X | |
| Raw CRI ADX áudio (CRI ADX bruto) | X | X | |
| Raw Shorten áudio (Shorten bruto) | X | ||
| SUN AU format | X | X | |
| NUT | X | X | Formato de Container Aberto NUT |
| Quick Time | X | X | |
| MPEG-4 | X | X | MPEG-4 é uma variante do Quick Time. |
| Raw MPEG4 vídeo (MPEG4 bruto) | X | X | |
| DV | X | X | |
| 4xm | X | Formato da 4X Technologies, usado em alguns jogos. | |
| Playstation STR | X | ||
| Id RoQ | X | Usado no Quake III, Jedi Knight 2, outros jogos de computador. | |
| Formato de Arquivo Suportado Interplay MVE | X | Formato usado em vários jogos de computador da Interplay. | |
| WC3 Movie (WC3 filme) | X | Formato multimídia usado no jogo de computador Origin’s Wing Commander III. | |
| Sega FILM/CPK | X | Usado em vários jogos do console Sega Saturn. | |
| Westwood Studios VQA/AUD | X | Formatos multimídia usados nos jogos da Westwood Studios. | |
| Id Cinematic (.cin) | X | Usado no Quake II. | |
| FLIC format | X | arquivos .fli/.flc | |
| Sierra VMD | X | Usado nos jogos de CD-ROM da Sierra. | |
| Sierra Online | X | arquivos .sol usados nos jogos online da Sierra. | |
| Matroska | X | ||
| Electronic Arts Multimedia | X | Usado em vários jogos da EA; os arquivos têm extensões tipo WVE e UV2. | |
| Nullsoft Video (NSV) format | X |
X significa que a codificação (e respectiva decodificação) é suportada.
Formatos de imagens
O FFMPEG pode ler e escrever imagens para cada frame de uma seqüência de vídeo. Os seguintes formatos de imagem são suportados:
| Formato de Imagem Suportado | Codificação | Decodificação | Comentários |
| PGM, PPM | X | X | |
| PAM | X | X | PAM é uma extensão PNM com suporte a camada alfa. |
| PGMYUV | X | X | PGM com componentes U e V em YUV 4:2:0 |
| JPEG | X | X | JPEG progressivo não é suportado. |
| .Y.U.V | X | X | um arquivo bruto por componente |
| GIF animado | X | X | Somente GIFs não comprimidos são gerados. |
| PNG | X | X | 2 bits e 4 bits/pixel ainda não são suportados. |
| SGI | X | X | formato de imagem SGI RGB |
X significa que a codificação (e respectiva decodificação) é suportada.
Codecs de vídeo
| Codec suportado | Codificação | Decodificação | Comentários |
| MPEG-1 video | X | X | |
| MPEG-2 video | X | X | |
| MPEG-4 | X | X | também conhecido como DivX4/5 |
| MSMPEG4 V1 | X | X | |
| MSMPEG4 V2 | X | X | |
| MSMPEG4 V3 | X | X | também conhecido como DivX3 |
| WMV7 | X | X | |
| WMV8 | X | X | não está funcionando completamente |
| H.261 | X | X | |
| H.263(+) | X | X | também conhecido como RealVideo 1.0 |
| H.264 | X | ||
| RealVideo 1.0 | X | X | |
| RealVideo 2.0 | X | X | |
| MJPEG | X | X | |
| lossless MJPEG (MJPEG sem perdas) | X | X | |
| Apple MJPEG-B | X | ||
| Sunplus MJPEG | X | fourcc: SP5X | |
| DV | X | X | |
| HuffYUV | X | X | |
| FFMPEG Video 1 | X | X | codec sem perdas experimental (fourcc: FFV1) |
| FFMPEG Snow | X | X | codec wavelet experimental (fourcc: SNOW) |
| Asus v1 | X | X | fourcc: ASV1 |
| Asus v2 | X | X | fourcc: ASV2 |
| Creative YUV | X | fourcc: CYUV | |
| Sorenson Video 1 | X | X | fourcc: SVQ1 |
| Sorenson Video 3 | X | fourcc: SVQ3 | |
| On2 VP3 | X | ainda experimental | |
| Theora | X | ainda experimental | |
| Intel Indeo 3 | X | ||
| FLV | X | X | Sorenson H.263 usado em Flash |
| ATI VCR1 | X | fourcc: VCR1 | |
| ATI VCR2 | X | fourcc: VCR2 | |
| Cirrus Logic AccuPak | X | fourcc: CLJR | |
| 4X Video | X | Usado em certos jogos de computador | |
| Sony Playstation MDEC | X | ||
| Id RoQ | X | Usado no Quake III, Jedi Knight 2, outros jogos de computador. | |
| Xan/WC3 | X | Usado nos arquivos .MVE do Wing Commander III. | |
| Interplay Video | X | Usado nos arquivos .MVE da Interplay. | |
| Apple Animation (Animação Apple) | X | fourcc: ‘rle ‘ | |
| Apple Graphics (Gráficos Apple) | X | fourcc: ‘smc ‘ | |
| Apple Video | X | fourcc: rpza | |
| Apple QuickDraw | X | fourcc: qdrw | |
| Cinepak | X | ||
| Microsoft RLE | X | ||
| Microsoft Video-1 | X | ||
| Westwood VQA | X | ||
| Id Cinematic Video | X | Usado no Quake II. | |
| Planar RGB | X | fourcc: 8BPS | |
| FLIC video | X | ||
| Duck TrueMotion v1 | X | fourcc: DUCK | |
| Duck TrueMotion v2 | X | fourcc: TM20 | |
| VMD Video | X | Usado nos arquivos VMD da Sierra. | |
| MSZH | X | Parte do LCL | |
| ZLIB | X | X | Parte do LCL, codificador experimental |
| TechSmith Camtasia | X | fourcc: TSCC | |
| IBM Ultimotion | X | fourcc: ULTI | |
| Miro VideoXL | X | fourcc: VIXL | |
| QPEG | X | fourccs: QPEG, Q1.0, Q1.1 | |
| LOCO | X | ||
| Winnov WNV1 | X | ||
| Autodesk Animator Studio Codec | X | fourcc: AASC | |
| Fraps FPS1 | X |
X significa que a codificação (e respectiva decodificação) é suportada.
Veja http://www.mplayerhq.hu/~michael/codec-features.html para ter uma comparação precisa do codec FFMPEG MPEG-4 comparado a outras implementações.
Codecs de áudio
| Codec Suportado | Codificação | Decodificação | Comentários |
| MPEG audio layer 2 (MPEG áudio, camada 2) | IX | IX | |
| MPEG audio layer 1/3 (MPEG áudio, camadas 1/3) | IX | IX | Codificação no formato MP3 é suportada por meio da biblioteca externa LAME. |
| AC3 | IX | IX | liba52 é usada internamente para decodificação. |
| Vorbis | X | X | Suportado por meio da biblioteca externa libvorbis. |
| WMA V1/V2 | X | ||
| AAC | X | X | Suportado por meio da biblioteca externa libfaac/libfaad. |
| Microsoft ADPCM | X | X | |
| MS IMA ADPCM | X | X | |
| QT IMA ADPCM | X | ||
| 4X IMA ADPCM | X | ||
| G.726 ADPCM | X | X | |
| Duck DK3 IMA ADPCM | X | Usado em alguns jogos de console Sega Saturn. | |
| Duck DK4 IMA ADPCM | X | Usado em alguns jogos de console Sega Saturn. | |
| Westwood Studios IMA ADPCM | X | Usado em jogos da Westwood Studios como Command and Conquer. | |
| SMJPEG IMA ADPCM | X | Usado em alguns ports de jogos da Loki. | |
| CD-ROM XA ADPCM | X | ||
| CRI ADX ADPCM | X | X | Usado em jogos da Sega Dreamcast. |
| Electronic Arts ADPCM | X | Usado em vários títulos da EA. | |
| Creative ADPCM | X | ||
| RA144 | X | Codec Real 14400 bit/s | |
| RA288 | X | Codec Real 28800 bit/s | |
| RADnet | X | IX | Codec AC3 com taxa de bits muito baixa, liba52 é usada para decodificação. |
| AMR-NB | X | X | Suportado por uma biblioteca externa. |
| AMR-WB | X | X | Suportado por uma biblioteca externa. |
| DV audio | X | ||
| Id RoQ DPCM | X | Usado no Quake III, Jedi Knight 2, outros jogos de computador. | |
| Interplay MVE DPCM | X | Usado em vários jogos de computador da Interplay. | |
| Xan DPCM | X | Usado nos arquivos AVI do Origin’s Wing Commander IV. | |
| Sierra Online DPCM | X | Usado nos arquivos de áudio dos jogos online da Sierra. | |
| Apple MACE 3 | X | ||
| Apple MACE 6 | X | ||
| FLAC lossless audio | X | ||
| Shorten lossless audio | X | ||
| Apple lossless audio | X | Quick Time fourcc ‘alac’ | |
| FFMPEG Sonic | X | X | codec experimental para compressão com ou sem perdas (“lossy/lossless”) |
| Qdesign QDM2 | X | ainda há algumas distorções | |
| Real COOK | X | Todas as versões, exceto 5.1 são suportadas | |
| DSP Group TrueSpeech | X |
X significa que a codificação (e respectiva decodificação) é suportada. I significa que uma versão “integer-only” está disponível, também (garante alta performance em sistemas sem suporte a ‘hardware floating point’).



