使用AMR解码编译ffmpeg

时间:2014-12-16 18:11:51

标签: android ffmpeg amr

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

1 个答案:

答案 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 )