webrtc的音频处理模块apm( audio processing)下载与编译出libwebrtc_audio_preprocessing.so
16lz
2021-01-25
2017-05-22更新! http://pan.baidu.com/s/1nvbTcRf
jni修改后的代码,可以直接ndk-build出so文件!!!!!!!!
-------------------------------------------------------
webrtc代码在android和chromium项目中都有。但是android中的那个带有Android.mk,稍微修改下就能用ndk-build编译出libwebrtc_audio_preprocessing.so
git clone https://android.googlesource.com/platform/external/webrtc
更新 cd webrtc
apm几个模块: NS(Noise Suppression 噪声抑制)、 VAD(Voice Activity Detection 静音检测)、 AECM(Acoustic Echo Canceller for Mobile 声学回声消除) AGC(Auto Gain Control 自动增益控制)
刚开始目录: 删除了modules下的audio_coding目录,并把src改名为webrtc了,当然同时得修改Android.mk中对audio_coding相关mk的引用,还要修改路径,原来是src,要改成webrtc.
最后会生成libwebrtc_audio_coding.so,这个需要在Android.mk中修改。其中有个
LOCAL_MODULE := libwebrtc_audio_coding 把相关的删除,从 include $(CLEAR_VARS) 。。。。 include $(BUILD_SHARED_LIBRARY)
这个也可以通过上面一样的办法删除 LOCAL_MODULE := libwebrtc_audio_coding_gnustl_static
其它文件删除: MODULE_LICENSE_BSD, NOTICE, TODO test目录删除,.git目录删除
最终效果:
发现在modules\audio_processing\test目录下有unit_test.cc
ndk-build编译,几乎很少改动。即可生成libwebrtc_audio_preprocessing.so
===================================
上面错误解决:需要将源代码放在一个叫jni的目录中。
解决:
#include