【问题标题】:FFMPEG ignores bitrateFFMPEG 忽略比特率
【发布时间】:2012-05-15 15:58:57
【问题描述】:

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

我正在使用 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 = 覆盖默认音频编解码器

【问题讨论】:

  • 您的非工作命令的完整 ffmpeg 控制台输出丢失。它可能会提供一些有用的信息,并且始终是尝试重现问题的第一步。

标签: ffmpeg bitrate


【解决方案1】:

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

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

【讨论】:

  • 就是这样。一定是音频编解码器增加了文件大小。我将编解码器更改为 libvorbis,文件大小急剧下降。更新问题中的最终命令。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-01-25
  • 2020-09-21
  • 2017-10-21
  • 2017-09-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多