CN1780165A - Apparatus and method for echo cancellation - Google Patents

Apparatus and method for echo cancellation Download PDF

Info

Publication number
CN1780165A
CN1780165A CN 200410091603 CN200410091603A CN1780165A CN 1780165 A CN1780165 A CN 1780165A CN 200410091603 CN200410091603 CN 200410091603 CN 200410091603 A CN200410091603 A CN 200410091603A CN 1780165 A CN1780165 A CN 1780165A
Authority
CN
China
Prior art keywords
input signal
end input
module
signal
noise
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.)
Granted
Application number
CN 200410091603
Other languages
Chinese (zh)
Other versions
CN1780165B (en
Inventor
覃景繁
董晓宏
张晓枫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Sound Energy Technology Co ltd
Shenzhen Shangge Intellectual Property Service Co ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN 200410091603 priority Critical patent/CN1780165B/en
Publication of CN1780165A publication Critical patent/CN1780165A/en
Application granted granted Critical
Publication of CN1780165B publication Critical patent/CN1780165B/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)

Abstract

An echo eliminating device is composed of near-end signal state judging module, far-end signal calculating and searching module and NLP module. Its method features that the state of near-end input signal is judged according to the maximal values of the energy parameters for near-end and far-end input signals and the combination with the primary judged result of near-end input signal to control the on and off of NLP for eliminating echo.

Description

一种回声消除装置和方法Apparatus and method for echo cancellation

技术领域technical field

本发明涉及语音传输技术领域,具体涉及一种回声消除装置和方法。The invention relates to the technical field of voice transmission, in particular to an echo cancellation device and method.

背景技术Background technique

在使用有线和无线通讯系统时,时常会听到回声,回声造成通信语音质量降低。回声实际上是经过一定延时后,通过可变滤波器处理后的声音。要提高语音质量,就必须在语音传输过程中进行回声消除的处理。回声按其产生原理,分为电学回声和声学回声。在公共交换电话网(PSTN,PublicSwitched Telephone Network)中由于转换器的“二-四线”混合引起的阻抗不匹配导致了接收信号的一小部分“泄漏”到发送路径上,这样远端在接收信号的同时又返回了一部分信号,因此说话者听到自己说话的回声,导致电学回声,也称为混合回声。源自接收器的声波,通过位于声音路径上的固体反射进入移动电话的麦克风,就形成声学回声。When using wired and wireless communication systems, echoes are often heard, which degrades the communication voice quality. The echo is actually a sound processed by a variable filter after a certain delay. To improve voice quality, echo cancellation must be performed during voice transmission. Echo is divided into electrical echo and acoustic echo according to its generation principle. In the Public Switched Telephone Network (PSTN, Public Switched Telephone Network), the impedance mismatch caused by the "two-four wire" mixing of the converter causes a small part of the received signal to "leak" into the transmission path, so that the far end The signal returns part of the signal at the same time, so the speaker hears the echo of his own speech, resulting in an electrical echo, also known as a hybrid echo. Acoustic echoes are formed when sound waves originating from the receiver are reflected by solids located in the sound path into the microphone of the mobile phone.

在有线通讯系统中,接收端既会产生电学回声,也会产生声学回声,但是由于接收器和麦克风之间的距离稍远,因此声学回声相对较弱,与电学回声相比可以忽略。In the wired communication system, the receiving end will generate both electrical echo and acoustic echo, but because the distance between the receiver and the microphone is slightly farther, the acoustic echo is relatively weak and can be ignored compared with the electrical echo.

在无线通讯系统中,由于不存在PSTN网络中的“二-四线”混合,因此,无线设备不会产生电学回声;但是,由于很多无线电话厂商没有遵从无线电话正式标准的规定:在移动电话接收器和麦克风之间应具有恰当的隔离措施,结果由于移动电话接收器和麦克风之间的距离很短,使得声学回声成了无线服务提供商亟需关心的一项事宜。In the wireless communication system, since there is no "two-four-wire" mixing in the PSTN network, the wireless equipment will not generate electrical echo; however, because many wireless phone manufacturers do not comply with the official standard of the wireless phone: Proper isolation between the receiver and microphone is required, and as a result, the short distance between the mobile phone receiver and microphone makes acoustic echo an urgent concern for wireless service providers.

此外,无线网络的语音压缩技术以及非线性语音的压缩算法引入了较长的处理延迟时间,往返延迟是回声反射所花费的时间,如果往返延迟超过10毫秒,人耳就会注意到回声的存在,导致语音质量下降。而语音压缩技术使得往返延迟大于200毫秒,因此在无线应用中,声学回声问题更加明显。In addition, the voice compression technology of wireless networks and the compression algorithm of nonlinear voice introduce a long processing delay time. The round-trip delay is the time it takes for the echo to reflect. If the round-trip delay exceeds 10 milliseconds, the human ear will notice the presence of the echo , causing voice quality to degrade. The voice compression technology makes the round-trip delay greater than 200 milliseconds, so in wireless applications, the acoustic echo problem is more obvious.

图1是移动通信系统中产生的回声示意图,图中同时示意了声学回声和电学回声。如图1所示,固定电话侧听到的回声即为移动电话侧产生的声学回声,移动电话侧听到的回声主要是电学回声。Fig. 1 is a schematic diagram of an echo generated in a mobile communication system, in which both an acoustic echo and an electrical echo are illustrated. As shown in Figure 1, the echo heard by the fixed phone side is the acoustic echo generated by the mobile phone side, and the echo heard by the mobile phone side is mainly the electrical echo.

回声消除器是一种在来自远端的信号在本地端设备发出回声后检测并消除其回声的装置。由于电学回声与源语音信号之间成简单的线性关系,所以电学回声消除器通常包含两个主要功能组件:自适应滤波器和减法器。具体处理过程如下:自适应滤波器监视接收路径并动态构建一个针对回声产生线路的数学模型,这个线路模型与接收路径上的语音流进行卷积,这样得到一个回声的估计值,并被输入给减法器,这就从发送路径线路中减去了回声的线性部分。An echo canceller is a device that detects and cancels the echo of the signal from the far end after it echoes at the local end device. Due to the simple linear relationship between the electrical echo and the source speech signal, an electrical echo canceller usually consists of two main functional components: an adaptive filter and a subtractor. The specific process is as follows: the adaptive filter monitors the receiving path and dynamically builds a mathematical model for the echo generating line. This line model is convolved with the voice stream on the receiving path, so that an estimated value of the echo is obtained and input to the Subtractor, this subtracts the linear portion of the echo from the transmit path line.

由于声学回声与源语音信号之间成非线性关系,因此不能将电学回声消除方法简单地应用在声学回声消除中,现有的声学回声消除一般都是用算法控制非线性处理器(NLP,Non-Linear Processor)实现的,图2是现有的声学回声消除装置,图中的Rin为远端输入AEC模块的信号即远端输入信号,Rout为远端输出声学回声控制器(AEC,Acoustic Echo Controller)模块的信号即远端输出信号,Sin为近端输入AEC模块的信号即近端输入信号,Sout为近端输出AEC模块的信号即近端输出信号,如图2所示,该装置包括以下模块:Due to the nonlinear relationship between the acoustic echo and the source speech signal, the electrical echo cancellation method cannot be simply applied to the acoustic echo cancellation. The existing acoustic echo cancellation generally uses algorithms to control nonlinear processors (NLP, Non -Linear Processor), Fig. 2 is an existing acoustic echo cancellation device, Rin in the figure is the far-end input signal of the AEC module, that is, the far-end input signal, and Rout is the far-end output acoustic echo controller (AEC, Acoustic Echo The signal of the Controller) module is the far-end output signal, Sin is the signal of the near-end input AEC module, that is, the near-end input signal, and Sout is the signal of the near-end output AEC module, that is, the near-end output signal. As shown in Figure 2, the device includes The following modules:

降噪模块201:用于对近端输入信号进行降噪处理,并将降噪后的近端输入信号输出到智能语音电平检测模块202和近端信号短时功率计算模块204。Noise reduction module 201 : used to perform noise reduction processing on the near-end input signal, and output the noise-reduced near-end input signal to the intelligent voice level detection module 202 and the near-end signal short-term power calculation module 204 .

智能语音电平检测模块202:用于检测静音状态时远端输入信号和近端输入信号的相对电平差异,并将该电平差输出到近端信号状态判断模块205;该模块同时检测远端输入信号和近端输入信号在非静音状态时的信号电平,并将远端和近端输入信号电平输出到近端信号状态判断模块205。Intelligent voice level detection module 202: for detecting the relative level difference between the far-end input signal and the near-end input signal when in the mute state, and output the level difference to the near-end signal state judging module 205; The signal levels of the terminal input signal and the near-end input signal in the non-mute state, and output the levels of the far-end and near-end input signals to the near-end signal state judging module 205 .

近端噪声阈值输入模块203:用于保存近端信号噪声阈值,并将近端信号噪声阈值输出到近端信号状态判断模块205。The near-end noise threshold input module 203 : used to save the near-end signal noise threshold, and output the near-end signal noise threshold to the near-end signal state judging module 205 .

近端信号短时功率计算模块204:用于计算近端输入信号的平滑短时功率,将近端输入信号的平滑短时功率输出到近端信号状态判断模块205。The near-end signal short-term power calculation module 204 : used to calculate the smooth short-term power of the near-end input signal, and output the smooth short-term power of the near-end input signal to the near-end signal state judgment module 205 .

近端信号状态判断模块205:用于接收并保存近端噪声阈值输入模块203输出的近端信号噪声阈值,并通过比较近端输入信号短时功率计算模块204的输出和近端输入信号噪声阈值,判断近端输入信号是否为语音,如果前者大于后者,则近端输入信号为语音,将关闭指令输出到NLP模块210;否则,近端输入信号为非语音,则根据智能语音电平检测模块202输出的静音电平差修正远端和近端的静音电平差异,然后计算智能语音电平检测模块202输出的远端输入信号在纯时延时刻的信号电平与当前近端输入信号电平的差值,纯时延时刻即当前近端输入信号所处时刻减去纯时延所得到的时刻,如果该差值在预定范围内,则判定该近端输入信号为回声,将启动指令输出到NLP模块210,同时将该近端输入信号状态输出到自适应回声路径时延估计模块209;否则,判定近端输入信号为噪声,将关闭指令输出到自适应回声路径时延估计模块209。The near-end signal state judgment module 205: used to receive and save the near-end signal noise threshold output by the near-end noise threshold input module 203, and compare the output of the near-end input signal short-term power calculation module 204 with the near-end input signal noise threshold , to determine whether the near-end input signal is voice, if the former is greater than the latter, then the near-end input signal is voice, and the close command is output to the NLP module 210; otherwise, the near-end input signal is non-speech, and the intelligent voice level detection The mute level difference that module 202 outputs revises the far-end and near-end mute level difference, then calculates the signal level of the far-end input signal that intelligent voice level detection module 202 outputs at pure delay moment and current near-end input signal Level difference, the pure delay time is the time obtained by subtracting the pure time delay from the time of the current near-end input signal. If the difference is within the predetermined range, it is determined that the near-end input signal is an echo and will start The instruction is output to the NLP module 210, and the state of the near-end input signal is output to the adaptive echo path delay estimation module 209; otherwise, the near-end input signal is determined to be noise, and the closing instruction is output to the adaptive echo path delay estimation module 209.

