CN105407243B - 一种Android平台上使用改进仿射投影算法的回声消除VOIP系统 - Google Patents
一种Android平台上使用改进仿射投影算法的回声消除VOIP系统 Download PDFInfo
- Publication number
- CN105407243B CN105407243B CN201510701837.3A CN201510701837A CN105407243B CN 105407243 B CN105407243 B CN 105407243B CN 201510701837 A CN201510701837 A CN 201510701837A CN 105407243 B CN105407243 B CN 105407243B
- Authority
- CN
- China
- Prior art keywords
- module
- video
- processing module
- function
- transmission
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M7/00—Arrangements for interconnection between switching centres
- H04M7/006—Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M7/00—Arrangements for interconnection between switching centres
- H04M7/006—Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
- H04M7/0072—Speech codec negotiation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M9/00—Arrangements for interconnection not involving centralised switching
- H04M9/08—Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Telephonic Communication Services (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Telephone Function (AREA)
Abstract
本发明公开了一种Android平台上使用改进仿射投影算法的回声消除VOIP系统,该VOIP系统采用Android开发技术和NDK技术,结合多种网络通信协议,实现语音通话、视频通话功能。该系统主要包括信令模块、传输模块、语音处理模块、视频处理模块、JNI和JAVA界面模块。因为SIP协议具有与Internet一体化、简单化,可扩展等优点,所以信令模块通过SIP协议栈实现具体功能。由于回声问题会严重影响VOIP系统的通话质量,制约了它的发展,因此本发明的语音处理模块采用一种改进仿射投影算法消除回声,从而提高通话质量和通话实时性,增强通话舒适性。视频处理模块使用H.264编码标准。
Description
技术领域
本发明涉及一种Android平台上使用改进仿射投影算法的回声消除VOIP系统,属于计算机通信领域。
背景技术
近几年来,计算机技术与网络技术得到了飞速地发展,三网融合逐渐成为未来互联网发展的趋势。应运而生的VOIP得到了蓬勃的发展。VOIP就是俗称的IP电话,是一种数字电话,是技术创新的通信服务业务。我们传统的PSTN电话采用了公共电话交换网,通过电路交换的交换方式来传输语音信号,而VOIP则是采用分组交换的交换方式,在输入端将模拟语音信号转化数字信号,再将载有语音信息的数据包通过互联网传输,最后在接收端将数字信号转换成模拟语音信号。VOIP技术更加合理地利用了Internet网络资源,降低了语音业务成本,易于部署和易于扩展业务。因此,它得到了快速的发展,比如Skype等IP电话。
Android操作系统凭借其强大的功能、良好的界面、广泛的商业支持,为用户带来很好的体验,成为近几年最热门且发展最快的手机操作系统。基于Android操作系统的VOIP也得到了一定的发展,如SipDroid,IMSDroid,CSipsimple,Linphone,webrtc。
目前很多Android的VOIP系统采用了SPEEX音频编码标准,使用CELP技术,占用2~44Kbps的带宽。SPEEX是一套主要用于VOIP语音压缩开源库,支持对声音的压缩,非常适合网络通信,支持多模式多速率语音编码,提供了窄带(8KHZ)、宽带(6KHz)、超宽带(32KHZ)三种带宽的语音。
目前的VOIP常常会有回声问题。回声问题产生的原因是远端用户产生的语音信号通过扬声器的传播后再被近端传声器采集,回传到远端用户的听筒,使得远端用户能听到自己的说话内容,通话质量严重下降。
目前的SPEEX编码器的回声消除模块采用了频率多延时自适应算法(Muti-delayFrequency Domain,MDF)和标准最小均方差(Normalized LMS,NLMS)算法。
目前主流的回声消除方法是自适应滤波器算法。常用的自适应算法有最小均方(Least mean square,LMS)算法、变步长(Variable step size LMS,VLMS)算法和NLMS算法。
因为语音是非平稳强相关的信号,NLMS及其改进信号在处理此类型号的时候,反馈抑制的性能和稳定性都比较差。所以仿射投影算法(Affine Projection algorithm,APA)被提出。APA是NLMS的多维推广,APA算法通过重复使用输入信号,在输入数据具有强相关性的情况下提高算法的收敛速度,但是APA需要选择合适的步长来取得收敛速度与稳态误差之间的折中。而本发明能够很好地解决上面的问题。
发明内容
本发明目的在于提供了一个基于Android平台的VOIP系统,该系统可以很好地解决在通话过程中的回声问题,提高语音质量,并且增强语音实时性,增加通话的舒适性。同时,该系统还具备视频通话的功能,为用户提供便利。
本发明解决其技术问题所采取的技术方案是:一种Android平台上使用改进仿射投影算法的回声消除VOIP系统,该VOIP系统结合Android开发技术以及NDK框架,主要分为信令模块、传输模块、语音处理模块、视频处理模块、JNI模块和JAVA界面模块。
信令模块实现了系统各种信令的交互功能,具体实现了SIP协议栈。SIP协议栈的实现直接关系到整个系统的质量与效率,本发明采用了纯C语言开发的OSIP及EXOSIP库。
信令模块实现了一个完整的用户代理(UA),它分为用户代理客户机(UAC)和用户代理服务器(UAS),实现了SIP的相关功能。主要包括注册功能、拨打电话功能、释放通话以及接听电话的功能。该系统需设计两个线程,主线程之外设计接听消息的线程。
传输模块用于在语音数据被编码后,把数据包通过互联网传送到目的方。在无线网络数据包的传输过程中可能会遇到各种问题,如丢包、延迟、乱序等。如果不对此进行处理,语音中将会产生抖动、回音或噪声等问题,从而导致通话质量下降。本发明使用开源的ORTP协议来实现此传输功能。RTP协议具备差错控制的功能,一定程度上减轻丢包等带来的影响,提高通话质量。ORTP库是使用纯C语言编写,专门用于语音数据的实时传输,具有很强的移植性。
语音处理模块将语音信号的处理分为语音的采集和播放、语音的编码和解码以及语音数据的发送和接收。在编解码部分,本发明的语音处理模块中使用SPEEX协议,并在该协议的基础上对其中的回声消除模块进行改进;所述回声消除中采用一种改进的仿射投影算法,所述算法重复使用输入信号,并采用变步长算法。
本发明中的回声消除部分采用了一种改进的仿射投影算法。该算法重复使用输入信号,并采用变步长算法,具体算法如下:
W(n+1)=W(n)+μ(n)A(n)[AT(n)A(n)]-1ξ(n)
式中:μmin为最小步长;为先验误差ξ(n)的能量,即
为噪声方差,即
本发明的系统具备视频处理模块,支持H.264视频编码标准,可以实现视频通话功能。在视频编码方面,使用内置编码器。在Android系统中,提供H.264编码的支持,采用UNIX域协议,获取OpenCore媒体框架的编码数据。在视频解码中。采用移植FFmpeg的方法,通过编程解决解码问题。
由于本发明系统中信令模块、传输模块、语音处理模块等模块都采用了C语言编写的协议栈,为了能在Android平台上调用这些模块的功能,本系统借助了NDK开发框架,编写了JNI接口,即JNI模块。
JNI模块是为了JAVA界面模块在Android平台上调用信令模块、传输模块、语音处理模块等其它模块功能而设计的接口,因为所述系统中信令模块、传输模块、语音处理模块等模块都采用了c语言编写的协议栈;
JAVA界面模块负责用户界面的的设计与实现,调用各个JNI接口实现具体的SIP功能,以及管理各个模块之间的通信。
有益效果:
1、本发明是一种在Android平台上使用改进仿射投影算法消除回声的VOIP系统,该系统具备语音通话和视频通话的功能。
2、本发明的回声消除算法相比其它VOIP中的回声消除算法,具有较快的收敛速度和较小的稳定失调,该VOIP系统相比现有的VOIP系统,通话质量以及通话的实时性都得到了提高。
3、本发明中的VOIP系统相比现有VOIP系统,增加了视频通话的功能。
附图说明
图1为本发明的系统模块图。
图2为本发明的回声消除原理示意图。
图3为本发明的实现环境示意图。
图4为本发明的注册界面功能图。
具体实施方式
下面结合说明书附图对本发明创造作进一步的详细说明。
如图1所示,本发明结合Android开发技术以及NDK框架,主要分为信令模块、传输模块、语音处理模块、视频处理模块、JNI模块和JAVA界面模块。JAVA界面模块通过JNI接口调用信令模块,语音处理模块、视频处理模块、传输模块实现的各个功能。语音处理模块和视频处理模块产生的数据包通过传输模块在互联网上进行传输。
信令模块的功能是实现系统各种信令的交互过程,具体实现SIP协议栈,主要包括构造与发送SIP消息,以及对接收到的SIP消息处理后做出相应的响应;
传输模块的功能是在语音数据被编码后,把数据包通过互联网传送到目的方;
语音处理模块负责语音的采集和播放、语音的编码和解码以及语音数据的发送和接收;
视频处理模块负责视频的采集和播放、视频的编码和解码以及视频数据的发送和接收;
JNI模块是实现JAVA界面模块在Android平台上调用信令模块、传输模块、语音处理模块等其它模块功能而设计的接口,因为所述系统中信令模块、传输模块、语音处理模块等模块都采用了c语言编写的协议栈;
JAVA界面模块负责用户界面的的设计与实现,调用各个JNI接口实现具体的SIP功能,以及管理各个模块之间的通信。
本发明中的回声消除原理如图2所示:x(n)是远端输入信号,远端信号x(n)经过实际的回声路径后产生了回声信号y(n),近端语音信号v(n)与回声信号y(n)叠加成为近端信号d(n)。回声消除的算法就是模拟回声路径,产生模拟的回声信号将近端信号d(n)减去模拟的回声就达到了去除回声的目的,即一般地采用M阶有限冲击响应滤波器来估计真实回声路径,在n时刻,自适应滤波器的系数向量为
W(n)=[w0(n),w1(n),…,wM-1(n)]T
记n时刻滤波器的输入信息量为:
x(n)=[x(n),x(n-1),…,x(n-M+1)]T
近端信号:
e(n)=v(n)+y(n)-x(n)TW(n)
去除回声后的信号:
d(n)=y(n)+v(n)=x(n)TW*(n)+v(n)
本发明中提出的一种变步长仿射投影算法通过重复利用输入数据来提高算法的收敛速度。其中:将n时刻前L个输入记为矩阵形式
A(n)=[x(n),x(n-1),…,x(n-L+1)]
本发明提出的一种仿射投影算法还采用了变步长的算法,具体算法包括如下:
W(n+1)=W(n)+μ(n)A(n)[AT(n)A(n)]-1ξ(n)
式中:μmin为最小步长;为先验误差ξ(n)的能量,即
为噪声方差,即
如图3所示是本发明的实现环境。SIP协议的各个终端通过IP数据网络接入到SIP服务器中,通过SIP服务器来实现各种SIP功能。其中VOIP客户端即是本发明中的VOIP系统,它通过WiFi或移动数据连接到SIP协议的数据网络中,并在SIP服务器中完成注册。之后便可以通过该SIP服务器与同样在该服务器上注册的VOIP客户端或电脑客户端,或者传统的PSTN电话进行通讯,继而实现语音通话和视频通话等功能。
如图4所示是本发明的一个注册界面,在这个界面中可以完成本发明在SIP服务器中的注册过程功能。在界面中输入用户名,注册服务器地址,密码,点击注册,界面将会提示注册成功,即完成注册功能。
Claims (1)
1.一种Android平台上使用改进仿射投影算法的回声消除VOIP系统,其特征在于,所述系统包括信令模块、传输模块、语音处理模块、视频处理模块、JNI模块和JAVA界面模块;
信令模块的功能是实现系统各种信令的交互过程,具体实现SIP协议栈,包括构造与发送SIP消息,以及对接收到的SIP消息处理后做出相应的响应;
传输模块的功能是在语音数据被编码后,把数据包通过互联网传送到目的方;
语音处理模块负责语音的采集和播放、语音的编码和解码以及语音数据的发送和接收;
视频处理模块负责视频的采集和播放、视频的编码和解码以及视频数据的发送和接收;
JNI模块是实现JAVA界面模块在Android平台上调用信令模块、传输模块、语音处理模块的功能而设计的接口,所述系统中的信令模块、传输模块、语音处理模块模块都采用了c语言编写的协议栈;
JAVA界面模块负责用户界面的的设计与实现,调用各个JNI接口实现具体的SIP功能,以及管理各个模块之间的通信;
所述系统使用SIP协议作为VOIP的信令协议;
所述系统在传输模块使用RTP协议,具备差错控制的功能;
所述语音处理模块中使用SPEEX协议,并在该协议的基础上对其中的回声消除模块进行改进;所述回声消除中采用一种改进的仿射投影算法,所述算法重复使用输入信号,并采用变步长算法,所述算法包括:
W(n+1)=W(n)+μ(n)A(n)[AT(n)A(n)]-1ξ(n)
式中:μmin为最小步长;为先验误差ξ(n)的能量,即 为噪声方差,即
所述系统支持H.264视频编码标准,实现视频通话功能;在Android系统中,提供H.264编码的支持,采用UNIX域协议,获取OpenCore媒体框架的编码数据,所以在视频编码方面,所述系统使用内置编码器;在视频解码过程中,采用移植FFmpeg的方法;
所述系统设计的JNI模块使得JAVA界面模块直接调用C语言编写的各个其他模块的功能。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510701837.3A CN105407243B (zh) | 2015-10-26 | 2015-10-26 | 一种Android平台上使用改进仿射投影算法的回声消除VOIP系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510701837.3A CN105407243B (zh) | 2015-10-26 | 2015-10-26 | 一种Android平台上使用改进仿射投影算法的回声消除VOIP系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105407243A CN105407243A (zh) | 2016-03-16 |
CN105407243B true CN105407243B (zh) | 2019-02-19 |
Family
ID=55472481
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510701837.3A Active CN105407243B (zh) | 2015-10-26 | 2015-10-26 | 一种Android平台上使用改进仿射投影算法的回声消除VOIP系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105407243B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106409307B (zh) * | 2016-09-28 | 2019-09-27 | 天津大学 | 一种具有选择进化仿射投影阶数的仿射投影方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7660425B1 (en) * | 1999-05-25 | 2010-02-09 | British Telecommunications Plc | Acoustic echo cancellation |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101043560A (zh) * | 2006-03-22 | 2007-09-26 | 北京大学深圳研究生院 | 回声消除器及回声消除方法 |
-
2015
- 2015-10-26 CN CN201510701837.3A patent/CN105407243B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7660425B1 (en) * | 1999-05-25 | 2010-02-09 | British Telecommunications Plc | Acoustic echo cancellation |
Non-Patent Citations (3)
Title |
---|
VoIP 声学回声消除算法研究;王庆辉等;《电子技术》;20090731;正文第1-3页 |
VOIP的相关技术—— 回声消除技术的研究;王权海等;《电脑与信息技术》;20030630;全文 |
基于Android平台的SIP客户端系统的设计与实现;刘恒旭;《信息科技辑》;20121130;正文第20-60页 |
Also Published As
Publication number | Publication date |
---|---|
CN105407243A (zh) | 2016-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7715413B2 (en) | Multi-network exchange system for telephony applications | |
CN102131305B (zh) | 一种语音业务的实现方法和系统 | |
CN101909192B (zh) | 电视终端的通信方法及其电视终端 | |
WO2008036558A3 (en) | Mid-call features | |
RU2015156799A (ru) | Система и способ создания беспроводной трубки для стационарных телефонов с помощью домашнего шлюза и смартфона | |
US20070107507A1 (en) | Mute processing apparatus and method for automatically sending mute frames | |
US8718045B2 (en) | System and method for switching between public switched telephone networks and voice over internet protocol networks | |
US20140280991A1 (en) | Dynamic Personalization of a Communication Session in Heterogeneous Environments | |
CN101662468B (zh) | 一种媒体协商的方法和系统 | |
CN102299962A (zh) | 一种基于云服务的VoIP系统、装置和方法 | |
CN103428384A (zh) | 手持智能设备实现VoIP移动电话业务的系统及方法 | |
CN105407243B (zh) | 一种Android平台上使用改进仿射投影算法的回声消除VOIP系统 | |
CN104158989B (zh) | 一种固定电话漫游系统和方法 | |
CN103684970A (zh) | 媒体数据流的传输方法和瘦终端 | |
CN105657204A (zh) | 一种带ip语音功能的4g无线传真装置及其使用方法 | |
CN102271137A (zh) | 一种媒体服务器 | |
US20070133589A1 (en) | Mute processing apparatus and method | |
CN104050288A (zh) | 基于网页浏览器的通电话方法、系统及软交换机服务器 | |
Pathania et al. | Comparative study of audio and video chat application over the internet | |
US20070129037A1 (en) | Mute processing apparatus and method | |
US20160234384A1 (en) | Efficient allocation and usage of communication channels for text streams | |
CN102932566B (zh) | 虚拟桌面基础架构vdi环境下voip电话通话中减少语音失真的方法 | |
JP5745475B2 (ja) | エコー消去方法とそのシステムと各装置 | |
CN106921615A (zh) | 在移动终端中实现固网号码通信的系统、方法及移动终端 | |
CN101110751A (zh) | 基于p2p技术的ip pbx |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |