Почему FFMPEG добавляет дополнительную скорость передачи данных к видео?

Почему FFMPEG добавляет дополнительную скорость передачи данных к видео?

Я использую FFMPEG (ввод командной строки) для преобразования моих видео в определенный выходной формат. Проблема, с которой я сталкиваюсь, заключается в том, что когда я пытаюсь передать постоянный битрейт (700 кбит/с) в FFMPEG, результатом является выходное видео с другим битрейтом (скажем, 1000 кбит/с). Это явление неизменно происходит для всех видео. Почему это происходит? Мне нужно поддерживать постоянный битрейт. Может ли кто-нибудь мне помочь.

Моя версия FFMPEG — 0.5

Параметр командной строки, который я передаю в FFMPEG, следующий:

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

РЕДАКТИРОВАТЬ:

Мне удалось принудительно задать CBR с колебанием +/- 3%, используя следующие параметры.

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

Но когда я использовал -maxrate и -minrate вместе с моим набором параметров, я не смог принудительно включить CBR. Мой набор параметров следующий:

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

Почему это происходит?

решение1

Для принудительного CBR следует использовать minrate, maxrateи bufsize(см.здесь)

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

Связанный контент