远端噪声阈值输入模块206:用于保存远端信号噪声阈值,并将远端信号噪声阈值输出到远端信号状态判断模块208。The far-end noise threshold input module 206 : used to save the far-end signal noise threshold, and output the far-end signal noise threshold to the far-end signal state judging module 208 .

远端信号短时功率计算模块207:用于接收远端输入信号,计算远端输入信号的平滑短时功率,并将其输出到远端信号状态判断模块208。Remote signal short-term power calculation module 207 : used to receive the remote input signal, calculate the smooth short-term power of the remote input signal, and output it to the remote signal state judgment module 208 .

远端信号状态判断模块208:用于接收并保存远端噪声阈值输入模块206输出的远端信号噪声阈值,并通过比较远端输入信号噪声阈值与远端输入信号在纯时延时刻的平滑短时功率,得到远端输入信号在纯时延时刻的状态,并将远端输入信号的状态输出到自适应回声路径时延估计模块209。The remote signal state judgment module 208: used to receive and save the remote signal noise threshold output by the remote noise threshold input module 206, and compare the remote input signal noise threshold with the smooth short time of the remote input signal at pure time delay time power to obtain the state of the far-end input signal at the time of pure delay, and output the state of the far-end input signal to the adaptive echo path delay estimation module 209 .

自适应回声路径时延估计模块209:当接收到远端输入信号的输出为语音时,记录该远端语音产生时刻,当此后第一次接收到近端信号状态判断模块205的输出为回声时,记录该近端回声产生时刻,计算并保存上述两时刻的差值即回声路径时延,当接收到近端信号状态判断模块205的输出为噪声时,根据保存的上一次的回声路径时延,结合远端输入信号最近一次的语音发生时刻,估计当前近端输入信号的回声发生点即“回声点”,如果该“回声点”恰好在近端的噪声时刻附近,就判定该近端噪声为残余回声,并将启动指令输出到NLP模块210,否则,判定近端输入信号为噪声。Adaptive echo path delay estimation module 209: when receiving the output of the far-end input signal as voice, record the time when the far-end voice is generated, when the output of the near-end signal state judgment module 205 is received for the first time thereafter as echo , record the time when the near-end echo is generated, calculate and save the difference between the above two moments, that is, the echo path delay, when the output of the near-end signal status judgment module 205 is received as noise, according to the saved last echo path delay , combined with the latest voice occurrence time of the far-end input signal, estimate the echo occurrence point of the current near-end input signal, that is, the "echo point". If the "echo point" happens to be near the near-end noise moment, the near-end noise is determined is the residual echo, and output the start instruction to the NLP module 210, otherwise, determine that the near-end input signal is noise.

NLP模块210:当接收到近端信号状态模块205或者自适应回声路径时延估计模块209的启动指令时,该模块启动;当接收到近端信号状态判断模块205的关闭指令时,该模块关闭。NLP module 210: when receiving the startup instruction of the near-end signal status module 205 or the adaptive echo path delay estimation module 209, the module starts; when receiving the shutdown instruction of the near-end signal status judging module 205, the module shuts down .

在现有的声学回声消除器中,由于消除白噪声比较困难,使得降噪算法复杂且较为费时;由于自适应回声路径时延估计模块要动态监视并处理远端和近端输入信号,而在无线系统中,移动电话位置的移动会引起回声反射路径的改变,增加了算法的复杂度和处理时间。在现有的无线通讯系统中,AEC处理往往要和编解码模块捆绑在一起,AEC处理时间太长将降低系统性能。In the existing acoustic echo canceller, because it is difficult to eliminate white noise, the noise reduction algorithm is complicated and time-consuming; because the adaptive echo path delay estimation module needs to dynamically monitor and process the far-end and near-end input signals, and in In a wireless system, the movement of the mobile phone will cause the change of the echo reflection path, which increases the complexity of the algorithm and the processing time. In existing wireless communication systems, AEC processing is often bundled with codec modules, and too long AEC processing time will degrade system performance.

发明内容Contents of the invention

有鉴于此,本发明的主要目的在于提供一种算法简单、处理时间相对少的回声消除装置和方法,实现对近端输入信号状态的快速判断,从而决定对NLP的启动和关闭。In view of this, the main purpose of the present invention is to provide an echo cancellation device and method with simple algorithm and relatively short processing time, so as to quickly judge the state of the near-end input signal, thereby determining whether to activate or deactivate the NLP.

为达到上述目的,本发明的技术方案是这样实现的:In order to achieve the above object, technical solution of the present invention is achieved in that way:

一种回声消除装置,包括用于对回声进行非线性处理的非线性处理器NLP模块,进一步包括:An echo canceling device, comprising a nonlinear processor NLP module for performing nonlinear processing on the echo, further comprising:

远端信号计算搜索模块,用于根据当前近端输入信号所处时刻,搜索远端输入信号在预定时延范围内的能量参数的最大值,并将该最大值输出到近端信号状态判断模块;The far-end signal calculation search module is used to search for the maximum value of the energy parameter of the far-end input signal within the predetermined time delay range according to the current time of the near-end input signal, and output the maximum value to the near-end signal state judgment module ;

近端信号状态判断模块,用于将当前近端输入信号所处时刻输出到远端信号计算搜索模块,初步判断近端输入信号为语音还是噪声,保存该初步判断结果,同时,用于根据近端输入信号能量参数和远端输入信号在预定时延范围内的能量参数的最大值进一步判断近端输入信号是否为回声,如果是,将启动指令输出到NLP模块,否则,如果初步判断结果为语音,则将关闭指令输出到NLP模块,如果初步判断结果为噪声,则保持当前的NLP模块的状态。The near-end signal state judging module is used to output the moment of the current near-end input signal to the far-end signal calculation and search module to initially judge whether the near-end input signal is voice or noise, and save the preliminary judgment result. The maximum value of the energy parameter of the end input signal and the energy parameter of the far-end input signal within the predetermined delay range further judges whether the near-end input signal is an echo, and if so, outputs the start command to the NLP module, otherwise, if the preliminary judgment result is voice, then output the shutdown command to the NLP module, if the preliminary judgment result is noise, then keep the current state of the NLP module.

所述远端信号计算搜索模块包括:The remote signal calculation search module includes:

远端信号能量参数计算模块,用于计算远端输入信号的能量参数,并将远端输入信号的能量参数输出到远端信号能量参数搜索模块;The remote signal energy parameter calculation module is used to calculate the energy parameter of the remote input signal, and output the energy parameter of the remote input signal to the remote signal energy parameter search module;

远端信号能量参数搜索模块,用于接收并保存远端信号能量参数,并根据当前近端输入信号所处时刻搜索远端输入信号在预定时延范围内能量参数的最大值,并将该最大值输出到近端信号状态判断模块。The far-end signal energy parameter search module is used to receive and save the far-end signal energy parameters, and search for the maximum value of the energy parameters of the far-end input signal within the predetermined time delay range according to the moment of the current near-end input signal, and store the maximum The value is output to the near-end signal state judging module.

所述近端信号状态判断模块包括:The near-end signal state judgment module includes:

近端噪声阈值输入模块,用于保存近端信号噪声阈值并将其输出到近端比较模块;The near-end noise threshold input module is used to save the near-end signal noise threshold and output it to the near-end comparison module;

近端信号能量参数计算模块,用于接收近端输入信号,并将当前近端输入信号所处时刻输出到远端信号计算搜索模块,同时计算近端输入信号的能量参数,并将近端输入信号能量参数输出到近端比较模块;The near-end signal energy parameter calculation module is used to receive the near-end input signal, and output the time of the current near-end input signal to the far-end signal calculation and search module, and calculate the energy parameter of the near-end input signal at the same time, and output the near-end input signal The signal energy parameter is output to the near-end comparison module;

近端比较模块,用于根据近端输入信号能量参数和近端信号噪声阈值初步判断近端输入信号为语音还是噪声,同时用于根据远端输入信号在预定时延范围内的能量参数最大值和近端输入信号能量参数进一步判断近端输入信号是否为回声,如果为回声则将启动指令输出到NLP模块,否则,如果初步判断为语音则将关闭指令输出到NLP模块,如果初步判断为噪声,保持当前的NLP模块的状态。The near-end comparison module is used to preliminarily judge whether the near-end input signal is voice or noise according to the energy parameter of the near-end input signal and the noise threshold of the near-end signal, and is used to determine the maximum value of the energy parameter of the far-end input signal within a predetermined time delay range and the energy parameters of the near-end input signal to further judge whether the near-end input signal is an echo, and if it is an echo, the start command will be output to the NLP module; otherwise, if it is initially judged as voice, the shutdown command will be output to the NLP module; , to maintain the current state of the NLP module.

所述近端信号状态判断模块进一步包括近端信号动态变化趋向判断模块,用于接收并保存近端比较模块的输出,并结合已保存的前一次近端输入信号的状态判断近端输入信号的动态变化趋向,当近端输入信号的变化趋向为有回声出现时,就将启动指令输出到NLP模块,当近端输入信号的变化趋向为有语音出现时,就将关闭指令输出到NLP模块。The near-end signal state judgment module further includes a near-end signal dynamic change trend judgment module, which is used to receive and save the output of the near-end comparison module, and judge the state of the near-end input signal in combination with the saved state of the last near-end input signal. Dynamic change trend, when the change of the near-end input signal tends to have an echo, the start command is output to the NLP module, and when the change of the near-end input signal tends to be voice, the close command is output to the NLP module.

