Por que o FFMPEG adiciona taxa de bits extra ao vídeo?

1

Eu uso FFMPEG (entrada de linha de comando) para converter meus vídeos para um formato de saída específico. O problema que estou enfrentando é quando tento passar uma taxa de bits constante (700 kbps) para o FFMPEG, o resultado é um vídeo de saída com uma taxa de bits diferente (digamos, 1000 kbps). Esse fenômeno ocorre invariavelmente para todos os vídeos. Por que isso está acontecendo? Eu preciso manter uma taxa de bits constante. Alguém pode me ajudar.

Minha versão do FFMPEG é de 0,5

O parâmetro da linha de comando que estou passando para o FFMPEG é,

-i {inputfile}
-b 700k -ab 64k
-vcodec libx264
-acodec libfaac -ac 2 -ar 44100
-y -s 320x240 
{outputfile}

EDITAR:

Consegui forçar o CBR com uma flutuação de +/- 3% quando usei os seguintes parâmetros.

 ffmpeg -i myfile.avi
 -b 4000k -minrate 4000k 
 -maxrate 4000k -bufsize 1835k   out.m2v

Mas quando usei -maxrate e - minrate junto com o meu conjunto de parâmetros, não consegui forçar o CBR. Meu conjunto de parâmetros é o seguinte,

-i {inputfile}
-b 1200k -minrate 1200k 
 -maxrate 1200k -bufsize 1200k 
-ab 64k -vcodec libx264
-acodec libfaac -ac 2 -ar 44100
-y -s 320x240 
{outputfile}

Por que isso está acontecendo?


fonte
1
Não se esqueça de que sua taxa de bits de áudio está adicionando 64 kbps.
llogan
Eu pensei que o -binterruptor foi substituído.
Marco
@Marco também não está obsoleto, mas tem um significado diferente do que costumava: -busado para definir a taxa de bits de vídeo, mas agora define a taxa de bits geral (vídeo e áudio). Para definir o bitrate de vídeo, você deve usar mais corretamente -b:v(e em -b:avez de -ab). Nada disso vai ajudar particularmente o questionador, no entanto.
evilsoup

Respostas:

1

Para forçar uma CBR você deve usar minrate, maxratee bufsize(ver aqui )

ffmpeg -i myfile.avi
       -b 4000k -minrate 4000k -maxrate 4000k -bufsize 1835k
       out.m2v
Thor
fonte