You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用ffmpeg将opus文件转换为可被python soundfile读取的ogg文件

报错原因

你使用的FFmpeg版本编译时未启用libvorbis编码器支持,从给出的编译配置中也可看到未包含--enable-libvorbis参数,因此调用libvorbis编码时抛出未知编码器错误。

修复步骤

1. 安装带libvorbis支持的FFmpeg

  • 若使用conda环境,执行以下命令重装:
    conda install -c conda-forge ffmpeg libvorbis
  • 若为系统级安装,对应操作系统执行安装命令:
    • Debian/Ubuntu系列:sudo apt install ffmpeg libvorbis-dev
    • CentOS/RHEL系列:sudo yum install ffmpeg libvorbis-devel
    • macOS:brew install ffmpeg libvorbis

2. 验证编码器可用性

执行以下命令,输出中包含libvorbis字段即说明配置正常:
ffmpeg -encoders | grep vorbis

3. 批量转换opus文件

转换完成后的ogg文件可直接通过python-soundfile库读取。

Linux/macOS 环境

在opus文件存储目录下执行以下命令,会遍历当前目录所有.opus文件转换为同名.ogg文件,原文件保留:
for file in *.opus; do ffmpeg -i "$file" -c:a libvorbis -b:a 16k "${file%.opus}.ogg"; done

Windows 环境

新建后缀为.bat的脚本文件,放入opus文件目录后双击运行:

@echo off
for %%i in (*.opus) do (
    ffmpeg -i "%%i" -c:a libvorbis -b:a 16k "%%~ni.ogg"
)

可选优化

如果对音频质量要求更高,可将命令中的固定码率参数-b:a 16k替换为VBR模式参数-q:a 3,同等码率下音质表现更佳。

内容的提问来源于stack exchange,提问作者Zabir Al Nazi Nabil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 04:39:03