所述回声消除装置进一步包括舒适噪声产生模块,用于产生舒适噪声,并将该舒适噪声输出到NLP模块,The echo canceling device further includes a comfort noise generation module, configured to generate comfort noise, and output the comfort noise to the NLP module,

同时,所述NLP模块接收到近端信号状态判断模块的启动指令时,将接收到的舒适噪声替代回声输出到远端。At the same time, when the NLP module receives the activation instruction of the near-end signal state judgment module, it outputs the received comfort noise instead of the echo to the far-end.

所述舒适噪声产生模块包括:The comfort noise generation module includes:

钳制幅值输入模块,用于保存舒适噪声的钳制幅值,并将钳制幅值输出到舒适噪声幅值更新模块;The clamped amplitude input module is used to save the clamped amplitude of the comfort noise, and output the clamped amplitude to the comfort noise amplitude update module;

舒适噪声幅值更新模块,根据近端信号状态判断模块的输出和钳制幅值输入模块的输出更新当前舒适噪声的幅值;The comfort noise amplitude update module updates the current comfort noise amplitude according to the output of the near-end signal state judgment module and the output of the clamped amplitude input module;

舒适噪声确定模块,根据舒适噪声更新模块输出的噪声幅值产生舒适噪声,并输出到NLP模块;The comfort noise determination module generates comfort noise according to the noise amplitude output by the comfort noise update module, and outputs it to the NLP module;

同时,所述近端信号状态判断模块判定近端输入信号为噪声时,近端信号状态判断模块进一步将该噪声幅值作为新的舒适噪声幅值输出到舒适噪声幅值更新模块用于更新舒适噪声幅值。At the same time, when the near-end signal status judging module determines that the near-end input signal is noise, the near-end signal status judging module further outputs the noise amplitude as a new comfort noise amplitude to the comfort noise amplitude updating module for updating the comfort noise amplitude. noise amplitude.

所述回声消除装置进一步包括远端信号状态判断模块,用于判断远端输入信号为语音还是噪声,并将远端输入信号状态输出到近端信号状态判断模块,The echo canceling device further includes a far-end signal state judging module, which is used to judge whether the far-end input signal is voice or noise, and outputs the far-end input signal state to the near-end signal state judging module,

同时,近端信号状态判断模块在进一步判断近端输入信号是否为回声前,进一步判断接收到的远端输入信号状态为语音还是噪声,如果为语音,就直接判断近端输入信号是否为回声,如果为噪声,就重新设置当前近端输入信号的初步判断结果为语音,然后进一步判断近端输入信号是否为回声。Simultaneously, before further judging whether the near-end input signal is an echo, the near-end signal status judging module further judges whether the received far-end input signal status is voice or noise, and if it is voice, directly judges whether the near-end input signal is an echo, If it is noise, reset the preliminary judgment result of the current near-end input signal as speech, and then further judge whether the near-end input signal is an echo.

所述远端信号状态判断模块包括:The remote signal state judgment module includes:

远端噪声阈值输入模块,用于保存远端信号噪声阈值并将其输出到远端比较模块;The far-end noise threshold input module is used to save the far-end signal noise threshold and output it to the far-end comparison module;

远端比较模块,通过比较当前远端信号能量参数和远端信号噪声阈值,判断当前远端输入信号为语音还是噪声,并将判断结果输出到近端信号状态判断模块,The far-end comparison module judges whether the current far-end input signal is voice or noise by comparing the current far-end signal energy parameter and the far-end signal noise threshold, and outputs the judgment result to the near-end signal state judgment module,

同时,所述远端信号计算搜索模块进一步将当前远端输入信号能量参数输出到远端比较模块。At the same time, the remote signal calculation and search module further outputs the energy parameter of the current remote input signal to the remote comparison module.

一种回声消除方法,该方法包括:A method of echo cancellation, the method comprising:

A、初步判断近端输入信号为语音还是噪声,保存该初步判断结果;A. Preliminarily judge whether the near-end input signal is voice or noise, and save the preliminary judgment result;

B、以当前近端输入信号所处时刻为根据,搜索远端输入信号在预定时延范围内的能量参数的最大值;B. Based on the current moment of the near-end input signal, search for the maximum value of the energy parameter of the far-end input signal within the predetermined time delay range;

C、计算近端输入信号的能量参数,根据近端输入信号的能量参数与步骤B得到的远端输入信号能量参数的最大值,进一步判断近端输入信号是否为回声,如果是,启动NLP处理,否则,如果初步判断结果为语音,则关闭NLP处理,如果初步判断结果为噪声,则保持当前的NLP处理状态。C. Calculate the energy parameter of the near-end input signal, and further judge whether the near-end input signal is an echo according to the energy parameter of the near-end input signal and the maximum value of the energy parameter of the far-end input signal obtained in step B, and if so, start NLP processing , otherwise, if the preliminary judgment result is speech, turn off the NLP processing, and if the preliminary judgment result is noise, then maintain the current NLP processing state.

步骤B所述预定时延范围为从近端输入信号所处时刻减去纯时延再减去动态时延的一半得到的时刻起,到近端输入信号所处时刻减去纯时延再加上动态时延的一半得到的时刻止。The predetermined time delay range in step B is from the moment obtained by subtracting the pure time delay and then subtracting half of the dynamic time delay from the moment of the near-end input signal to the moment of the near-end input signal minus the pure time delay plus Half of the upper dynamic delay is obtained at the moment.

所述纯时延为100至150毫秒之间的任一值,所述动态时延为80毫秒。The pure delay is any value between 100 and 150 milliseconds, and the dynamic delay is 80 milliseconds.

所述步骤B和C之间进一步包括,判断当前远端输入信号为语音还是噪声,如果当前远端输入信号为语音,就直接执行步骤C;否则,重新设置近端输入信号的初步判断结果为语音后,执行步骤C。Further include between the steps B and C, judging whether the current far-end input signal is voice or noise, if the current far-end input signal is voice, step C is directly executed; otherwise, the preliminary judgment result of resetting the near-end input signal is After speaking, go to step C.

该回声消除方法进一步包括预先设置一个远端信号噪声阈值,所述判断当前远端输入信号为语音还是噪声是通过比较当前远端输入信号能量参数与远端信号噪声阈值得到的,如果前者小于后者,判定远端输入信号为噪声;否则,判定远端输入信号为语音。The echo cancellation method further includes pre-setting a far-end signal noise threshold, and the judging whether the current far-end input signal is speech or noise is obtained by comparing the current far-end input signal energy parameter with the far-end signal noise threshold, if the former is smaller than the latter Otherwise, it is determined that the far-end input signal is noise; otherwise, it is determined that the far-end input signal is speech.

所述步骤C在启动或关闭NLP处理前进一步包括:保存当前近端输入信号的状态,并结合前一次近端输入信号的状态判断近端输入信号的动态变化趋向,当变化趋向为回声出现时,就启动NLP处理,并将NLP过渡时间变量由平滑过渡长度值递减至0,当变化趋向为语音出现时,就关闭NLP处理,将NLP过渡时间变量由0递增至平滑过渡长度值。The step C further includes before starting or closing the NLP processing: saving the state of the current near-end input signal, and judging the dynamic change trend of the near-end input signal in combination with the state of the previous near-end input signal. , the NLP process is started, and the NLP transition time variable is decremented from the smooth transition length value to 0. When the change tends to be speech, the NLP process is turned off, and the NLP transition time variable is incremented from 0 to the smooth transition length value.

所述步骤A在初步判定近端输入信号为噪声后,进一步包括,将该噪声幅值作为用于NLP处理的新的舒适噪声幅值。After the step A preliminarily determines that the near-end input signal is noise, it further includes using the noise amplitude as a new comfort noise amplitude for NLP processing.

该回声消除方法进一步包括预先设置一个钳制幅值,并在步骤C在启动NLP处理之后进一步包括:判断舒适噪声幅值是否大于钳制幅值,如果是,则将钳制幅值作为新的舒适噪声幅值;否则,保留当前的舒适噪声幅值。The echo cancellation method further includes setting a clamping amplitude in advance, and after starting the NLP processing in step C, it further includes: judging whether the comfort noise amplitude is greater than the clamping amplitude, and if so, using the clamping amplitude as the new comfort noise amplitude value; otherwise, keep the current comfort noise amplitude.

该回声消除方法进一步包括预先设置一个近端信号噪声阈值,所述判断近端输入信号为语音还是噪声是通过比较近端输入信号的能量参数与近端信号噪声阈值得到的,如果前者小于后者,判定近端输入信号为噪声;否则,判定近端输入信号为语音。The echo cancellation method further includes presetting a near-end signal noise threshold, and the judgment of whether the near-end input signal is voice or noise is obtained by comparing the energy parameter of the near-end input signal with the near-end signal noise threshold, if the former is smaller than the latter , determine that the near-end input signal is noise; otherwise, determine that the near-end input signal is speech.

该回声消除方法进一步包括预先设置一个近端信号噪声阈值,所述判断近端输入信号为语音还是噪声是通过比较近端分段信号的能量参数的最大值与近端信号噪声阈值得到的,如果前者小于后者,判定近端输入信号为噪声;否则,判定近端输入信号为语音。The echo cancellation method further includes presetting a near-end signal noise threshold, and the judging whether the near-end input signal is speech or noise is obtained by comparing the maximum value of the energy parameter of the near-end segmented signal with the near-end signal noise threshold, if If the former is smaller than the latter, it is determined that the near-end input signal is noise; otherwise, it is determined that the near-end input signal is speech.

步骤C所述近端输入信号为近端分段信号。The near-end input signal in step C is a near-end segmented signal.

步骤C所述近端输入信号为步骤A中的近端输入信号经分段后的第一段近端分段信号,The near-end input signal described in step C is the first near-end segmented signal after the near-end input signal in step A is segmented,

同时,所述步骤C之后进一步包括,依次判断第二段近端分段信号及其后的近端分段信号是否为回声,如果是,则关闭NLP处理,否则,如果当前远端输入信号为语音且前一段近端分段信号为回声,则启动NLP处理,如果当前远端输入信号为语音且前一段近端分段信号为语音或如果当前远端输入信号为噪声,则关闭NLP处理,如果当前远端输入信号为语音且前一段近端分段信号为噪声,则保持当前的NLP处理状态。Simultaneously, after said step C, it further includes, in turn, judging whether the second near-end segment signal and the following near-end segment signal are echoes, if yes, then close the NLP processing, otherwise, if the current far-end input signal is If the current far-end input signal is voice and the previous near-end segment signal is voice or if the current far-end input signal is noise, NLP processing is turned off. If the current far-end input signal is speech and the previous near-end segmented signal is noise, the current NLP processing state is maintained.

