為什麼 FFMPEG 會為影片添加額外的位元率?

為什麼 FFMPEG 會為影片添加額外的位元率?

我使用 FFMPEG(命令列輸入)將影片轉換為特定的輸出格式。我面臨的問題是,當我嘗試將恆定位元率(700 kbps)傳遞給 FFMPEG 時,結果是輸出影片具有不同的位元率(例如 1000 kbps)。所有影片都會出現這種現象。我需要保持恆定的位元率。誰能幫我嗎。

我的FFMPEG版本是0.5

我傳遞給 FFMPEG 的命令列參數是,

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

編輯:

當我使用以下參數時,我能夠以 +/- 3% 的波動強制 CBR。

 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,maxratebufsize(請參閱這裡

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

相關內容