我经常使用 alexa音频标签。我知道现在音频标签支持 24kHz 音频文件,所以尝试从 16kHz 转换我的音频文件。我使用文档中提供的命令来执行此操作:
ffmpeg -i <input-file> -ac 2 -codec:a libmp3lame -b:a 48k -ar 24000 <output-file.mp3>
但是当我尝试播放这个文件时,我收到一个无效的响应错误,说:Error: The audio is of an unsupported bitrate 64000
. 通过查看文件详细信息,我清楚地看到,比特率为 48kbps,采样率为 24kHz。我没有看到它会说 64 或接近它的任何值。
如果我将文件编码回 16kHz,它会再次正常播放。
这个命令似乎有问题,因为如果我使用 audacity 对我的文件进行编码,它们可以在 24kHz 下工作。我仍然更喜欢使用 ffmpeg,因为我需要对很多文件进行编码。
我问的不是文件格式,格式是否正确。我需要 24kHz 采样率的文件,这就是导致问题的原因。我看到了另一个关于类似问题的问题,其他人在那里讨论了采样率,但没有人能够使用 ffmpeg 将文件编码为 24kHz。
有没有人使用 ffmpeg 将文件编码为 24kHz?
感谢LordNeckbeard建议使用lame
而不是 ffmpeg。因此,为了对文件进行编码并使它们以 24kHz 的频率存在,您可以使用以下命令:
lame -b48 --resample 24 input.mp3 output.mp3
Alexa 不会抱怨这样编码的文件。同样如问题中所述,您仍然可以使用 audacity,但我更喜欢使用 CLI,因为我总是必须对一批文件进行编码。
不过,如果有人想出如何做到这一点,ffmpeg
请分享。
编辑:
再次感谢LordNeckbeard建议-write_xing 0
为ffmpeg
命令添加标志,现在它也可以工作了。
实现 24kHz 音频文件的命令ffmpeg
是:
ffmpeg -i input.mp3 -codec:a libmp3lame -ac 2 -ar 24000 -b:a 48k -write_xing 0 output.mp3
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句