步骤C所述根据近端输入信号的能量参数与步骤B得到的远端输入信号能量参数的最大值进一步判断近端输入信号是否为回声为:比较近端输入信号的能量参数与步骤B得到的远端输入信号能量参数的最大值经衰减后的值,若前者小于后者,判定近端输入信号为回声。In step C, further judging whether the near-end input signal is an echo according to the energy parameter of the near-end input signal and the maximum value of the energy parameter of the far-end input signal obtained in step B is as follows: comparing the energy parameter of the near-end input signal with that obtained in step B The attenuated value of the maximum value of the energy parameter of the far-end input signal. If the former is smaller than the latter, it is determined that the near-end input signal is an echo.

与现有技术相比,本发明首先初步判断近端输入信号为语音还是噪声,然后根据近端输入信号能量参数和远端输入信号在预定时延范围内能量参数的最大值,进一步判断近端输入信号是否为回声,实现了对NLP启动和关闭的控制。由于降噪处理会抑制掉一部分回声,因此,本发明不作该项处理,在简化算法的同时也节省了时间;由于本发明通过两次比较判断近端输入信号状态,保证了算法的精确度,且省却了对静音电平的检测和修正,节省了时间;同时,本发明将搜索范围限定在预定时延内,与现有技术每次都要估计回声时延确定“回声点”相比,算法的复杂度降低且减少了处理时间。由以上分析可知,本发明算法简单且节省了处理时间,使得回声控制器(EC,Echo Controller)模块在系统中配置灵活。Compared with the prior art, the present invention first preliminarily judges whether the near-end input signal is voice or noise, and then further judges the near-end Whether the input signal is an echo realizes the control of NLP startup and shutdown. Because the noise reduction processing will suppress a part of the echo, the present invention does not perform this processing, which saves time while simplifying the algorithm; because the present invention judges the state of the near-end input signal through two comparisons, the accuracy of the algorithm is guaranteed. And it saves the detection and correction of the silence level, which saves time; at the same time, the present invention limits the search range to the predetermined time delay, compared with the prior art to estimate the echo time delay every time to determine the "echo point", The complexity of the algorithm is reduced and the processing time is reduced. From the above analysis, it can be seen that the algorithm of the present invention is simple and saves processing time, so that the echo controller (EC, Echo Controller) module can be flexibly configured in the system.

附图说明Description of drawings

图1为数字无线网络中的回声示意图;Fig. 1 is a schematic diagram of an echo in a digital wireless network;

图2为现有技术实现声学回声消除装置的结构框图;Fig. 2 is a structural block diagram of an acoustic echo cancellation device in the prior art;

图3为本发明实现回声消除装置的总体结构框图;Fig. 3 is a block diagram of the overall structure of the echo canceling device of the present invention;

图4为本发明实现回声消除装置的一个实施例的结构框图;FIG. 4 is a structural block diagram of an embodiment of an echo cancellation device according to the present invention;

图5为图4所示的回声消除装置的详细结构框图;Fig. 5 is a detailed structural block diagram of the echo canceling device shown in Fig. 4;

图6为本发明实现回声消除的总体流程图;Fig. 6 is the overall flow chart of realizing echo cancellation in the present invention;

图7为本发明实现声学回声消除的一个具体实施例的流程图。FIG. 7 is a flow chart of a specific embodiment of the present invention for implementing acoustic echo cancellation.

具体实施方式Detailed ways

为了使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实施例对本发明作进一步地详细描述。In order to make the purpose, technical solution and advantages of the present invention clearer, the present invention will be further described in detail below in conjunction with the accompanying drawings and specific embodiments.

图3是本发明实现回声消除装置的总体结构框图,该结构框图包含了本发明装置实现回声消除的必要模块,如图3所示,本发明装置包括:Fig. 3 is the overall structural block diagram of the echo canceling device of the present invention, and this structural block diagram has included the necessary module that the device of the present invention realizes echo canceling, and as shown in Fig. 3, the device of the present invention comprises:

远端信号计算搜索模块31:用于根据近端输入信号所处时刻,搜索远端输入信号在预定时延范围内的能量参数的最大值,并将该最大值输出到近端信号状态判断模块32。Remote signal calculation and search module 31: used to search for the maximum value of the energy parameter of the remote input signal within the predetermined time delay range according to the time of the near-end input signal, and output the maximum value to the near-end signal state judgment module 32.

近端信号状态判断模块32:首先,该模块将当前近端输入信号所处时刻输出到远端信号计算搜索模块31;然后,该模块用于初步判断近端输入信号为语音还是噪声,并保存该初步判断结果;最后,用于根据近端输入信号能量参数和远端输入信号在预定时延范围内的能量参数的最大值进一步判断近端输入信号是否为回声,如果是,则将启动指令输出到NLP模块33,否则,判定近端输入信号状态与初步判断结果相同,如果初步判断结果为语音,则将关闭指令输出到NLP模块33,如果初步判断结果为噪声,保持当前的NLP模块33的状态。Near-end signal state judging module 32: at first, this module is exported to far-end signal calculation search module 31 with the moment of current near-end input signal; The preliminary judgment result; finally, it is used to further judge whether the near-end input signal is an echo according to the energy parameter of the near-end input signal and the maximum value of the energy parameter of the far-end input signal within the predetermined delay range, and if so, the instruction will be started Output to NLP module 33, otherwise, judge that near-end input signal state is identical with preliminary judgment result, if preliminary judgment result is voice, then will close instruction output to NLP module 33, if preliminary judgment result is noise, keep current NLP module 33 status.

NLP模块33:当接收到近端信号状态判断模块32的启动指令时,该模块启动;当接收到近端信号状态判断模块32的关闭指令时,该模块关闭。NLP module 33: when receiving the startup instruction of the near-end signal state judging module 32, the module starts; when receiving the shutdown instruction of the near-end signal state judging module 32, the module shuts down.

图4为本发明实现回声消除装置的一个实施例的结构框图,如图4所示,在实际应用中,本发明还可以包括以下两个模块:Fig. 4 is a structural block diagram of an embodiment of the echo cancellation device of the present invention, as shown in Fig. 4, in practical applications, the present invention may also include the following two modules:

远端信号状态判断模块34:用于接收远端信号计算搜索模块31输出的当前远端信号能量参数,并根据此能量参数判断当前远端输入信号为语音还是噪声,并将当前远端输入信号状态输出到近端信号状态判断模块32,近端信号状态判断模块32接收到远端输入信号为语音时,开始进一步判断近端输入信号是否为回声;近端信号状态判断模块32接收到远端输入信号为噪声时,就重新设置近端输入信号的初步判断结果为语音,然后进一步判断近端输入信号是否为回声。Far-end signal state judging module 34: be used for receiving the current far-end signal energy parameter of far-end signal calculation search module 31 output, and judge whether current far-end input signal is voice or noise according to this energy parameter, and present far-end input signal The state is output to the near-end signal state judging module 32, and when the near-end signal state judging module 32 receives the far-end input signal as voice, it starts to further judge whether the near-end input signal is an echo; the near-end signal state judging module 32 receives the far-end When the input signal is noise, the preliminary judgment result of the near-end input signal is reset as speech, and then further judged whether the near-end input signal is an echo.

舒适噪声产生模块35:用于产生舒适噪声,同时当近端信号状态判断模块32判定近端输入信号为噪声时,就将该噪声幅值作为新的舒适噪声幅值输出到舒适噪声产生模块35,舒适噪声产生模块35更新舒适噪声幅值后将新的舒适噪声输出到NLP模块35,用于NLP处理。Comfort noise generation module 35: used to generate comfort noise, and when the near-end signal state judgment module 32 judges that the near-end input signal is noise, the noise amplitude is output to the comfort noise generation module 35 as a new comfort noise amplitude After updating the comfort noise amplitude, the comfort noise generation module 35 outputs the new comfort noise to the NLP module 35 for NLP processing.

图5为图4所示的回声消除装置的详细结构框图,如图5所示,远端信号计算搜索模块31包括以下子模块:Fig. 5 is a detailed structural block diagram of the echo cancellation device shown in Fig. 4, as shown in Fig. 5, the far-end signal calculation search module 31 includes the following submodules:

远端信号能量参数计算模块301:用于接收远端输入信号,计算远端输入信号的平滑短时功率,并将其输出到远端信号能量参数搜索模块302和远端比较模块304。The remote signal energy parameter calculation module 301 : used to receive the remote input signal, calculate the smooth short-term power of the remote input signal, and output it to the remote signal energy parameter search module 302 and the remote comparison module 304 .

远端信号能量参数搜索模块302:用于接收远端信号能量参数计算模块301的输出,并将其保存到循环队列中,并以当前近端输入信号所处时刻为根据,搜索远端输入信号在预定时延范围内的分段平滑短时功率的最大值,并将此最大值输出到近端比较模块307。The far-end signal energy parameter search module 302: used to receive the output of the far-end signal energy parameter calculation module 301, and save it in the circular queue, and search for the far-end input signal based on the time of the current near-end input signal The maximum value of the segment-smoothed short-term power within the predetermined delay range is output to the near-end comparison module 307 .

远端信号状态判断模块34包括以下子模块:The far-end signal state judging module 34 includes the following submodules:

远端噪声阈值输入模块303:用于保存远端信号噪声阈值,并将远端信号噪声阈值输出到远端比较模块304。The far-end noise threshold input module 303 : used to save the far-end signal noise threshold, and output the far-end signal noise threshold to the far-end comparison module 304 .

远端比较模块304:用于根据当前远端输入信号能量参数和远端信号噪声阈值判断当前远端输入信号为语音还是噪声,并将远端输入信号状态输出到近端比较模块307。Far-end comparison module 304 : used to judge whether the current far-end input signal is voice or noise according to the current far-end input signal energy parameter and the far-end signal noise threshold, and output the status of the far-end input signal to the near-end comparison module 307 .

近端信号状态判断模块32包括以下子模块:The near-end signal state judgment module 32 includes the following submodules:

近端噪声阈值输入模块305:用于保存近端信号噪声阈值,并将近端信号噪声阈值输出到近端比较模块307。The near-end noise threshold input module 305 is used to store the near-end signal noise threshold and output the near-end signal noise threshold to the near-end comparison module 307 .

