我正在尝试为Android编译ffmpeg以将amr文件转换为wav。所以我跑了:
./configure --help |grep arm
我得到了:
--enable-libopencore-amrnb enable AMR-NB de/encoding via libopencore-amrnb [no]
--enable-libopencore-amrwb enable AMR-WB decoding via libopencore-amrwb [no]
--enable-libvo-amrwbenc enable AMR-WB encoding via libvo-amrwbenc [no]
所以为了解码amr,我想我应该在配置脚本中使用--enable-libopencore-amrwb,对吧?但是当我将它添加到我的配置脚本时,我得到:
ERROR: libopencore_amrwb not found
我该怎么办?我应该下载opencore-amr库并将源代码放在任何地方吗?或者还有其他方法可以在ffmpeg中进行amr解码?
答案 0 :(得分:2)
外部库支持需要外部库作为依赖项。因此,在ffmpeg
编译期间,其标题和任何其他必需文件必须可用。
然而,FFmpeg本身支持解码AMR-WB和AMR-NB,因此您可能不需要这些外部库,除非它们提供本机解码器中不存在的功能。
$ ffmpeg -codecs | grep -i amr
D..... = Decoding supported
..A... = Audio codec
....L. = Lossy compression
-------
D.A.L. amr_nb AMR-NB (Adaptive Multi-Rate NarrowBand) (decoders:amrnb )
D.A.L. amr_wb AMR-WB (Adaptive Multi-Rate WideBand) (decoders: amrwb )