如何将 python AudioSegment 提取转换为 ffmpeg 命令?

How do I transform python AudioSegment extraction to an ffmpeg command?

我有一个 python 脚本,可以加载 MP4 文件并将音频保存到 OGG 文件,如下所示:

movie = AudioSegment.from_file(f"movie.mp4", format="mp4")
movie.export(f"audio.ogg", format="ogg")

我想将其提取到一个 bash 脚本中,该脚本将在我们创建 Debian 软件包时 运行 一次。为此,我更喜欢 bash 而不是 python。以下命令是否等效?

ffmpeg -i movie.mp4 -vn audio.ogg

它似乎有效(音频听起来一样),但我想确保它尽可能接近原始转换。结果文件显然不能进行比较。

ffmpeg -i movie.mp4 -vn audio.ogg
  • 是的,这会将 MP4 中的音频转换为 Vorbis 音频并将其放入 OGG 容器中。

  • 由于 -vn,视频将被忽略。

  • 这假设你的 ffmpeg 是用 --enable-libvorbis 编译的(它通常为分布式 ffmpeg 包启用,比如来自你的发行版)。如果不是,则 ffmpeg 将回退到本机内置 FLAC 编码器。您可以通过添加 -c:a libvorbis 输出选项来防止这种情况,如果 libvorbis 不可用,它将失败。