近端信号能量参数计算模块306:用于接收近端输入信号,并将当前近端输入信号所处时刻输出到远端信号能量参数搜索模块302,然后计算当前近端输入信号的平滑短时功率或计算近端输入信号粗略分段或详细分段后的分段短时平滑功率,并将近端输入信号平滑短时功率的粗略分段平滑短时功率的最大值或详细分段平滑短时功率输出到近端比较模块307。The near-end signal energy parameter calculation module 306: used to receive the near-end input signal, and output the time of the current near-end input signal to the far-end signal energy parameter search module 302, and then calculate the smooth short-term power of the current near-end input signal Or calculate the segmental short-term smooth power of the near-end input signal after rough segmentation or detailed segmentation, and calculate the maximum value of the rough segmental smooth short-term power of the near-end input signal smoothed short-term power or the detailed segmental smooth short-term power The power is output to the near-end comparison module 307 .

近端比较模块307:该模块的功能有两个,Near-end comparison module 307: this module has two functions,

功能一,用于接收并保存近端噪声阈值输入模块305输出的近端信号噪声阈值,并根据近端信号能量参数计算模块306的输出和近端信号噪声阈值初步判断近端输入信号为语音还是噪声,并保存该近端输入信号初步判断结果,如果近端输入信号判定为噪声,则将该噪声幅值作为新的舒适噪声幅值输入到舒适噪声幅值更新模块310;Function 1, used to receive and save the near-end signal noise threshold output by the near-end noise threshold input module 305, and preliminarily judge whether the near-end input signal is voice or noise, and save the preliminary judgment result of the near-end input signal, if the near-end input signal is judged to be noise, then input the noise amplitude as a new comfort noise amplitude to the comfort noise amplitude updating module 310;

功能二,当接收到远端比较模块304输出的远端输入信号状态为语音时,该模块用于进一步判断近端输入信号是否为回声,当接收到远端比较模块304输出的远端输入信号为噪声时,该模块就重新设置当前近端输入信号的初步判断结果为语音,然后进一步判断近端输入信号是否为回声;如果近端输入信号不是回声且近端输入信号不分段时,根据初步判断结果确定近端输入信号状态,如果近端输入信号不是回声且近端输入信号分段时,根据初步判断结果或者综合考虑初步判断结果和前一段近端分段信号判断结果确定近端分段信号状态,最后将近端输入信号状态的判定结果输出到近端信号动态变化趋向判断模块308。Function two, when receiving the far-end input signal output by the far-end comparison module 304, the state is voice, this module is used to further judge whether the near-end input signal is an echo, when receiving the far-end input signal output by the far-end comparison module 304 When it is noise, the module resets the preliminary judgment result of the current near-end input signal as speech, and then further judges whether the near-end input signal is an echo; if the near-end input signal is not an echo and the near-end input signal is not segmented, according to The preliminary judgment result determines the state of the near-end input signal. If the near-end input signal is not an echo and the near-end input signal is segmented, the near-end segment is determined according to the preliminary judgment result or comprehensively considering the preliminary judgment result and the judgment result of the previous near-end segmented signal. Finally, the judgment result of the near-end input signal state is output to the near-end signal dynamic change trend judging module 308 .

近端信号动态变化趋向判断模块308:该模块用于接收并保存近端比较模块307的输出,并根据当前近端输入信号的状态和已保存的前一次近端输入信号的状态判断近端输入信号的动态变化趋向,当近端输入信号的变化趋向为有回声出现时,就将启动指令输出到NLP模块312;当近端输入信号的变化趋向为有语音出现时,就将关闭指令输出到NLP模块312。Near-end signal dynamic change trend judgment module 308: this module is used to receive and save the output of the near-end comparison module 307, and judge the near-end input according to the state of the current near-end input signal and the saved state of the previous near-end input signal The dynamic change trend of the signal, when the change trend of the near-end input signal is that echo occurs, the start command is output to the NLP module 312; when the change trend of the near-end input signal is that there is voice, the close command is output to NLP module 312.

在实际应用中,近端信号状态判断模块32可以不包含近端信号动态变化趋向判断模块308,此时,如果近端比较模块307判定分段或不分段的近端输入信号为回声,就将启动指令输出到NLP模块312;如果判定为语音,就将关闭指令输出到NLP模块312;如果判定为噪声,就保持当前的NLP模块312状态。In practical applications, the near-end signal state judging module 32 may not include the near-end signal dynamic change trend judging module 308. At this time, if the near-end comparison module 307 determines that the segmented or non-segmented near-end input signal is an echo, then Output the start command to the NLP module 312; if it is judged as voice, output the shutdown command to the NLP module 312; if it is judged as noise, keep the current state of the NLP module 312.

舒适噪声产生模块35包括以下子模块:The comfort noise generating module 35 includes the following submodules:

钳制幅值输入模块309:用于保存舒适噪声的钳制幅值,并将其输出到舒适噪声幅值更新模块310。Clamped amplitude input module 309 : used to save the clamped amplitude of the comfort noise and output it to the comfort noise amplitude updating module 310 .

舒适噪声幅值更新模块310:用于根据近端比较模块307的输出和钳制幅值输入模块309的输出更新当前舒适噪声幅值,将更新后的舒适噪声幅值输出到舒适噪声确定模块311。Comfort noise amplitude update module 310 : used to update the current comfort noise amplitude according to the output of the near-end comparison module 307 and the output of the clamped amplitude input module 309 , and output the updated comfort noise amplitude to the comfort noise determination module 311 .

舒适噪声确定模块311:用于产生初始舒适噪声,并根据舒适噪声幅值更新模块310输出的舒适噪声幅值更新当前舒适噪声,将舒适噪声输出到NLP模块312。Comfort noise determination module 311 : used to generate initial comfort noise, update the current comfort noise according to the comfort noise amplitude output by the comfort noise amplitude update module 310 , and output the comfort noise to the NLP module 312 .

NLP模块33即NLP模块312:当接收到近端信号动态变化趋向模块308或近端比较模块307的启动指令时,该模块启动,并根据舒适噪声确定模块311输出的舒适噪声代替回声后输出到远端;当接收到近端信号动态变化趋向模块308或近端比较模块307的关闭指令时,该模块关闭;否则,该模块保持当前状态。The NLP module 33 is the NLP module 312: when receiving the activation instruction from the near-end signal dynamic change trend module 308 or the near-end comparison module 307, the module is started, and the comfort noise output by the comfort noise determination module 311 replaces the echo and then outputs to The remote end: when receiving the shutdown command from the near-end signal dynamic change trend module 308 or the near-end comparison module 307, the module is turned off; otherwise, the module maintains the current state.

图6为本发明实现回声消除的总体流程图,该流程图包含了本发明方法实现回声消除的必要步骤,如图6所示,实现声学回声消除的具体步骤如下:Fig. 6 is the overall flow chart of realizing echo cancellation in the present invention, and the flow chart includes the necessary steps for realizing echo cancellation in the method of the present invention. As shown in Fig. 6, the specific steps for realizing acoustic echo cancellation are as follows:

步骤601:近端信号状态判断模块32接收近端输入信号,并计算近端输入信号能量参数。Step 601: The near-end signal state judging module 32 receives a near-end input signal, and calculates an energy parameter of the near-end input signal.

步骤602:近端信号状态判断模块32将当前近端输入信号所处时刻输出到远端信号计算搜索模块31,然后判断近端输入信号是否为语音,如果是,执行步骤603;否则,执行步骤604。Step 602: the near-end signal state judging module 32 outputs the moment of the current near-end input signal to the far-end signal calculation and search module 31, then judges whether the near-end input signal is voice, if yes, execute step 603; otherwise, execute step 603; 604.

步骤603:近端信号状态判断模块32初步判定近端输入信号为语音,保存该近端输入信号的状态,并执行步骤605。Step 603 : The near-end signal state judging module 32 preliminarily judges that the near-end input signal is voice, saves the state of the near-end input signal, and executes step 605 .

步骤604:近端信号状态判断模块32初步判定近端输入信号为噪声,保存该近端输入信号的状态。Step 604: The near-end signal state judging module 32 preliminarily judges that the near-end input signal is noise, and saves the state of the near-end input signal.

步骤605:远端信号计算搜索模块31接收到当前近端输入信号所处时刻后,根据此时刻,搜索远端输入信号在预定时延范围内的能量参数的最大值,并将该最大值输出到近端信号状态判断模块32。Step 605: After the far-end signal calculation and search module 31 receives the moment of the current near-end input signal, according to this moment, search for the maximum value of the energy parameter of the far-end input signal within the predetermined time delay range, and output the maximum value to the near-end signal state judging module 32.

步骤606:近端信号状态判断模块32比较近端输入信号能量参数与远端输入信号能量参数的最大值经衰减后的值,如果前者小于后者,执行步骤607;否则,执行步骤608。Step 606: The near-end signal state judging module 32 compares the energy parameter of the near-end input signal with the attenuated value of the maximum value of the energy parameter of the far-end input signal. If the former is smaller than the latter, go to step 607; otherwise, go to step 608.

步骤607:近端信号状态判断模块32判定当前近端输入信号的状态为回声,NLP模块33启动NLP处理。Step 607: The near-end signal state judging module 32 judges that the current state of the near-end input signal is an echo, and the NLP module 33 starts NLP processing.

步骤608:近端信号状态判断模块32判断初步判断结果是否为语音,如果是,执行步骤609;否则,执行步骤610。Step 608: The near-end signal status judging module 32 judges whether the preliminary judging result is voice, if yes, go to step 609; otherwise, go to step 610.

步骤609:NLP模块33关闭NLP处理。Step 609: The NLP module 33 closes the NLP processing.

步骤610:NLP模块33保持当前的处理状态。Step 610: The NLP module 33 maintains the current processing state.

具体实施例一:Specific embodiment one:

本实施例实现回声消除时,在判断近端输入信号是否为回声时,是针对输入的整帧信号进行判断的,即没有对该帧信号进行分段处理,将不分段的该帧信号称为近端输入帧信号,图7为本发明实现声学回声消除的一个具体实施例的流程图,为图6步骤的具体描述,如图7所示,实现声学回声消除的具体步骤如下:When implementing echo cancellation in this embodiment, when judging whether the near-end input signal is an echo, it is judged for the entire input frame signal, that is, the frame signal is not segmented, and the unsegmented frame signal is called For near-end input frame signal, Fig. 7 is the flow chart of a specific embodiment that the present invention realizes acoustic echo cancellation, is the specific description of Fig. 6 step, as shown in Fig. 7, the concrete steps of realizing acoustic echo cancellation are as follows:

