Audiotrack结合AndroidReco之回音消除

来自嘉兴的攻城狮 2017-07-19 03:39:01
在做音频通话功能,同时使用Audiotrack放音和AndroidRecod录音,当手机处于外放模式下,会将外放的声音也录入到手机并发送到接收端。请问有没有什么好的解决方案?
...全文
512 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Code王工 2017-11-27
  • 打赏
  • 举报
回复
AcousticEchoCanceler 可能在部分手机上会有适配的问题,总之就是在有些手机上有效果,在有些手机上没效果。谁让android的机型这么多。另外 webrtc的AEC、AECM模块,从我个人的实际测试来看,是比较不错的效果,当然基于软件层的消音不可能达到百分之百,尤其是当回音音量特别的大时候处理的就稍微差一些,在回音音量较小的时候处理的还不错。webrtc源码是c和c++的源码,其中的aec模块支持单独抽取编译。想要移植到android,只能将源码编译成动态库,做好jni接口就可以。有想进一步探讨的同学,可以加我qq 1067129856,我这边有最新源码编译的库和编写的demo
  • 打赏
  • 举报
回复
我使用了网上说的AcousticEchoCanceler处理过,但是没有效果。我看过我使用的设备是支持AcousticEchoCanceler。所以我不怎么会搞。wenrtc使用不了解,请问你有使用过吗?
chengzhouyang11 2017-07-20
  • 打赏
  • 举报
回复
你在用AcousticEchoCanceler做回音消除的时候,把采样频率调高效果会明显一点,但即使是webrtc和speex也没法消除所有回音,webrtc我目前只编译出了动态库,使用的方法还在学习中
chengzhouyang11 2017-07-19
  • 打赏
  • 举报
回复
看lz需求,如果lz的硬件是自己做的,那么可以使用android自带的回音消除和噪声抑制(AcousticEchoCanceler、NoiseSuppressor)、使用起来很方便,百度一下,几句代码就行,效果还行,使用起来至少不会有啸叫,这个方法的缺点就是有些设备不支持。如果需要适配多种硬件的,那么只有使用webrtc或者speex,其中webrtc可以单独编译音频处理模块,但speex会自带编解码,最近我也在学习,但网上资料对使用的介绍真的很少大多都是介绍如何编译,对andoid开发有些不友好

80,361

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