Speex 回音消除 在android 平台上 初见成效-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

Speex 回音消除 在android 平台上 初见成效

简介: 也不知和上一篇,你们二位是同一位仁兄不,所以,还是分着转载吧! Speex 回音消除 在android 平台上 初见成效 搞了将近一个月的时间,将Speex的编码和解码做好了,发现还不错。

也不知和上一篇,你们二位是同一位仁兄不,所以,还是分着转载吧!


Speex 回音消除 在android 平台上 初见成效

搞了将近一个月的时间,将Speex的编码和解码做好了,发现还不错。

参考API,又尝试了回音消除,发现最新版还提供了用于在多线程中的playback()和capture(),有了这两个函数,就可以避免在线程中不能同步的问题。

结果,发现虽然进行了回音有了部分消除,但是,还是会一点啸叫以及回声,想来还是要做一点处理,譬如去噪,减小播放或者来音的增益。

在使用了speex提供的 preprocessor 函数后 ,原以为会更好的消除噪声,可视发现也没什么变化,反而可能会更弱,这是为什么

Update:5//12

在使用了Speex回声消除之后,以及添加了预处理的一些Api,并且优化了程序的结构,例如在接收数据然后用来播放的过程中,使用了Ringbuffer来保证数据包处理质量。

最后的结果:

1两个手机都打开扬声器 且放到最大,在不同的房间里,能够听到一声回声,即喂……喂

2两个手机不开扬声器,正常通话音量,在不同的房间里,没有回声。

因为最近比较忙,在做android上,Sip的实现内容,所以没时间贴出具体的语音处理传送项目的实现原理和步骤,等过段时间一定补上,如果有疑问,我也尽量回答

Update: 3/11

看了这篇文章:http://blog.csdn.net/zblue78/article/details/5841357 ,发现我的参数设置错误了

前几天,试了一下,把预处理里面的几个语音预处理功能都打开了,譬如去噪,VAD,结果发现确实效果不错,在没有人音的时候,确实噪声被去掉了,不过,

以前没有延时,因为加了很多处理,所以增加了开销,所以有了500ms的延时(或许吧)。 回音还是会有一点,可能还是参数设置和同步队列的问题。期待解决

Advertising

如无特别说明,本站文章皆为原创,若要转载,务必请注明以下原文信息:
日志标题:《Speex 回音消除 在android 平台上 初见成效》
日志链接:http://www.wuphone.com/4999.html
博客名称:无锋网

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章