步骤701:近端信号能量参数计算模块306接收近端输入帧信号后,将当前近端输入帧信号所处时刻输出到远端信号能量参数搜索模块302,并计算近端输入帧信号的平滑短时功率SPower,并将SPower输出到近端比较模块307。Step 701: After the near-end signal energy parameter calculation module 306 receives the near-end input frame signal, it outputs the current time of the near-end input frame signal to the far-end signal energy parameter search module 302, and calculates the smooth short-term value of the near-end input frame signal. time power SPower, and output SPower to the near-end comparison module 307.

步骤702:近端比较模块307比较SPower与已保存的近端噪声阈值输入模块305输出的近端输入信号的噪声阈值SNoise,如果SPower>SNoise,则执行步骤703;否则,执行步骤704。Step 702: The near-end comparison module 307 compares SPower with the saved noise threshold SNoise of the near-end input signal output by the near-end noise threshold input module 305, and if SPower>SNoise, execute step 703; otherwise, execute step 704.

步骤703:近端比较模块307初步判定近端输入帧信号为语音,保存该近端输入帧信号的状态,并执行步骤705。Step 703: The near-end comparison module 307 preliminarily determines that the near-end input frame signal is speech, saves the state of the near-end input frame signal, and executes step 705 .

步骤704:近端比较模块307初步判定近端输入帧信号为噪声,保存该近端输入帧信号的状态,并将该近端输入帧信号的噪声幅值作为新的舒适噪声幅值输出到舒适噪声幅值更新模块310。Step 704: The near-end comparison module 307 preliminarily determines that the near-end input frame signal is noise, saves the state of the near-end input frame signal, and outputs the noise amplitude of the near-end input frame signal as a new comfort noise amplitude to the comfort Noise magnitude update module 310 .

步骤705:远端信号能量参数计算模块301接收远端输入信号后,计算远端输入信号的平滑短时功率RPower,并将RPower输出到远端信号能量参数搜索模块302和远端比较模块304。Step 705 : After receiving the remote input signal, the remote signal energy parameter calculation module 301 calculates the smoothed short-term power RPower of the remote input signal, and outputs RPower to the remote signal energy parameter search module 302 and the remote comparison module 304 .

步骤706:远端比较模块304比较RPower与已保存的远端噪声阈值输入模块303输出的远端输入信号的噪声阈值RNoise,如果RPower<RNoise,执行步骤707~708;否则,执行步骤709。Step 706: The remote comparison module 304 compares RPower with the saved noise threshold RNoise of the remote input signal output by the remote noise threshold input module 303. If RPower<RNoise, execute steps 707-708; otherwise, execute step 709.

步骤707:远端比较模块304判定远端输入信号为噪声,并将该远端信号状态输出到近端比较模块307。Step 707: The far-end comparison module 304 determines that the far-end input signal is noise, and outputs the state of the far-end signal to the near-end comparison module 307 .

步骤708:近端比较模块307接收到远端比较模块304的输出为噪声后,将近端输入帧信号的初步状态重新设置为语音,并保存该初步状态,转至步骤710。Step 708 : After receiving the output of the far-end comparison module 304 as noise, the near-end comparison module 307 resets the preliminary state of the near-end input frame signal as speech, and saves the preliminary state, and goes to step 710 .

步骤709:远端比较模块304判定远端输入信号为语音,并将该状态输出到近端比较模块307。Step 709: The far-end comparison module 304 determines that the far-end input signal is speech, and outputs the status to the near-end comparison module 307 .

步骤710:远端信号能量参数搜索模块302接收并保存远端信号能量参数,并根据当前近端输入帧信号所处时刻,搜索远端输入信号在预定时延范围内的平滑短时功率RPower的最大值RMPower,并将RMPower输出到近端比较模块307。预定时延范围为从当前近端输入信号所处时刻减去纯时延再减去动态时延的一半所得到的时刻起,到近端输入信号所处时刻减去纯时延再加上动态时延的一半得到的时刻止,通常,纯时延取值为100~150毫秒之间的任一值,动态时延取值为80毫秒。Step 710: The far-end signal energy parameter search module 302 receives and saves the far-end signal energy parameters, and searches for the smooth short-term power RPower of the far-end input signal within a predetermined time delay range according to the current moment of the near-end input frame signal. the maximum value RMPower, and output RMPower to the near-end comparison module 307 . The predetermined delay range is from the moment obtained by subtracting the pure delay and then subtracting half of the dynamic delay from the moment of the current near-end input signal to the moment of the near-end input signal minus the pure delay plus the dynamic delay. Half of the delay is obtained at a moment. Generally, the value of the pure delay is any value between 100 and 150 milliseconds, and the value of the dynamic delay is 80 milliseconds.

步骤711:近端比较模块307比较SPower与RMPower/B,其中B是衰减值,由经验确定,如果SPower<RMPower/B,则执行步骤712;否则,执行步骤713。Step 711: The near-end comparison module 307 compares SPower and RMPower/B, where B is an attenuation value determined by experience, and if SPower<RMPower/B, then execute step 712; otherwise, execute step 713.

步骤712:近端比较模块307判定当前近端输入帧信号的状态为回声,并将该近端输入帧信号的状态输出到近端信号动态变化趋向判断模块308,然后转至步骤714。Step 712: The near-end comparison module 307 determines that the current state of the near-end input frame signal is echo, and outputs the state of the near-end input frame signal to the near-end signal dynamic change trend judgment module 308, and then goes to step 714.

步骤713:近端比较模块307判定当前近端输入帧信号的状态与近端输入帧信号的初步判断结果相同,并将该近端输入帧信号的状态输出到近端信号动态变化趋向判断模块308。Step 713: The near-end comparison module 307 determines that the state of the current near-end input frame signal is the same as the preliminary judgment result of the near-end input frame signal, and outputs the state of the near-end input frame signal to the near-end signal dynamic change trend judgment module 308 .

步骤714:近端信号动态变化趋向判断模块308保存当前的近端输入帧信号的状态,并结合已保存的前一次近端输入帧信号的状态,判断近端输入帧信号的动态变化趋向,近端输入帧信号的动态变化趋向有四种:有回声出现即由语音或噪声过渡到回声,持续回声即由回声到回声,有语音出现即由回声或噪声过渡到语音,保持语音即由语音到语音。Step 714: The near-end signal dynamic change trend judging module 308 saves the state of the current near-end input frame signal, and combines the saved state of the previous near-end input frame signal to determine the dynamic change trend of the near-end input frame signal. There are four dynamic trends of the input frame signal at the terminal: when there is an echo, it transitions from voice or noise to echo; if there is a continuous echo, it transitions from echo or noise to voice; voice.

步骤715:近端信号动态变化趋向判断模块308判断近端输入帧信号的动态变化趋向是否为有回声出现,如果是,执行步骤716~719;否则,执行步骤720~722。Step 715: The near-end signal dynamic change trend judging module 308 judges whether the dynamic change trend of the near-end input frame signal is echo, and if yes, execute steps 716-719; otherwise, execute steps 720-722.

步骤716:舒适噪声幅值更新模块310比较当前舒适噪声幅值与钳制幅值输入模块309输出的钳制幅值,如果前者大于后者,则执行步骤717;否则,执行步骤718。Step 716 : The comfort noise amplitude updating module 310 compares the current comfort noise amplitude with the clamped amplitude outputted by the clamped amplitude input module 309 , if the former is greater than the latter, execute step 717 ; otherwise, execute step 718 .

步骤717:舒适噪声幅值更新模块310以钳制幅值代替当前的舒适噪声幅值后输出到舒适噪声确定模块311,舒适噪声确定模块311将新的舒适噪声输出到NLP模块312,然后转至步骤719。Step 717: The comfort noise amplitude update module 310 replaces the current comfort noise amplitude with the clamped amplitude and outputs it to the comfort noise determination module 311, and the comfort noise determination module 311 outputs the new comfort noise to the NLP module 312, and then goes to step 719.

步骤718:舒适噪声幅值更新模块310保持当前的舒适噪声幅值不变,舒适噪声确定模块311将当前舒适噪声输出到NLP模块312。Step 718 : the comfort noise amplitude update module 310 keeps the current comfort noise amplitude unchanged, and the comfort noise determination module 311 outputs the current comfort noise to the NLP module 312 .

步骤719:NLP模块312开始NLP处理,即对舒适噪声c(n)和残留回波e(n)之间进行切换,切换输出为Sout(n),为了获得在c(n)与e(n)之间的平滑切换,使用如下内插函数:Step 719: NLP module 312 starts NLP processing, that is, switches between comfort noise c(n) and residual echo e(n), and the switching output is Sout(n), in order to obtain c(n) and e(n ) to smoothly switch between, use the following interpolation function:

SoutSout (( nno )) == (( Mm -- rampramp )) &CenterDot;&CenterDot; cc (( nno )) ++ rampramp &CenterDot;&CenterDot; ee (( nno )) Mm

其中,M是平滑过渡的长度;ramp是过渡时间变量,它的变化范围是0~M,显然,切换平滑程度是由ramp和M共同决定的,有回声出现时,ramp由M递减至0。Among them, M is the length of the smooth transition; ramp is the transition time variable, and its variation range is from 0 to M. Obviously, the switching smoothness is determined by both ramp and M. When an echo appears, the ramp decreases from M to 0.

步骤720:近端信号动态变化趋向判断模块308判断近端输入帧信号动态变化趋向是否为有语音出现,如果是,执行步骤721;否则,执行步骤722。Step 720: The near-end signal dynamic change trend judging module 308 judges whether the near-end input frame signal dynamic change trend is voice, if yes, go to step 721; otherwise, go to step 722.

步骤721:NLP模块312关闭NLP处理,此时,将内插函数Step 721: the NLP module 312 closes the NLP processing, at this time, the interpolation function

SoutSout (( nno )) == (( Mm -- rampramp )) &CenterDot;&Center Dot; cc (( nno )) ++ rampramp &CenterDot;&CenterDot; ee (( nno )) Mm

中的ramp由0递增至M。The ramp in is incremented from 0 to M.

步骤722:NLP模块312保持NLP处理状态不变。Step 722: The NLP module 312 keeps the NLP processing state unchanged.

