opencore-amr编译

2022/6/28 23:28:32

本文主要是介绍opencore-amr编译,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

安装 msys

根据官网文档安装

  • 64位 pacman -S --needed base-devel mingw-w64-x86_64-toolchain

  • 32位 pacman -S --needed base-devel mingw-w64-i686-toolchain

需要编译32位或者64位库就将哪个mingw的目录添到

环境变量中

export PATH=$PATH:(mingw32(64)的bin,目录)

gcc -v 有打印版本信息即可

下载 opencore-amr

选择下载 opencore-amr vo-amrwbenc

编译通过的是 (opencore-amr-0.1.5.tar.gz,vo-amrwbenc-0.1.3.tar.gz)

在msys中切到库的目录

opencore-amr 编译

./configure
make -j4

编译完成后会生成的目录在

amrnb/.lib
amrwb/.lib 需要搭配 vo-amrwbenc的库使用

vo-amrwbenc 编译

./configure
make -j4

编译完成后会生成的目录在
vo-amrwbenc\.libs

pjsip库使用opencore-amr

本文是在编译pjproject(pjsip库)时需要使用到 open-amr(8k,16k)的编码,将

libopencore-amrnb.a (amr 8k)
libopencore-amrwb.a (amr 16k)
libvo-amrwbenc.a (amr 16k需要用到)

放到 libpjproject-*.lib目录下即可

会出现以下编译错误

libvo-amrwbenc.a(voAMRWBEnc.o) : error LNK2019: 无法解析的外部符号 ___chkstk_ms,函数 _coder 中引用了该符号
libvo-amrwbenc.a(wb_vad.o) : error LNK2019: 无法解析的外部符号 ___mingw_vfprintf,函数 _fprintf 中引用了该符号
libvo-amrwbenc.a(dtx.o) : error LNK2001: 无法解析的外部符号 ___mingw_vfprintf
libvo-amrwbenc.a(q_pulse.o) : error LNK2001: 无法解析的外部符号 ___mingw_vfprintf

将用到mingw编译器对应的目录下面有这两个.a文件,引用到工程里面即可

libgcc.a
libmingwex.a


这篇关于opencore-amr编译的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程