我正在尝试使用 FFmpeg 和 iLBC 编解码器对文件进行编码,例如:
ffmpeg -i audio.wav -ar 8000 -acodec ilbc audio.lbc -y
这在 Windows 上运行良好,但在 Mac OS X 上我收到了错误Unknown encoder 'ilbc'
。
这FFmpeg 官方文档关于 libilbc 有以下说法:
去https://github.com/dekkers/libilbc并按照说明安装该库。然后通过
--enable-libilbc
configure 来启用它。
我之前从未编译过库,因此我尝试编辑酿造配方,并在适当的地方添加以下几行:
option "with-libilbc", "Enable iLBC library
args << "--enable-libilbc" if build.with? "libilbc"
然后使用 重新安装 ffmpeg brew install ffmpeg --with-libilbc
。但是,这只会导致构建失败,而且我没有看到任何与 iLBC 相关的消息错误。我的假设是,无论如何,此时库只是缺失了。
因此我的问题是:
- 如何为 Mac OS X 编译 FFmpeg 文档中提到的 libilbc?
- 然后我可以以某种方式将它连接到 brew 以便用它重建 ffmpeg 吗?
答案1
您链接的存储库缺少配置文件,尽管安装文件中提到了它。这看起来像一个更好的存储库https://github.com/Distrotech/libilbc-webrtc
所以你要做的是
git clone https://github.com/Distrotech/libilbc-webrtc.git
cd libilbc-webrtc
./configure
make
make install
然后不要忘记实际使用您在 brew 文件中添加的选项,如下所示:
brew install --with-ilbc -v
答案2
ffmpeg
为此,我放弃了使用。我使用afconvert
(MacOS 默认包含)解决了该问题。例如:
afconvert test.mp3 -o test.caf -d ilbc