需要说明的是,近端比较模块307接收到接收到远端比较模块304的输出为语音后,开始根据近端信号能量参数和远端信号在动态时延范围内的最大值判断近端输入信号是否为回声。It should be noted that after the near-end comparison module 307 receives the output of the far-end comparison module 304 as voice, it starts to judge the near-end input signal according to the energy parameter of the near-end signal and the maximum value of the far-end signal within the dynamic delay range. Whether to echo.

具体实施例二:Specific embodiment two:

本实施例实现回声消除时,在判断近端输入信号是否为回声前,对近端输入的帧信号进行了分段处理,将分段后的每一段信号称为近端分段信号。该实施例与具体实施例一的差别是:When implementing echo cancellation in this embodiment, before judging whether the near-end input signal is an echo, the near-end input frame signal is segmented, and each segmented signal is called a near-end segmented signal. The difference between this embodiment and specific embodiment one is:

步骤710和步骤711之间进一步包括,近端信号能量参数计算模块306进一步将近端输入的帧信号进行分段后,计算第一段近端分段信号的分段平滑短时平滑功率SLPower,并将SLPower输出到近端比较模块307。同时,步骤711中的SPower改为“SLPower”,即近端比较模块307判断第一段近端分段信号是否为回声。Between step 710 and step 711, it further includes that the near-end signal energy parameter calculation module 306 further divides the near-end input frame signal into segments, and calculates the segmental smoothing short-term smoothing power SLPower of the first near-end segmented signal, And output SLPower to the near-end comparison module 307 . At the same time, the SPower in step 711 is changed to "SLPower", that is, the near-end comparison module 307 judges whether the first near-end segment signal is an echo.

步骤712~722中的近端输入帧信号都替换为“第一段近端分段信号”。The near-end input frame signals in steps 712-722 are all replaced with "the first near-end segmented signal".

其余步骤与具体实施例一相同。The rest of the steps are the same as in the first embodiment.

需要指出的是,以上是对第一段近端分段信号进行处理的流程,在此之后,继续对第二段及其以后的分段信号重复步骤706~722,直至将近端输入的该帧信号所有的分段信号都处理完为止。It should be pointed out that the above is the process of processing the first near-end segmented signal. After that, continue to repeat steps 706 to 722 for the second segment and subsequent segmental signals until the near-end input Until all the segmented signals of the frame signal are processed.

在实际应用中,对所有的具体实施例,在初步判断近端输入帧信号为语音还是噪声时,为了使判断更精确,步骤701和702也可作如下替换:In practical applications, for all specific embodiments, when initially judging whether the near-end input frame signal is speech or noise, in order to make the judgment more accurate, steps 701 and 702 can also be replaced as follows:

步骤701:将近端输入帧信号粗略分段后,依次计算每段信号的平滑短时功率,然后搜索所有平滑短时功率的最大值SMPower。Step 701 : After the near-end input frame signal is roughly segmented, the smoothed short-term power of each segment is calculated sequentially, and then the maximum value SMPower of all smoothed short-term powers is searched.

步骤702中的SPower改为“SMPower”,即通过比较近端输入帧信号平滑短时功率的最大值SMPower与近端信号噪声阈值初步判断近端输入帧信号为语音还是噪声。In step 702, SPower is changed to "SMPower", that is, it is preliminarily judged whether the near-end input frame signal is speech or noise by comparing the maximum value SMPower of the smooth short-term power of the near-end input frame signal with the noise threshold of the near-end signal.

另外,对于在进一步判断近端输入信号是否为回声前将近端输入的帧信号进行分段的具体实施例,考虑到语音帧信号的连续性,步骤707和709在现有步骤之后分别进一步包括,近端比较模块307保存该当前远端输入信号状态,同时,步骤713作如下替换:In addition, for a specific embodiment in which the near-end input frame signal is segmented before further judging whether the near-end input signal is an echo, considering the continuity of the voice frame signal, steps 707 and 709 further include after the existing steps , the near-end comparison module 307 saves the current far-end input signal state, and at the same time, step 713 is replaced as follows:

步骤713:近端比较模块307首先判断接收到的当前远端输入信号状态是否为语音,如果当前远端输入信号状态是语音,则当前近端分段信号状态与前一段近端分段信号的状态相同,且如果第一段近端分段信号为非回声,则判定第一段近端分段信号的状态与近端输入信号的初步判断结果相同,并将当前近端分段信号的状态输出到近端信号动态变化趋向判断模块308;如果当前远端输入信号状态是噪声,则判定当前近端分段信号的状态为语音,并将当前近端分段信号的状态输出到近端信号动态变化趋向判断模块308。Step 713: the near-end comparison module 307 first judges whether the received current far-end input signal state is speech, if the current far-end input signal state is speech, then the current near-end segment signal state is the same as that of the previous near-end segment signal The state is the same, and if the first segment of the near-end segment signal is non-echo, it is determined that the state of the first segment of the near-end segment signal is the same as the preliminary judgment result of the near-end input signal, and the status of the current near-end segment signal Output to the near-end signal dynamic change trend judging module 308; If the current far-end input signal state is noise, then determine the state of the current near-end segment signal as voice, and output the state of the current near-end segment signal to the near-end signal Dynamic change trend judgment module 308 .

另外,在所有具体实施例中,近端输入信号与远端输入信号的能量参数也可用能量或电平来表示。In addition, in all specific embodiments, the energy parameters of the near-end input signal and the far-end input signal can also be represented by energy or level.

同时,本发明也适用于电学回声的消除。At the same time, the present invention is also applicable to the elimination of electrical echo.

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。The above descriptions are only preferred embodiments of the present invention, and are not intended to limit the protection scope of the present invention. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present invention shall be included within the protection scope of the present invention.

Claims (21)

1, a kind of echo cancelling device comprises the nonlinear processor NLP module that is used for echo is carried out Nonlinear Processing, it is characterized in that, further comprises:
Remote signaling calculates search module, is used for according to the current near end input signal moment of living in, searches for the maximum of the energy parameter of remote end input signal in the preset time delay scope, and this maximum is outputed to the near end signal condition judgment module;
The near end signal condition judgment module, be used for that the current near end input signal moment of living in is outputed to remote signaling and calculate search module, preliminary judgement near end input signal is voice or noise, preserve this preliminary judged result, simultaneously, the maximum that is used for the energy parameter in the preset time delay scope according near end input signal energy parameter and remote end input signal judges further whether near end input signal is echo, if, enabled instruction is outputed to the NLP module, otherwise,, then out code is outputed to the NLP module if preliminary judged result is voice, if preliminary judged result is a noise, then keep the state of current NLP module.
2, device as claimed in claim 1 is characterized in that, described remote signaling calculates search module and comprises:
Remote signaling energy parameter computing module is used to calculate the energy parameter of remote end input signal, and the energy parameter of remote end input signal is outputed to remote signaling energy parameter search module;
Remote signaling energy parameter search module, be used for receiving and preserving the remote signaling energy parameter, and according to the maximum of current near end input signal moment of living in search remote end input signal, and this maximum outputed to the near end signal condition judgment module in preset time delay scope self-energy parameter.
3, device as claimed in claim 1 is characterized in that, described near end signal condition judgment module comprises:
Near-end noise threshold value input module is used to preserve the near end signal noise threshold and it is outputed to the near-end comparison module;
Near end signal energy parameter computing module, be used to receive near end input signal, and the current near end input signal moment of living in is outputed to remote signaling calculate search module, calculate the energy parameter of near end input signal simultaneously, and the near end input signal energy parameter is outputed to the near-end comparison module;
The near-end comparison module, be used for judging tentatively that according near end input signal energy parameter and near end signal noise threshold near end input signal is voice or noise, be used for simultaneously judging further according to the energy parameter maximum and the near end input signal energy parameter of remote end input signal in the preset time delay scope whether near end input signal is echo, if be echo then enabled instruction is outputed to the NLP module, otherwise, if tentatively be judged as voice then out code outputed to the NLP module, if tentatively be judged as noise, keep the state of current NLP module.
4, device as claimed in claim 3, it is characterized in that, described near end signal condition judgment module further comprises near end signal dynamic change trend judge module, be used to receive and preserve the output of near-end comparison module, and judge the dynamic change trend of near end input signal in conjunction with the state of the preceding near end input signal of having preserved, when the tendency of changes of near end input signal occurs for echo is arranged, just enabled instruction is outputed to the NLP module, when the tendency of changes of near end input signal occurs for voice are arranged, just out code is outputed to the NLP module.
5, device as claimed in claim 1 is characterized in that, described device further comprises the comfort noise generation module, is used to produce comfort noise, and this comfort noise is outputed to the NLP module,
Simultaneously, when described NLP module receives the enabled instruction of near end signal condition judgment module, the comfort noise that receives is substituted echo output to far-end.
6, device as claimed in claim 5 is characterized in that, described comfort noise generation module comprises:
Clamp down on the amplitude input module, be used to preserve the amplitude of clamping down on of comfort noise, and will clamp down on amplitude and output to comfort noise amplitude update module;
Comfort noise amplitude update module is upgraded the amplitude of current comfort noise according to the output of near end signal condition judgment module and the output of clamping down on the amplitude input module;
The comfort noise determination module according to the noise amplitude generation comfort noise of comfort noise update module output, and outputs to the NLP module;
Simultaneously, described near end signal condition judgment module judges that the near end signal condition judgment module further outputed to comfort noise amplitude update module with this noise amplitude as new comfort noise amplitude and is used to upgrade the comfort noise amplitude when near end input signal was noise.
7, device as claimed in claim 1 is characterized in that, described device further comprises the remote signaling condition judgment module, be used to judge that remote end input signal is voice or noise, and the remote end input signal state is outputed to the near end signal condition judgment module,
Simultaneously, the near end signal condition judgment module is before further judging whether near end input signal is echo, judge that further the remote end input signal state that receives is voice or noise, if be voice, just directly judge whether near end input signal is echo, if be noise, the preliminary judged result of just resetting current near end input signal is voice, judges further then whether near end input signal is echo.
8, device as claimed in claim 7 is characterized in that, described remote signaling condition judgment module comprises:
Far-end noise threshold value input module is used to preserve the remote signaling noise threshold and it is outputed to the far-end comparison module;
The far-end comparison module by more current remote signaling energy parameter and remote signaling noise threshold, is judged that current remote end input signal is voice or noise, and judged result is outputed to the near end signal condition judgment module,
Simultaneously, described remote signaling calculates search module and further current remote end input signal energy parameter is outputed to the far-end comparison module.
9, a kind of echo cancel method is characterized in that, this method comprises:
A, tentatively judge that near end input signal is voice or noise, preserves this preliminary judged result;
B, with the current near end input signal moment of living in be basis, the maximum of the search energy parameter of remote end input signal in the preset time delay scope;
The energy parameter of C, calculating near end input signal, the maximum of the remote end input signal energy parameter that obtains according to the energy parameter and the step B of near end input signal, further judge whether near end input signal is echo, if, start NLP and handle, otherwise, if preliminary judged result is voice, then close NLP and handle,, then keep current NLP treatment state if preliminary judged result is a noise.
10, method as claimed in claim 9, it is characterized in that, the described preset time delay scope of step B is for deducting half moment that obtains that pure time delay deducts dynamic delay again from the near end input signal moment of living in, only deducts half moment that obtains that pure time delay adds dynamic delay to the near end input signal moment of living in.
11, method as claimed in claim 10 is characterized in that, described pure time delay is the arbitrary value between 100 to 150 milliseconds, and described dynamic delay is 80 milliseconds.
12, method as claimed in claim 9 is characterized in that, further comprises between described step B and the C, judges that current remote end input signal is voice or noise, if current remote end input signal is voice, and just direct execution in step C; Otherwise, after the preliminary judged result of resetting near end input signal is voice, execution in step C.
13, method as claimed in claim 12, it is characterized in that, this method further comprises and sets in advance a remote signaling noise threshold, the current remote end input signal of described judgement is that voice still are that noise obtains by more current remote end input signal energy parameter and remote signaling noise threshold, if the former is less than the latter, the judgement remote end input signal is a noise; Otherwise the judgement remote end input signal is voice.
14, method as claimed in claim 9, it is characterized in that, described step C is starting or is closing NLP and handle to take a step forward and comprise: the state of preserving current near end input signal, and judge the dynamic change trend of near end input signal in conjunction with the state of a preceding near end input signal, when tendency of changes is that echo is when occurring, just starting NLP handles, and NLP variable transit time is decremented to 0 by seamlessly transitting length value, when tendency of changes is that voice are when occurring, just close NLP and handle, NLP variable transit time is incremented to by 0 seamlessly transits length value.
15, method as claimed in claim 9 is characterized in that, described steps A further comprises after the preliminary judgement near end input signal is noise, with this noise amplitude as being used for the new comfort noise amplitude that NLP handles.
16, method as claimed in claim 9, it is characterized in that, this method comprises that further setting in advance one clamps down on amplitude, and after starting the NLP processing, step C further comprises: judge that whether the comfort noise amplitude is greater than clamping down on amplitude, if then will clamp down on amplitude as new comfort noise amplitude; Otherwise, keep current comfort noise amplitude.
17, method as claimed in claim 9, it is characterized in that, this method further comprises and sets in advance a near end signal noise threshold, described judgement near end input signal be voice still be noise be by relatively the energy parameter and the near end signal noise threshold of near end input signal obtain, if the former is less than the latter, the judgement near end input signal is a noise; Otherwise the judgement near end input signal is voice.
18, method as claimed in claim 9, it is characterized in that, this method further comprises and sets in advance a near end signal noise threshold, described judgement near end input signal be voice still be noise be by relatively the maximum and the near end signal noise threshold of the energy parameter of near-end block signal obtain, if the former is less than the latter, the judgement near end input signal is a noise; Otherwise the judgement near end input signal is voice.
19, method as claimed in claim 9 is characterized in that, the described near end input signal of step C is the near-end block signal.
20, method as claimed in claim 9 is characterized in that, the described near end input signal of step C is the first section near-end block signal of near end input signal after segmentation in the steps A,
Simultaneously, further comprise after the described step C, judge successively whether second section near-end block signal and subsequent near-end block signal are echo, if, then closing NLP handles, otherwise, if current remote end input signal be voice and the last period the near-end block signal be echo, then starting NLP handles, if current remote end input signal be voice and the last period the near-end block signal be if that voice or current remote end input signal are noise, then close NLP and handle, if current remote end input signal be voice and the last period the near-end block signal be noise, then keep current NLP treatment state.
21, method as claimed in claim 9, it is characterized in that, the maximum of the described remote end input signal energy parameter that obtains according to the energy parameter and the step B of near end input signal of step C judges further whether near end input signal is echo being: the value of maximum after decaying of the energy parameter of near end input signal and the remote end input signal energy parameter that step B obtains relatively, if the former is less than the latter, the judgement near end input signal is an echo.
CN 200410091603 2004-11-23 2004-11-23 Echo eliminator and elimination method Expired - Fee Related CN1780165B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200410091603 CN1780165B (en) 2004-11-23 2004-11-23 Echo eliminator and elimination method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200410091603 CN1780165B (en) 2004-11-23 2004-11-23 Echo eliminator and elimination method

