如何使用 FFMPEG 将 MP3 转换为恒定比特率



我发现以可变比特率编码的 MP3 会导致错误地报告当前时间属性,尤其是在清理时。这对我的应用程序造成了严重破坏,并且一直是调试的噩梦。

我相信我需要将所有 MP3 转换为恒定比特率。FFMPEG(或其他东西)可以帮助我有效地做到这一点吗?

  • 支持特里尔·汤普森试图确定这一点*

我也遇到了HTML5对于大型mp3不准确的问题。由于质量对我的音频来说不是一个大问题,我转换为 8kbps 的恒定比特率、采样率 8k、单声道,它解决了我的问题。

您可以使用 Audacity 将几个文件转换为固定比特率(导出>保存为 mp3>恒定比特率)。

或者,使用 FFMPEG:

ffmpeg -i input.wav -codec:a libmp3lame -b:a 8k output.mp3

如果您还想降低到单声道和 8k 采样率:

ffmpeg -i input.wav -codec:a libmp3lame -b:a 8k -ac 1 -ar 8000 output.mp3

使用第二个压缩一小时的音频到5MB以下。

其他事情正在发生。 currentTime不应受到使用可变比特率 MP3 这一事实的影响。

也许上下文采样率与 MP3 的采样率不同? 这会弄乱音频样本的时间,因为 WebAudio 会将 MP3 重新采样为上下文采样率。

最新更新