ubuntu16.04系统中webrtc audio processing模块下载编译踩坑过程记录

WebRTC是google开源的一个免插件实时视频通信技术,其分为web开发和native开发;目前支持chrome,firefox,android,ios,opera,edge。是一个真正意义上的跨平台免插件实时视频通信技术。但是因为我国著名的长城,要下载整个webRTC非常困难。

本文主要是webRTC的native层语音处理的代码架构和对一个native层语音算法测试程序的梳理。native层的一些语音算法可以用于语音识别前处理。如果想只使用native层的语音处理算法(aec,aecm,agc,ns,vad等),那么可以选择安装下面的代码库,有几点要说明一下:

  • 该代码库是基于Linux系统的,我的安装环境是ubuntu16.04
  • 这个代码和最新的webRTC并不是同步的,晚个半年是很正常的
git clone git://anongit.freedesktop.org/pulseaudio/webrtc-audio-processing

目前下载版本为0.3,整个下载包只有6M字节。下载目录为webrtc-audio-processing

 

编译过程如下:

源码里面没有直接的makefile,但是它有Makefile.amconfigure.in,这里就不详细解释他们直接的关联,直接给出如何操作生成makefile

具体操作步骤如下:

1. 执行aclocal,产生aclocal.m4文件

aclocal 
  • aclocal是个perl脚本程序,根据configure.in文件的内容,自动生成aclocal.m4文件。而aclocal.m4文件中,包含了生成configure文件所必须的宏。

2. 执行autoconf,生成configure文件

autoconf
  • autoconf会根据configure.inaclocal.m4文件,生成configure文件。

3. 执行automake命令,产生Makefile.in

automake --add-missing
  • automake会根据Makefile.am文件产生一些文件,包含最重要的Makefile.in。前面所生成的configure,会根据Makefile.in文件,来生成最终的Makefile文件。

4. 执行configure命令,生成Makefile文件

这样,就产生了编译所需要的Makefile文件。运行make,即可编译。

./configure

make

NOTE:在linux下执行automake时候出错:


$ automake --add-missing
....
configure.in:18: required file `build/ltmain.sh' not found
-------------------------------------------------------------------------

解决方案(libtoolize配置即可):

$libtoolize --version

$libtoolize --automake --copy --debug --force

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值