Publications (2)

Publication Number Publication Date
CN1780165A true CN1780165A (en) 2006-05-31
CN1780165B CN1780165B (en) 2011-07-27

Family

ID=36770305

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200410091603 Expired - Fee Related CN1780165B (en) 2004-11-23 2004-11-23 Echo eliminator and elimination method

Country Status (1)

Country Link
CN (1) CN1780165B (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100524467C (en) * 2006-07-17 2009-08-05 深圳市迪威新软件技术有限公司 Echo processing method for meeting TV system
CN101820302A (en) * 2009-02-27 2010-09-01 比亚迪股份有限公司 Device and method for canceling echo
CN102223157A (en) * 2010-04-16 2011-10-19 联芯科技有限公司 Residual echo canceller and residual echo cancellation method
CN101803219B (en) * 2007-09-28 2013-08-07 雅马哈株式会社 Echo removal device
CN103533193A (en) * 2012-07-04 2014-01-22 中兴通讯股份有限公司 Residual echo elimination method and device
CN109286730A (en) * 2017-07-20 2019-01-29 阿里巴巴集团控股有限公司 A kind of method, apparatus and system of detection of echoes
CN110869794A (en) * 2017-04-21 2020-03-06 华为技术有限公司 Leakage signal cancellation
CN111246034A (en) * 2020-01-13 2020-06-05 深圳震有科技股份有限公司 Intelligent telephone signal processing method, signal processor and storage medium

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI106489B (en) * 1996-06-19 2001-02-15 Nokia Networks Oy Eco-muffler and non-linear processor for an eco extinguisher

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100524467C (en) * 2006-07-17 2009-08-05 深圳市迪威新软件技术有限公司 Echo processing method for meeting TV system
CN101803219B (en) * 2007-09-28 2013-08-07 雅马哈株式会社 Echo removal device
CN101820302A (en) * 2009-02-27 2010-09-01 比亚迪股份有限公司 Device and method for canceling echo
CN101820302B (en) * 2009-02-27 2013-10-30 比亚迪股份有限公司 Device and method for canceling echo
CN102223157A (en) * 2010-04-16 2011-10-19 联芯科技有限公司 Residual echo canceller and residual echo cancellation method
CN102223157B (en) * 2010-04-16 2013-12-18 联芯科技有限公司 Residual echo canceller and residual echo cancellation method
CN103533193A (en) * 2012-07-04 2014-01-22 中兴通讯股份有限公司 Residual echo elimination method and device
CN103533193B (en) * 2012-07-04 2016-07-06 中兴通讯股份有限公司 Residual echo elimination method and device
CN110869794A (en) * 2017-04-21 2020-03-06 华为技术有限公司 Leakage signal cancellation
CN110869794B (en) * 2017-04-21 2022-05-13 华为技术有限公司 Leakage signal cancellation
US11476891B2 (en) 2017-04-21 2022-10-18 Futurewei Technologies, Inc. Frequency nonlinearity calibration in frequency-modulated continuous wave radar
CN109286730A (en) * 2017-07-20 2019-01-29 阿里巴巴集团控股有限公司 A kind of method, apparatus and system of detection of echoes
CN111246034A (en) * 2020-01-13 2020-06-05 深圳震有科技股份有限公司 Intelligent telephone signal processing method, signal processor and storage medium

Also Published As

Publication number Publication date
CN1780165B (en) 2011-07-27

Similar Documents

Publication Publication Date Title
CN1184745C (en) echo canceller device
CN1223109C (en) Enhancement of near-end voice signals in an echo suppression system
CN1115795C (en) Echo canceller with silence detection
CN1320782C (en) Echo processing appts.
CN1595827A (en) Digital adaptive filter and acoustic echo canceller using the same
CN1168207C (en) Method and device for automatically adjusting loudspeaker and microphone gain in mobile phone
AU2011261559B2 (en) Active noise cancellation decisions in a portable audio device
CN1127840C (en) AC-center clipper for noise and echo suppression in communications system
CN1175709C (en) System and method for noise reduction of dual-pickup signals using spectral subtraction
CN1451225A (en) Echo cancellation device for cancelling echos in a transceiver unit
CN1917386A (en) Method for detecting both speaking status in operatioon of echo cancel
WO2016056167A1 (en) Echo cancellation device, echo cancellation program, and echo cancellation method
CN1235348C (en) Sound communication device and echo processor
CN1879393A (en) Two-way communications device having a single transducer
CN1390349A (en) Noise suppression
CN1494229A (en) Echo Eliminator with echo path change detector
US5884194A (en) Hands-free telephone
CN1780165A (en) Apparatus and method for echo cancellation
CN1736039A (en) Echo suppression device
CN1157040C (en) Echo eliminator
CN1292617A (en) Echo cancelltion method and device
JPH0865214A (en) Signal adaptive processor and echo suppression device
CN1161752C (en) noise suppressor
CN1214171A (en) Appts. and method for non-linear processing in communication system
CN1925526A (en) Device and method for echo elimination

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200427

Address after: 310000 Room 606, building 1, No. 51, Jiusheng Road, Jianggan District, Hangzhou City, Zhejiang Province

Patentee after: Hangzhou sound energy technology Co.,Ltd.

Address before: 518000 Baoan District Xin'an street, Shenzhen, Guangdong, No. 625, No. 625, Nuo platinum Plaza,

Patentee before: SHENZHEN SHANGGE INTELLECTUAL PROPERTY SERVICE Co.,Ltd.

Effective date of registration: 20200427

Address after: 518000 Baoan District Xin'an street, Shenzhen, Guangdong, No. 625, No. 625, Nuo platinum Plaza,

Patentee after: SHENZHEN SHANGGE INTELLECTUAL PROPERTY SERVICE Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110727