操作环境
系统:Mac M2
Android NDK版本:25.08
CMake版本:
需求
视频监控的播放器有一个对讲功能,需要添加回音消除,以免回声问题导致无法分辨
探索
在网上搜索了一下方案基本上就有两种:
1.webRTC
2.Speex
最终的选择:SpeexDsp
webRTC主要的难点是编译难度比较大,从效果上来看的话,个人觉得比Speex要好,而且webRTC迭代比较快,后期有时间的话,应该会使用来进行对比
Speex主要的是编解码库,而且很多年没有进行更新迭代,但比较轻量,编译也比较简单
编译
speex源码地址: 我是用的这个
编译脚本
speexdsp 文件夹中 mkdir jni
cd jni
vi Android.mk
vi Application.mk
# Android.mk
LOCAL_PATH