FFMPEG忽略比特率

时间:2012-05-15 15:58:58

标签: ffmpeg bitrate

我是视频编码新手所以请耐心等待。

我正在使用FFMPEG。我有一个640 x 350的mp4文件,平均比特率约为2000kb(我认为),文件大小为80Mb。我想将其转换为具有低得多的比特率(128kb)但宽度和高度相同的ogv文件。我正在使用以下命令...

ffmpeg -i input.mp4 -b:v 128k output.ogv

...但是FFMPEG似乎忽略了我的比特率选项并输出了一个大约600kb的比特率和大约3Mb的文件大小的文件。

我可以使用FFMPEG2THEORA使用以下命令来执行此操作...

ffmpeg2theora -V 128 input.mp4 -o output.ogv

......但我想知道是否有可能使用FFMPEG。

有什么想法吗?

修改

mark4o解决了我的问题。事实证明,默认音频编解码器正在提升文件大小。将其更改为libvorbis可显着减少文件大小。最终命令看起来像

ffmpeg -i input.mp4 -b:v 128k -b:a 128k -codec:a libvorbis output128.ogv
  • -i =输入文件
  • -b:v =视频流的比特率
  • -b:a =音频流的比特率
  • -codec:a =覆盖默认音频编解码器

1 个答案:

答案 0 :(得分:4)

-b:v仅影响视频比特率。出于某种原因,ffmpeg默认使用flac音频编解码器进行.ogv输出(至少在某些版本中)。在这种情况下,flac音频将比您的视频更大。

假设您需要vorbis音频,请在输出文件名之前使用选项-codec:a libvorbis(或某些版本中的-acodec libvorbis)来指定此项。您可能还想为音频指定比特率,例如-b:a 32k(或-ba 32k)。如果您希望比特率为128kbps,请指定总计128k的音频和视频比特率(如果您想要补偿ogg容器开销,则可以少一点)。