0

我正在尝试为 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 解码?

4

1 回答 1

3

外部库

外部库支持需要外部库作为依赖项。因此,它的头文件和任何其他必需的文件必须在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 )
于 2014-12-16T18:35:42.837 回答