CN114724572A - 确定回声延时的方法和装置 - Google Patents
确定回声延时的方法和装置 Download PDFInfo
- Publication number
- CN114724572A CN114724572A CN202210346616.9A CN202210346616A CN114724572A CN 114724572 A CN114724572 A CN 114724572A CN 202210346616 A CN202210346616 A CN 202210346616A CN 114724572 A CN114724572 A CN 114724572A
- Authority
- CN
- China
- Prior art keywords
- far
- signal
- audio signal
- echo
- determining
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 230000005236 sound signal Effects 0.000 claims abstract description 286
- 238000001228 spectrum Methods 0.000 claims abstract description 137
- 230000006854 communication Effects 0.000 claims abstract description 57
- 238000004891 communication Methods 0.000 claims abstract description 48
- 230000009466 transformation Effects 0.000 claims abstract description 11
- 230000004044 response Effects 0.000 claims description 31
- 230000001131 transforming effect Effects 0.000 claims description 8
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 238000009432 framing Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 7
- CBGUOGMQLZIXBE-XGQKBEPLSA-N clobetasol propionate Chemical compound C1CC2=CC(=O)C=C[C@]2(C)[C@]2(F)[C@@H]1[C@@H]1C[C@H](C)[C@@](C(=O)CCl)(OC(=O)CC)[C@@]1(C)C[C@@H]2O CBGUOGMQLZIXBE-XGQKBEPLSA-N 0.000 description 6
- 229940069205 cormax Drugs 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010219 correlation analysis Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
- G10L21/0232—Processing in the frequency domain
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0264—Noise filtering characterised by the type of parameter measurement, e.g. correlation techniques, zero crossing techniques or predictive techniques
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L2021/02082—Noise filtering the noise being echo, reverberation of the speech
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Telephone Function (AREA)
- Circuit For Audible Band Transducer (AREA)
Abstract
本公开的实施方式提供了一种确定回声延时的方法和装置。包括:获取所述近端设备通过音频采集装置所采集到的当前帧的近端音频信号,并获取在所述当前帧之前预设时间范围内由所述远端设备通过实时通信网络所发送的一系列远端音频信号;对所述近端音频信号进行时域到频域的变换,得到对应于所述近端音频信号的近端信号频谱;对所述一系列远端音频信号进行时域到频域的变换,得到对应于所述一系列远端音频信号的多个远端信号频谱;计算所述近端信号频谱与各个远端信号频谱之间的互相关指标值,并确定其中的最大指标值;确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号,并基于所述帧序号确定相应的回声延时。
Description
技术领域
本公开的实施方式涉及通信技术领域,更具体地,本公开的实施方式涉及一种确定回声延时的方法和装置。
背景技术
本部分旨在为说明书中陈述的本公开的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
在实时通信(Real-Time Communication,RTC)过程中,经由近端设备的音频播放装置播放的远端音频信号容易又被近端设备的音频采集装置所回采,从而使得近端设备采集到的近端音频信号中包含被所述音频采集装置所回采的远端音频信号;如此对于远端用户来说,就会听到自己说出的音频被播放。这种现象称之为回声。由于回声严重影响通信质量,因此需要消除回声。
发明内容
在本公开实施方式的第一方面中,提供了一种确定回声延时的方法包括:
响应于近端设备与远端设备的实时通信,获取所述近端设备通过音频采集装置所采集到的当前帧的近端音频信号,并获取在所述当前帧之前预设时间范围内由所述远端设备通过实时通信网络所发送的一系列远端音频信号;其中,所述近端音频信号包括近端声源产生的原始音频信号和对应于所述原始音频信号的回声信号,所述回声信号是所述近端设备的音频播放装置基于所述远端音频信号所播放的、而被所述音频采集装置所回采的音频信号;
对所述近端音频信号进行时域到频域的变换,得到对应于所述近端音频信号的近端信号频谱;
对所述一系列远端音频信号进行时域到频域的变换,得到对应于所述一系列远端音频信号的多个远端信号频谱;
计算所述近端信号频谱与各个远端信号频谱之间的互相关指标值,并确定其中的最大指标值;
确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号,并基于所述帧序号确定相应的回声延时,所述回声延时是所述回声信号经由所述近端设备的音频播放装置播放后又被所述音频采集装置所回采而导致的。
可选的,所述对所述一系列远端音频信号进行时域到频域的变换,得到对应于所述一系列远端音频信号的多个远端信号频谱,包括:
响应于对完整远端音频信号所进行的分帧处理,得到所述一系列远端音频信号;其中,所述近端音频信号与所述一系列远端音频信号中的最后一帧相对应;
对每一帧远端音频信号进行时域到频域的变换,得到对应于每一帧远端音频信号的多个远端信号频谱。
可选的,在所述计算所述近端信号频谱与各个远端信号频谱之间的互相关指标值之前,还包括:
基于第二频段的频率范围,截取所述近端信号频谱中位于所述第二频段的部分,以获得目标近端信号频谱;
基于第二频段的频率范围,截取各个所述远端信号频谱中位于所述第二频段的部分,以获得多个目标远端信号频谱;
其中,所述第二频段位于第一频段和第三频段之间,所述第二频段中的最小频率值大于等于所述第一频段中的最大频率值,所述第二频段中的最大频率值小于等于所述第三频段中的最小频率值;
所述计算所述近端信号频谱与各个远端信号频谱之间的互相关指标值,并确定其中的最大指标值,包括:
计算所述目标近端信号频谱与各个目标远端信号频谱之间的互相关指标值,并确定其中的最大指标值。
可选的,在所述确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号之前,还包括:
对所述最大指标值进行有效性校验;
所述确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号,包括:
响应于所述最大指标值通过有效性校验,确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号。
可选的,在所述对所述最大指标值进行有效性校验之后,还包括:
响应于所述最大指标值未通过有效性校验,将最近一次确定的回声延时确定为所述回声信号的回声延时。
可选的,所述对所述最大指标值进行有效性校验,包括:
响应于所述最大指标值不小于所述当前帧对应的动态阈值,确定所述最大指标值通过有效性校验;其中,所述动态阈值基于切换策略在第一阈值和第二阈值之间进行动态切换;所述第一阈值小于所述第二阈值。
可选的,所述动态阈值的切换策略包括:
响应于在当前帧之前所述预设时间范围内的历史时延数组中的相同延时值的个数与所述历史时延数组中延时值的总个数的比值未超过相应的比例阈值,以所述第一阈值作为所述动态阈值。
可选的,所述动态阈值的切换策略包括:
响应于在当前帧之前所述预设时间范围内的历史时延数组中的相同延时值的个数与所述历史时延数组中延时值的总个数的比值超过相应的比例阈值,以所述第二阈值作为所述动态阈值。
可选的,所述动态阈值的切换策略包括:
响应于在当前帧之前所述预设时间范围内的历史时延数组中延时值的总个数小于预设个数,以所述第一阈值作为所述动态阈值。
可选的,所述基于所述帧序号确定相应的回声延时,包括:
基于所述一系列远端音频信号中最大指标值所对应的帧序号,以及所述一系列远端音频信号中末尾帧所对应的帧序号,确定相应的间隔帧数;
将所述间隔帧数与帧长的乘积结果确定为所述回声信号的回声延时。
可选的,所述时域到频域的变换包括短时傅立叶变换。
可选的,所述互相关指标包括广义互相关指标、经典互相关指标、二值化互相关指标中的至少一种。
可选的,所述实时通信包括基于互联网的实时通信或者基于话务网的实时通信。
可选的,所述基于所述帧序号确定相应的回声延,包括:
基于所述回声延时对所述近端音频信号中的回声信号进行回声消除处理。
在本公开实施方式的第二方面中,提供了一种确定回声延时的装置,所述装置包括:
获取单元,响应于近端设备与远端设备的实时通信,获取所述近端设备通过音频采集装置所采集到的当前帧的近端音频信号,并获取在所述当前帧之前预设时间范围内由所述远端设备通过实时通信网络所发送的一系列远端音频信号;其中,所述近端音频信号包括近端声源产生的原始音频信号和对应于所述原始音频信号的回声信号,所述回声信号是所述近端设备的音频播放装置基于所述远端音频信号所播放的、而被所述音频采集装置所回采的音频信号;
第一变换单元,对所述近端音频信号进行时域到频域的变换,得到对应于所述近端音频信号的近端信号频谱;
第二变换单元,对所述一系列远端音频信号进行时域到频域的变换,得到对应于所述一系列远端音频信号的多个远端信号频谱;
计算单元,计算所述近端信号频谱与各个远端信号频谱之间的互相关指标值,并确定其中的最大指标值;
确定单元,确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号,并基于所述帧序号确定相应的回声延时,所述回声延时是所述回声信号经由所述近端设备的音频播放装置播放后又被所述音频采集装置所回采而导致的。
可选的,所述第二变换单元,进一步用于响应于对完整远端音频信号所进行的分帧处理,得到所述一系列远端音频信号;其中,所述近端音频信号与所述一系列远端音频信号中的最后一帧相对应;对每一帧远端音频信号进行时域到频域的变换,得到对应于每一帧远端音频信号的多个远端信号频谱。
可选的,在所述计算单元之前,还包括:
第一处理单元,基于第二频段的频率范围,截取所述近端信号频谱中位于所述第二频段的部分,以获得目标近端信号频谱;其中,所述第二频段位于第一频段和第三频段之间,所述第二频段中的最小频率值大于等于所述第一频段中的最大频率值,所述第二频段中的最大频率值小于等于所述第三频段中的最小频率值;
第二处理单元,基于第二频段的频率范围,截取各个所述远端信号频谱中位于所述第二频段的部分,以获得多个目标远端信号频谱;
所述计算单元,进一步用于计算所述目标近端信号频谱与各个目标远端信号频谱之间的互相关指标值,并确定其中的最大指标值。
可选的,在所述确定单元之前,还包括:
校验单元,对所述最大指标值进行有效性校验;
所述确定单元,进一步用于响应于所述最大指标值通过有效性校验,确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号。
可选的,所述确定单元,还用于响应于所述最大指标值未通过有效性校验,将最近一次确定的回声延时确定为所述回声信号的回声延时。
可选的,所述校验单元,进一步用于响应于所述最大指标值不小于所述当前帧对应的动态阈值,确定所述最大指标值通过有效性校验;其中,所述动态阈值基于切换策略在第一阈值和第二阈值之间进行动态切换;所述第一阈值小于所述第二阈值。
可选的,所述动态阈值的切换策略包括:
响应于在当前帧之前所述预设时间范围内的历史时延数组中的相同延时值的个数与所述历史时延数组中延时值的总个数的比值未超过相应的比例阈值,以所述第一阈值作为所述动态阈值。
可选的,所述动态阈值的切换策略包括:
响应于在当前帧之前所述预设时间范围内的历史时延数组中的相同延时值的个数与所述历史时延数组中延时值的总个数的比值超过相应的比例阈值,以所述第二阈值作为所述动态阈值。
可选的,所述动态阈值的切换策略包括:
响应于在当前帧之前所述预设时间范围内的历史时延数组中延时值的总个数小于预设个数,以所述第一阈值作为所述动态阈值。
可选的,所述确定单元,进一步用于基于所述一系列远端音频信号中最大指标值所对应的帧序号,以及所述一系列远端音频信号中末尾帧所对应的帧序号,确定相应的间隔帧数;并将所述间隔帧数与帧长的乘积结果确定为所述回声信号的回声延时。
可选的,所述时域到频域的变换包括短时傅立叶变换。
可选的,所述互相关指标包括广义互相关指标、经典互相关指标、二值化互相关指标中的至少一种。
可选的,所述实时通信包括基于互联网的实时通信或者基于话务网的实时通信。
可选的,所述确定单元进一步用于基于所述回声延时对所述近端音频信号中的回声信号进行回声消除处理。
在本公开实施方式的第三方面中,提供了一种计算机可读存储介质,包括:
当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如前任一项所述的确定回声延时的方法。
在本公开实施方式的第四方面中,提供了一种计算设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述可执行指令,以实现如前任一项所述的确定回声延时的方法。
根据本公开实施方式提供的确定回声延时的方案,由于近端音频信号中包括的回声信号是近端设备的音频播放装置基于远端音频信号所播放的、而被音频采集装置所回采的音频信号,因此近端音频信号中的回声信号必然与一系列远端音频信号中的某帧远端音频信号相似。为此,通过将近端音频信号和一系列远端音频信号转换为频谱信号,使得在频域上可以计算表示信号相似性的互相关指标值;并将计算得到的最大指标值所对应的远端音频信号确定为回声信号的来源。然后基于该远端音频信号在一系列远端音频信号中的帧序号就可以准确地得出相应的回声延时,所述回声延时为所述回声信号经由近端设备的音频播放装置播放后又被音频采集装置所回采而导致的延时。
附图说明
通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,其中:
图1示意性地示出了本公开提供的实时通信的系统架构图;
图2示意性地示出了本公开提供的近端音频信号的示意图;
图3示意性地示出了本公开提供的确定回声延时的方法示意图;
图4示意性地示出了本公开提供的帧序号和回声延时值的示意图;
图5示意性地示出了图3中步骤330的细化步骤示意图;
图6示意性地示出了本公开提供的确定回声延时的流程示意图;
图7示意性地示出了图3中位于步骤340之前的附加步骤示意图;
图8示意性地示出了图3中位于步骤350之前的附加步骤示意图;
图9示意性地示出了本公开提供的介质示意图;
图10示意性地示出了本公开提供的确定回声延时的装置示意图;
图11示意性地示出了本公开提供的计算设备示意图。
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参考若干示例性实施方式来描述本公开的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本公开,而并非以任何方式限制本公开的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域技术人员知道,本公开的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
根据本公开的实施方式,提出了一种确定回声延时的方法、计算机可读存储介质、装置和计算设备。
在本文中,需要理解的是,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
下面参考本公开的若干代表性实施方式,详细阐释本公开的原理和精神。
发明概述
以下结合图1所示的一种实时通信的系统架构图介绍本说明书中涉及到的近端设备、音频播放装置和音频采集装置。
在该系统架构图中包括近端设备110和远端设备120;其中,近端设备110和远端设备120均包括音频播放装置111和音频采集装置112。
上述近端设备110和远端设备120可以包括可以实现实时通信的客户端设备,例如台式计算机、膝上型计算机、平板计算机、手持式计算机、个人数字助理(“PDA”)、智能手机、智能手表、智能眼镜、智能手环等。
上述音频播放装置111可以是指设备内置的用于播放音频的软件、硬件和/或软硬结合的装置,如内置的扬声器等;或者与设备通过有线或无线连接的用于播放音频的第三方装置如音响、耳机等。
上述音频采集装置112可以是指设备内置的用于采集音频的软件、硬件和/或软硬结合的装置,如内置的麦克风等;或者与设备通过有线或无线连接的用于采集音频的第三方装置如耳麦的麦克风等。
如图1所示,上述近端设备110和远端设备120可以是基于网络130实现的实时通信,所述网络130可以包括互联网或者话务网。也就是说,本说明书提供的技术方案可以适用于基于互联网的实时通信或者基于话务网的实时通信。
基于互联网的实时通信可以是指基于互联网的视频电话、语音电话等。例如,通过即时通讯(IM)软件实现的视频电话、语音电话。
基于话务网的实时通信可以是基于话务网的语音电话。例如基于GMS(GlobalSystem for Mobile Communications,全球移动通信系统)的语音电话。在日常生活中用户之间通过拨打手机号进行语音通信就属于基于话务网的实时通信。
在本说明书中,所述近端设备和远端设备可以是一个相对概念。以设备A和设备B之间的实时通信为例:对于使用设备A的用户来说,设备A为近端设备,相对的设备B则为远端设备;而对于使用设备B的用户来说,设备B为近端设备,相对的设备A则为远端设备。
在近端设备与远端设备进行实时通信过程中,近端设备通过音频播放装置所播放的远端音频信号,容易被近端设备的音频采集装置所回采,从而导致近端设备的音频采集装置采集到的近端音频信号中不仅包括近端声源产生的原始音频信号,还包括对应于所述原始音频信号的回声信号;所述回声信号即为所回采的音频信号。
为了方便理解上述远端音频信号、近端音频信号、原始音频信号和回声信号,以下结合图2所示的音频信号的传输示意图加以说明。
远端设备发送的远端音频信号经过实时通信网络被近端设备接收后,近端设备中的音频播放装置就会播放该接收到的一系列近端音频信号;同时,近端设备中的音频采集装置会采集当前帧的近端音频信号,并将近端音频信号经实时通信网络发送给远端设备。
在实际应用中,所述近端音频信号不仅包括近端声源产生的原始音频信号(如图2中近端用户发出的音频),还可能包括对应于所述原始音频信号的回声信号;其中,所述回声信号如图2所示可以是指近端设备的音频播放装置播放远端音频信号而被音频采集装置所回采的音频信号。
当近端音频信号中存在回声信号时,对于远端设备的远端用户来说,就会听到自己说出的音频被播放,这种现象称之为回声。由于回声严重影响通信质量,因此需要消除回声。
在相关技术中,在进行回声消除前首先需要确定回声延时。回声延时可以是指近端设备的音频播放装置播放远端音频信号、到该播放的远端音频信号被近端设备的音频采集装置所回采的过程经过的时间差。
本说明书旨在提供一种确定回声延时的方案,可以准确地确定回声延时。该方案可以包括:
响应于近端设备与远端设备的实时通信,获取所述近端设备通过音频采集装置所采集到的当前帧的近端音频信号,并获取在所述当前帧之前预设时间范围内由所述远端设备通过实时通信网络所发送的一系列远端音频信号;其中,所述近端音频信号包括近端声源产生的原始音频信号和对应于所述原始音频信号的回声信号,所述回声信号是所述近端设备的音频播放装置基于所述远端音频信号所播放的、而被所述音频采集装置所回采的音频信号;
对所述近端音频信号进行时域到频域的变换,得到对应于所述近端音频信号的近端信号频谱;
对所述一系列远端音频信号进行时域到频域的变换,得到对应于所述一系列远端音频信号的多个远端信号频谱;
计算所述近端信号频谱与各个远端信号频谱之间的互相关指标值,并确定其中的最大指标值;
确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号,并基于所述帧序号确定相应的回声延时,所述回声延时是所述回声信号经由所述近端设备的音频播放装置播放后又被所述音频采集装置所回采而导致的。
通过上述方案可以准确地确定回声延时的原理为:
由于近端音频信号中包括的回声信号是近端设备的音频播放装置基于远端音频信号所播放的、而被音频采集装置所回采的音频信号,因此近端音频信号中的回声信号与一系列远端音频信号中的某段音频高度相似。
基于此,通过将近端音频信号和一系列远端音频信号转换为频谱信号,从而使得两者在频域上可以计算互相关的指标值;并将计算得到的最大指标值所对应的目标远端音频信号确定为回声信号的来源;
由于通过互相关指标值可以准确地定位一系列远端音频信号中与近端音频信号中回声信号最相似的目标远端音频信号,因此基于该目标远端音频信号在一系列远端音频信号中的帧序号可以准确地计算出目标远端音频信号经由近端设备的音频播放装置播放后又被音频采集装置回采的过程所导致的回声延时。这里基于帧序号可以计算回声延时是因为:
回声信号所在的当前帧的近端音频信号对应了所述一系列远端音频信号中的最后一帧;因此,在定位了与回声信号最相似的目标远端音频信号的帧序号后,只需要确定目标远端音频信号的帧序号与最后一帧的帧序号之间的间隔帧数,然后该间隔帧数与帧长的乘积结果所表示的时长就是目标远端音频信号被播放后又被回采所经过的时长,即回声信号的回声延时。
另外,如图2所示,本说明书在准确地确定回声延时后,进一步可以基于回声延时,将近端设备通过音频采集装置所采集到的近端音频信号中的回声信号去除,仅保留近端用户纯净音频的原始音频信号以传输给远端设备。
在介绍了本公开的基本原理之后,下面具体介绍本公开的各种非限制性实施方式。
示例性方法
下面参考图3来描述根据本公开示例性实施方式的确定回声延时的方法。如图3所示,所述确定回声延时的方法,应用于近端设备,所述方法可以包括以下步骤:
步骤310:响应于近端设备与远端设备的实时通信,获取所述近端设备通过音频采集装置所采集到的当前帧的近端音频信号,并获取在所述当前帧之前预设时间范围内由所述远端设备通过实时通信网络所发送的一系列远端音频信号;其中,所述近端音频信号包括近端声源产生的原始音频信号和对应于所述原始音频信号的回声信号,所述回声信号是所述近端设备的音频播放装置基于所述远端音频信号所播放的、而被所述音频采集装置所回采的音频信号。
当近端设备与远端设备进行实时通信时,近端设备通过音频采集装置可以采集当前帧的近端音频信号,以及获取该当前帧之前预设时间范围内远端设备发送的一系列远端音频信号。
在实时通信中,音频信号可以是以帧(Frame)这一时间单位进行传输的。帧的时长通常较短,一般只有几个毫秒;一帧的时长也称为帧长。
基于历史的业务经验,回声延时一般是在300毫秒以内,因此上述预设时间范围可以取大于300毫秒。
步骤320:对所述近端音频信号进行时域到频域的变换,得到对应于所述近端音频信号的近端信号频谱。
步骤330:对所述一系列远端音频信号进行时域到频域的变换,得到对应于所述一系列远端音频信号的多个远端信号频谱。
其中,所述时域到频域的变换可以包括傅立叶变换(Fourier Transform);所述傅立叶变换可以包括多种形式的傅立叶变换,例如离散傅立叶变换(Discrete FourierTransform,DFT)、连续傅立叶变换(Continuous Time Fourier Transform,CTFT)、短时傅立叶变换(Short-Time Fourier Transform,STFT)等等。
以短时傅立叶变换为例,由于音频信号是以帧的形式传输的,而每帧音频的时长只有几个毫秒,因此采用短时傅立叶变换得到的频域结果更为准确和高效。
需要说明的是,上述步骤320和步骤330的执行顺序可以是同步执行也可以是异步执行,本说明书并不对执行顺序进行限定。
步骤340:计算所述近端信号频谱与各个远端信号频谱之间的互相关指标值,并确定其中的最大指标值;
在本说明书中,所述互相关指标可以是一类用于表示信号之间相关性的指标;进一步的,所述互相关指标可以包括广义互相关指标、经典互相关指标、二值化互相关指标等中的至少一种。
其中,广义互相关(Generialized Cross-Correlation,GCC)指标,可以通过对两组信号频谱进行处理以获得更陡峭的互相关峰值,从而基于该更陡峭的互相关峰值的相关程度来表示这两组信号频谱之间的互相关的指标值。如此,通过更陡峭的互相关峰值凸显信号频谱之间差异,从而提升指标值的准确性。
经典互相关(Canonical Correlation Analysis,CCA)指标可以通过在两组信号频谱中选取若干有代表性的信号频率(例如特征值),并用这些信号频率的相关程度来表示这两组信号频谱之间的互相关的指标值。
二值化互相关指标可以将两组信号频谱进行二值化操作,并用二值化后的信号频谱的相关程度来表示这两组信号频谱之间的互相关的指标值。由于二值化后的信号频谱中的频率只有1和0,因此减低了互相关计算的复杂度、减少了互相关计算量。
如前所述,由于近端音频信号只有1帧,而远端音频信号具有n帧,因此在计算近端音频信号与远端音频信号之间的互相关指标的指标值时,可以得到n个指标值;进而需要从这n个指标值中选取最大指标值。
步骤350:确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号,并基于所述帧序号确定相应的回声延时,所述回声延时是所述回声信号经由所述近端设备的音频播放装置播放后又被所述音频采集装置所回采而导致的。
为了便于介绍,以下将最大指标值所对应的远端音频信号称为目标远端音频信号,所述目标远端音频信号是所述一系列远端音频信号中的一帧信号。
最大指标值表示的是近端音频信号与目标远端音频信号之间互相关程度最高,说明近端音频信号中存在与目标远端音频信号相似的音频内容;而近端音频信号中与目标远端音频信号相似的音频内容一般是回声信号。
通过确定目标远端音频信号在所述一系列远端音频信号中的帧序号后,可以基于所述帧序号确定所述回声信号经由近端设备的音频播放装置播放后又被音频采集装置所采集的过程所导致的回声延时。
在一示例性的实施例中,所述步骤350中的基于所述帧序号确定相应的回声延时,可以包括:
基于所述一系列远端音频信号中最大指标值所对应的帧序号,以及所述一系列远端音频信号中末尾帧所对应的帧序号,确定相应的间隔帧数;
将所述间隔帧数与帧长的乘积结果确定为所述回声信号的回声延时。
以下结合图4所示的帧序号和回声延时值的示意图加以说明。
在图4中近端设备采集到的当前帧的近端音频信号,在当前帧之前的远端音频信号可以分为10帧。
假设最大指标值对应的帧序号为第5帧,那么说明近端音频信号中的回声信号是因为第5帧的远端音频信息被近端设备的音频采集装置所回采而形成的。那么从第5帧开始到第10帧经过的时长(6帧乘以帧长)即为回声信号经由所述近端设备的音频播放装置播放后又被所述音频采集装置所回采的过程导致的回声延时的延时值。
由于回声信号所在的当前帧的近端音频信号对应了所述一系列远端音频信号中的最后一帧;因此,在定位了与回声信号最相似的目标远端音频信号的帧序号后,只需要确定目标远端音频信号的帧序号与最后一帧的帧序号之间的间隔帧数,然后该间隔帧数与帧长的乘积结果所表示的时长就是目标远端音频信号被播放后又被回采所经过的时长,即回声信号的回声延时。
如前所述,当近端设备与远端设备进行实时通信时,近端设备可以采集当前帧的近端音频信号,以及获取该当前帧之前预设时间范围内远端设备发送的一系列远端音频信号。而基于历史的业务经验,回声延时一般是在300毫秒以内,因此上述预设时间范围可以取大于300毫秒。
由于当前帧之前预设时间范围的远端音频信号的时长远大于近端音频信号,为了提高计算互相关指标的效率,可以预先对完整的远端音频信号进行分帧处理,以得到若干帧的远端音频信号。这样,每一帧的远端音频信号与近端音频信号的时长可以是等长的。
基于此,在一示例性的实施例中,如图5所示上述步骤330对所述一系列远端音频信号进行时域到频域的变换,得到对应于所述一系列远端音频信号的多个远端信号频谱,可以包括:
步骤332,响应于对完整远端音频信号所进行的分帧处理,得到所述一系列远端音频信号;其中,所述近端音频信号与所述一系列远端音频信号中的最后一帧相对应;
步骤334,对每一帧远端音频信号进行时域到频域的变换,得到对应于每一帧远端音频信号的多个远端信号频谱。
以下结合图6所示的确定回声延时的流程示意图加以说明,针对近端设备采集的近端音频信号Y和获取的远端音频信号X;可以对远端音频信号X进行分帧处理:
假设近端设备获取到的是当前帧之前500毫秒的远端音频信号,并且帧长为4毫秒,那么对500毫秒的远端音频信号进行分帧可以得到125帧的远端音频信号。对应到图6中的n则为125,按照时序顺序依次可以得到:第一帧的远端音频信号X(1)、第二帧的远端音频信号X(2)、…、第125帧的远端音频信号X(125)。进一步,对每一帧的远端音频信号进行时域到频域的变换,得到每一帧的远端音频信号对应的远端信号频谱:第一帧的远端音频频谱X(1,ω)、第二帧的远端音频频谱X(2,ω)、…、第125帧的远端音频频谱X(125,ω)。
另外,由于近端音频信号Y只有1帧,且该帧在与远端音频信号的最后一帧(即第n帧)相对应;因此在该示例中,对近端音频信号Y(125)进行时域到频域的变换,可以得到近端音频信号对应的近端信号频谱Y(125,ω)。
在上述实施例中,通过对远端音频信号进行分帧,使得每一帧的远端音频信号与近端音频信号的时长相同(即帧长相等),如此在经过时域到频域转换后,可以确保近端信号频谱与每个远端信号频谱在时间维度是等长的,由于近端信号频谱与每个远端信号频谱在时间维度是等长的,因此不会存在某段信号频谱没有被计算到的问题。
如果远端音频信号和近端音频信号的帧长不同,那么近端信号频谱与每个远端信号频谱在时间维度也是不等长的;对于较长的信号频谱会存在部分信号频谱没有被计算到的问题。
在一示例性的实施例中,在上述步骤340计算所述近端信号频谱与各个远端信号频谱之间的互相关指标值之前,如图7所示还可以包括:
步骤326,基于第二频段的频率范围,截取所述近端信号频谱中位于所述第二频段的部分,以获得目标近端信号频谱;
步骤332,基于第二频段的频率范围,截取各个所述远端信号频谱中位于所述第二频段的部分,以获得多个目标远端信号频谱;
在该示例中,所述第二频段中的最小频率值大于等于所述第一频段中的最大频率值,所述第二频段中的最大频率值小于等于所述第三频段中的最小频率值。
如果将频段按照低中高划分,那么第一频段可以是指低频段,第二频段可以是指中频段,第三频段可以是指高频段;并且每种频段的频率范围可以基于行业标准或者业务经验进行灵活配置。
例如,第一频段的频率范围可以设置为0-1khz,第二频段的频率范围可以设置为800hz-5khz;第三频段的频率范围则为5khz以上。其中,khz为千赫兹。
基于以下公式1可以获取位于第二频段的多个目标远端信号频谱:
其中,X_s(i,ω)表示第i帧的第二频段的目标远端信号频谱;X(i,ω)表示第i帧的远端信号频谱;2*pi*ω表示第i帧的远端信号频谱的频率;i为0到n的正整数。
利用公式1,可以将远端信号频谱中小于1千赫兹的频率置为0,将远端信号频谱中大于5千赫兹的频率置为0,并保持远端信号频谱中大于1千赫兹且小于5千赫兹的频率不变。
在实际应用中,由于近端设备的音频采集装置(如麦克风)对低频段的音频响应不灵敏,容易丢失部分低频段的音频;从而影响互相关计算的准确性。
另外,在实时通信过程中高频段的音频含量相对较少;因此,为了避免低频段和高频段的音频对互相关计算结果的异常影响,通过截取受异常影响较小的中频段的音频信号,得到中频段的远端信号频谱和中频段的近端信号频谱,以提升互相关计算结果的准确性。
继续结合图6所示的示意图,针对n帧的远端音频频谱,截取其中的第二频段的目标远端音频频谱分别为:
第一帧下第二频段的目标远端音频频谱X_s(1,ω)、第二帧下第二频段的目标远端音频频谱X_s(2,ω)、…、第n帧下第二频段的目标远端音频频谱X_s(n,ω)。
针对第n帧的近端音频频谱,截取其中第二频段的目标近端音频频谱Y_s(n,ω)。
相应地,上述步骤340计算所述近端信号频谱与各个远端信号频谱之间的互相关指标值,并确定其中的最大指标值,进一步可以包括:
计算所述目标近端信号频谱与各个目标远端信号频谱之间的互相关指标值,并从所述互相关指标值中确定其中的最大指标值。
继续结合图6所示的示意图,计算目标近端音频频谱Y_s(n,ω)与各个目标远端信号频谱的互相关指标值:
计算目标近端音频频谱Y_s(n,ω)与第一帧的目标远端音频频谱X_s(1,ω)的互相关指标值:cor(1);
计算目标近端音频频谱Y_s(n,ω)与第二帧的目标远端音频频谱X_s(2,ω)的互相关指标值:cor(2);
同理计算剩余部分,直到计算出目标近端音频频谱Y_s(n,ω)与第n帧的目标远端音频频谱X_s(n,ω)的互相关指标值cor(n);
这样,合计可以计算出n个互相关指标值,然后从这n个指标值中选取一个最大指标值cor_max。
在上述实施例中,由于目标近端信号频谱和目标远端信号频谱仅保留了第二频段的信号频谱,因此基于目标近端信号频谱和目标远端信号频谱计算互相关指标值结果不会受到第一频段和第三频段的信号频谱的不利影响,从而使得确定的最大指标值更为准确。
在一示例性的实施例中,在上述步骤350确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号之前,如图8所示还可以包括:
步骤342,对所述最大指标值进行有效性校验;
相应得,上述步骤350确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号,进一步可以包括:
步骤352,响应于所述最大指标值通过有效性校验,确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号。
步骤354,响应于所述最大指标值未通过有效性校验,将最近一次确定的回声延时确定为所述回声信号的回声延时。
在实际应用中,当前帧的近端音频信号中的回声信号可能并不明显,甚至还没有噪声信号明显,这样的话最大指标值对应实际是噪声信号,从而会将噪声信号错误的视为回声信号;在错误的将噪声信号视为回声信号的情况下,基于噪声信号计算的回声延时显然是错误的。正确地回声延时应当是基于回声信号而非噪声信号计算得到。
在上述实施例中,通过对最大指标值进行有效性校验以排除噪声信号的影响,避免得到错误的回声延时。另外,由于实时通信过程中回声延时不太会频繁波动,因此针对未通过有效性校验,则可以采用最近一次确定的回声延时作为当前帧中回声信号的回声延时。
在一示例性的实施例中,所述对所述最大指标值进行有效性校验,可以包括:
响应于所述最大指标值不小于所述当前帧对应的动态阈值,确定所述最大指标值通过有效性校验;其中,所述动态阈值基于切换策略在第一阈值和第二阈值之间进行动态切换;所述第一阈值小于所述第二阈值。
所述第一阈值和第二阈值可以根据使用经验灵活调整,例如第一阈值设置在0.8-0.85之间,第二阈值设置在0.9-0.95之间。
继续结合图3所示的示意图,确定最大指标值cor_max是否大于等于动态阈值T;结合以下公式2所示
如果最大指标值cor_max小于动态阈值T,则校验不通过(计算结果为null);如果最大指标值cor_max大于等于(即不小于)动态阈值T,则校验通过,进而可以获取最大指标值对应的目标远端信号频谱对应帧的帧序号r,并基于所述帧序号r确定远端音频信号经由近端设备的音频播放装置播放后又被音频采集装置所采集的过程所导致的回声延时。
在该示例中,通过设置动态阈值,并基于切换策略在不同场景动态切换对应的动态阈值,从而综合提升不同场景下回声延时确定的准确性。
以下进一步介绍所述动态阈值的切换策略。
阈动态值T的设置需要考虑两点:
1、当T较大时,容易错误的限制部分有效的最大指标值cor_max,导致回声延时估计过慢甚至估计不出。
举例说明,假设明显的回声信号对应的互相关指标值位于0.7-1之间,如果动态阈值T设置太大如设置为0.95;由于大部分回声信号对应的最大指标值并没有达到0.95,那么就会将很多实际有效的最大指标值也排除掉。
假设,100帧的远端音频信号,前99帧的最大指标值均小于动态阈值0.95,只有最后1帧的最大指标值为0.96;那么前99帧都无法通过有效性校验,导致回声延时估计过慢。如果100帧的最大指标值均小于0.95,甚至会估计不出回声延时。
而如果100帧的第10帧的最大指标值为0.94,并降低动态阈值为0.94,那么在第10帧就可以通过有效性校验,并计算回声延时;即使后续直到99帧均无法通过有效性校验,也可以根据第10帧的回声延时进行回声消除处理。
2、当T较小时,容易保留部分无效的最大指标值cor_max,进而造成回声延时估计错误。
举例说明,假设明显的回声信号对应的互相关指标值位于0.7-1之间,如果动态阈值T设置太小如0.5,虽然可以将明显的回声信号都识别出,但也会将其他非回声信号(例如噪声)也视为回声信号,基于非回声信号计算出的回声延时,而这显然会导致错误。
为了兼顾确定回声延时的延时值的速度和准确性,本说明书提供的所述动态阈值的切换策略为:
第一种场景:响应于在当前帧之前所述预设时间范围内的历史时延数组中延时值的总个数小于预设个数,以所述第一阈值作为所述动态阈值。
其中,所述预设个数可以是基于业务经验确定的经验值。例如,在预设时间范围为300ms、帧长为5ms时,历史时延数组中的延时值个数最多可以有60个(即300ms除以5ms);那么根据业务经验可以取该最多延时值个数的一个比例后的结果作为预设个数,例如取的比例为1/3,则预设个数为60/3=20;即当历史时延数组中延时值的总个数小于20个时,以所述第一阈值作为所述动态阈值。
在该场景下,所述历史时延数组是本次实时通信过程中确定的每一帧近端音频信息中回声信号的延时值。
在实时通信开始时,该历史时延数组为空,随着通信时长增加,历史时延数组中延时值会越来越多。当历史时延数组中的延时值的总个数小于预设个数,对应的是实时通信的初始阶段,由于初始阶段累积的历史延时值数量较少,难以校验最大指标值,因而在初始阶段选择低门限的第一阈值,采用较小的动态阈值可以更快地累积历史延时值,从而能更快地满足第三种场景所要求的:在当前帧之前所述预设时间范围内的历史时延数组中的相同延时值的个数与所述历史时延数组中延时值的总个数的比值超过相应的比例阈值。
第二种场景:响应于在当前帧之前所述预设时间范围内的历史时延数组中的相同延时值的个数与所述历史时延数组中延时值的总个数的比值(以下简称为相同延时值的比值)未超过相应的比例阈值,以所述第一阈值作为所述动态阈值。
其中,所述比例阈值可以是基于业务经验确定的经验值,例如比例阈值为60%时,当历史时延数组中的相同延时值的个数为30,而历史时延数组中延时值的总个数为60时,该相同延时值的比值为30/60=50%,由于50%没有超过比例阈值60%,因此以所述第一阈值作为所述动态阈值。
在该场景下,由于实时通信过程中回声延时不太会频繁波动,大部分回声延时的延时值都应该是相同的;因此如果历史时延数组中的相同延时值的比值未超过比例阈值,说明实时通信过程中还没有特别明显的历史延时值,这种情况下同样难以校验最大指标值;因而选择低门限的第一阈值,采用较小的动态阈值可以更快地累积历史延时值,从而能更快地满足第三种场景所要求的:在当前帧之前所述预设时间范围内的历史时延数组中的相同延时值的个数与所述历史时延数组中延时值的总个数的比值超过相应的比例阈值。
第三种场景:响应于在当前帧之前所述预设时间范围内的历史时延数组中的相同延时值的个数与所述历史时延数组中延时值的总个数的比值超过相应的比例阈值,以所述第二阈值作为所述动态阈值。
在该场景下,由于实时通信过程中回声延时不太会频繁波动,大部分回声延时的延时值都应该是相同的;对于大部分相同的延时值可以称之为基准延时值,其它不同的延时值均是在该基准延时值附近上下波动;
因此如果历史时延数组中的相同延时值的比值超过比例阈值,说明这个超过比例阈值的延时值是本次实时通信过程中基准延时值;此时选择高门限的第二阈值,提高最大指标值的校验门槛,即使后续最大指标值无法通过有效性校验,也可以根据这个达到预设比值的延时值继续进行回声消除;由于使用基准延时值进行回声消除,保证了回声消除的连续性。
在一示例性的实施例中,在步骤350之后,还可以包括:
响应于确定的回声延时,基于所述回声延时对所述近端音频信号中的回声信号进行回声消除处理。
在该示例,在准确地确定回声延时后,进一步可以基于回声延时,将近端设备通过音频采集装置所采集到的近端音频信号中的回声信号去除,仅保留近端用户纯净音频的原始音频信号以传输给远端设备,从而提高实时通信过程中传输的音频信号质量。
示例性介质
在介绍了本公开示例性实施方式的方法之后,接下来,参考图9对本公开示例性实施方式的介质进行说明。
本示例性实施方式中,可以通过程序产品实现上述方法,如可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
该程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RE等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如C语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
示例性装置
在介绍了本公开示例性实施方式的介质之后,接下来,参考图10对本公开示例性实施方式的装置进行说明。
图10示意性地示出了根据本公开实施方式的一种确定回声延时的装置的框图,对应于前述图3所示的方法实施例。该装置可以包括:
获取单元1010,响应于近端设备与远端设备的实时通信,获取所述近端设备通过音频采集装置所采集到的当前帧的近端音频信号,并获取在所述当前帧之前预设时间范围内由所述远端设备通过实时通信网络所发送的一系列远端音频信号;其中,所述近端音频信号包括近端声源产生的原始音频信号和对应于所述原始音频信号的回声信号,所述回声信号是所述近端设备的音频播放装置基于所述远端音频信号所播放的、而被所述音频采集装置所回采的音频信号;
第一变换单元1020,对所述近端音频信号进行时域到频域的变换,得到对应于所述近端音频信号的近端信号频谱;
第二变换单元1030,对所述一系列远端音频信号进行时域到频域的变换,得到对应于所述一系列远端音频信号的多个远端信号频谱;
计算单元1040,计算所述近端信号频谱与各个远端信号频谱之间的互相关指标值,并确定其中的最大指标值;
确定单元1050,确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号,并基于所述帧序号确定相应的回声延时,所述回声延时是所述回声信号经由所述近端设备的音频播放装置播放后又被所述音频采集装置所回采而导致的。
可选的,所述第二变换单元1030,进一步用于响应于对完整远端音频信号所进行的分帧处理,得到所述一系列远端音频信号;其中,所述近端音频信号与所述一系列远端音频信号中的最后一帧相对应;对每一帧远端音频信号进行时域到频域的变换,得到对应于每一帧远端音频信号的多个远端信号频谱。
可选的,在所述计算单元1040之前,还包括:
第一处理单元1021,基于第二频段的频率范围,截取所述近端信号频谱中位于所述第二频段的部分,以获得目标近端信号频谱;其中,所述第二频段位于第一频段和第三频段之间,所述第二频段中的最小频率值大于等于所述第一频段中的最大频率值,所述第二频段中的最大频率值小于等于所述第三频段中的最小频率值;
第二处理单元1031,基于第二频段的频率范围,截取各个所述远端信号频谱中位于所述第二频段的部分,以获得多个目标远端信号频谱;
所述计算单元1040,进一步用于计算所述目标近端信号频谱与各个目标远端信号频谱之间的互相关指标值,并确定其中的最大指标值。
可选的,在所述确定单元1050之前,还包括:
校验单元1041,对所述最大指标值进行有效性校验;
所述确定单元1050,进一步用于响应于所述最大指标值通过有效性校验,确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号。
可选的,所述确定单元1050,还用于响应于所述最大指标值未通过有效性校验,将最近一次确定的回声延时确定为所述回声信号的回声延时。
可选的,所述校验单元1041,进一步用于响应于所述最大指标值不小于所述当前帧对应的动态阈值,确定所述最大指标值通过有效性校验;其中,所述动态阈值基于切换策略在第一阈值和第二阈值之间进行动态切换;所述第一阈值小于所述第二阈值。
可选的,所述动态阈值的切换策略包括:
响应于在当前帧之前所述预设时间范围内的历史时延数组中的相同延时值的个数与所述历史时延数组中延时值的总个数的比值未超过相应的比例阈值,以所述第一阈值作为所述动态阈值。
可选的,所述动态阈值的切换策略包括:
响应于在当前帧之前所述预设时间范围内的历史时延数组中的相同延时值的个数与所述历史时延数组中延时值的总个数的比值超过相应的比例阈值,以所述第二阈值作为所述动态阈值。
可选的,所述动态阈值的切换策略包括:
响应于在当前帧之前所述预设时间范围内的历史时延数组中延时值的总个数小于预设个数,以所述第一阈值作为所述动态阈值。
可选的,所述确定单元1050,进一步用于基于所述一系列远端音频信号中最大指标值所对应的帧序号,以及所述一系列远端音频信号中末尾帧所对应的帧序号,确定相应的间隔帧数;并将所述间隔帧数与帧长的乘积结果确定为所述回声信号的回声延时。
可选的,所述时域到频域的变换包括短时傅立叶变换。
可选的,所述互相关指标包括广义互相关指标、经典互相关指标、二值化互相关指标中的至少一种。
可选的,所述实时通信包括基于互联网的实时通信或者基于话务网的实时通信。
可选的,所述确定单元1050,进一步用于基于所述回声延时对所述近端音频信号中的回声信号进行回声消除处理。
示例性计算设备
在介绍了本公开示例性实施方式的方法、介质和装置之后,接下来,参考图11对本公开示例性实施方式的计算设备进行说明。
图11显示的计算设备1100仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图11所示,计算设备1100以通用计算设备的形式表现。计算设备1100的组件可以包括但不限于:上述至少一个处理单元1101、上述至少一个存储单元1102,连接不同系统组件(包括处理单元1101和存储单元1102)的总线1103。
总线1103包括数据总线、控制总线和地址总线。
存储单元1102可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)11021和/或高速缓存存储器11022,可以进一步包括非易失性存储器形式的可读介质,例如只读存储器(ROM)11023。
存储单元1102还可以包括具有一组(至少一个)程序模块11024的程序/实用工具11025,这样的程序模块11024包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
计算设备1100也可以与一个或多个外部设备1104(例如键盘、指向设备等)通信。
这种通信可以通过输入/输出(I/O)接口1105进行。并且,计算设备1100还可以通过网络适配器1106与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图11所示,网络适配器1106通过总线1103与计算设备1100的其它模块通信。应当理解,尽管图中未示出,可以结合计算设备1100使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了确定回声延时的装置的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
此外,尽管在附图中以特定顺序描述了本公开方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本公开的精神和原理,但是应该理解,本公开并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本公开旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。
Claims (10)
1.一种确定回声延时的方法,所述方法包括:
响应于近端设备与远端设备的实时通信,获取所述近端设备通过音频采集装置所采集到的当前帧的近端音频信号,并获取在所述当前帧之前预设时间范围内由所述远端设备通过实时通信网络所发送的一系列远端音频信号;其中,所述近端音频信号包括近端声源产生的原始音频信号和对应于所述原始音频信号的回声信号,所述回声信号是所述近端设备的音频播放装置基于所述远端音频信号所播放的、而被所述音频采集装置所回采的音频信号;
对所述近端音频信号进行时域到频域的变换,得到对应于所述近端音频信号的近端信号频谱;
对所述一系列远端音频信号进行时域到频域的变换,得到对应于所述一系列远端音频信号的多个远端信号频谱;
计算所述近端信号频谱与各个远端信号频谱之间的互相关指标值,并确定其中的最大指标值;
确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号,并基于所述帧序号确定相应的回声延时,所述回声延时是所述回声信号经由所述近端设备的音频播放装置播放后又被所述音频采集装置所回采而导致的。
2.根据权利要求1所述的方法,所述对所述一系列远端音频信号进行时域到频域的变换,得到对应于所述一系列远端音频信号的多个远端信号频谱,包括:
响应于对完整远端音频信号所进行的分帧处理,得到所述一系列远端音频信号;其中,所述近端音频信号与所述一系列远端音频信号中的最后一帧相对应;
对每一帧远端音频信号进行时域到频域的变换,得到对应于每一帧远端音频信号的多个远端信号频谱。
3.根据权利要求1所述的方法,在所述计算所述近端信号频谱与各个远端信号频谱之间的互相关指标值之前,还包括:
基于第二频段的频率范围,截取所述近端信号频谱中位于所述第二频段的部分,以获得目标近端信号频谱;
基于第二频段的频率范围,截取各个所述远端信号频谱中位于所述第二频段的部分,以获得多个目标远端信号频谱;
其中,所述第二频段位于第一频段和第三频段之间,所述第二频段中的最小频率值大于等于所述第一频段中的最大频率值,所述第二频段中的最大频率值小于等于所述第三频段中的最小频率值;
所述计算所述近端信号频谱与各个远端信号频谱之间的互相关指标值,并确定其中的最大指标值,包括:
计算所述目标近端信号频谱与各个目标远端信号频谱之间的互相关指标值,并确定其中的最大指标值。
4.根据权利要求1所述的方法,在所述确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号之前,还包括:
对所述最大指标值进行有效性校验;
所述确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号,包括:
响应于所述最大指标值通过有效性校验,确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号。
5.根据权利要求4所述的方法,在所述对所述最大指标值进行有效性校验之后,还包括:
响应于所述最大指标值未通过有效性校验,将最近一次确定的回声延时确定为所述回声信号的回声延时。
6.根据权利要求4所述的方法,所述对所述最大指标值进行有效性校验,包括:
响应于所述最大指标值不小于所述当前帧对应的动态阈值,确定所述最大指标值通过有效性校验;其中,所述动态阈值基于切换策略在第一阈值和第二阈值之间进行动态切换;所述第一阈值小于所述第二阈值。
7.根据权利要求6所述的方法,所述动态阈值的切换策略包括:
响应于在当前帧之前所述预设时间范围内的历史时延数组中的相同延时值的个数与所述历史时延数组中延时值的总个数的比值未超过相应的比例阈值,以所述第一阈值作为所述动态阈值。
8.一种确定回声延时的装置,所述装置包括:
获取单元,响应于近端设备与远端设备的实时通信,获取所述近端设备通过音频采集装置所采集到的当前帧的近端音频信号,并获取在所述当前帧之前预设时间范围内由所述远端设备通过实时通信网络所发送的一系列远端音频信号;其中,所述近端音频信号包括近端声源产生的原始音频信号和对应于所述原始音频信号的回声信号,所述回声信号是所述近端设备的音频播放装置基于所述远端音频信号所播放的、而被所述音频采集装置所回采的音频信号;
第一变换单元,对所述近端音频信号进行时域到频域的变换,得到对应于所述近端音频信号的近端信号频谱;
第二变换单元,对所述一系列远端音频信号进行时域到频域的变换,得到对应于所述一系列远端音频信号的多个远端信号频谱;
计算单元,计算所述近端信号频谱与各个远端信号频谱之间的互相关指标值,并确定其中的最大指标值;
确定单元,确定所述最大指标值所对应的远端音频信号在所述一系列远端音频信号中的帧序号,并基于所述帧序号确定相应的回声延时,所述回声延时是所述回声信号经由所述近端设备的音频播放装置播放后又被所述音频采集装置所回采而导致的。
9.一种计算机可读存储介质,包括:
当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1-7中任一项所述的确定回声延时的方法。
10.一种计算设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述可执行指令,以实现如权利要求1-7中任一项所述的确定回声延时的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210346616.9A CN114724572B (zh) | 2022-03-31 | 2022-03-31 | 确定回声延时的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210346616.9A CN114724572B (zh) | 2022-03-31 | 2022-03-31 | 确定回声延时的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114724572A true CN114724572A (zh) | 2022-07-08 |
CN114724572B CN114724572B (zh) | 2024-07-16 |
Family
ID=82241921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210346616.9A Active CN114724572B (zh) | 2022-03-31 | 2022-03-31 | 确定回声延时的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114724572B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105872156A (zh) * | 2016-05-25 | 2016-08-17 | 腾讯科技(深圳)有限公司 | 一种回声时延跟踪方法及装置 |
WO2016141773A1 (zh) * | 2015-03-09 | 2016-09-15 | 电信科学技术研究院 | 一种近端语音信号检测方法及装置 |
US9916840B1 (en) * | 2016-12-06 | 2018-03-13 | Amazon Technologies, Inc. | Delay estimation for acoustic echo cancellation |
CN109309764A (zh) * | 2017-07-28 | 2019-02-05 | 北京搜狗科技发展有限公司 | 音频数据处理方法、装置、电子设备和存储介质 |
WO2020097828A1 (zh) * | 2018-11-14 | 2020-05-22 | 深圳市欢太科技有限公司 | 回声消除方法、延时估计方法、装置、存储介质及设备 |
CN113382119A (zh) * | 2020-02-25 | 2021-09-10 | 北京字节跳动网络技术有限公司 | 消除回声的方法、装置、可读介质和电子设备 |
-
2022
- 2022-03-31 CN CN202210346616.9A patent/CN114724572B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016141773A1 (zh) * | 2015-03-09 | 2016-09-15 | 电信科学技术研究院 | 一种近端语音信号检测方法及装置 |
CN105872156A (zh) * | 2016-05-25 | 2016-08-17 | 腾讯科技(深圳)有限公司 | 一种回声时延跟踪方法及装置 |
US9916840B1 (en) * | 2016-12-06 | 2018-03-13 | Amazon Technologies, Inc. | Delay estimation for acoustic echo cancellation |
CN109309764A (zh) * | 2017-07-28 | 2019-02-05 | 北京搜狗科技发展有限公司 | 音频数据处理方法、装置、电子设备和存储介质 |
WO2020097828A1 (zh) * | 2018-11-14 | 2020-05-22 | 深圳市欢太科技有限公司 | 回声消除方法、延时估计方法、装置、存储介质及设备 |
CN113382119A (zh) * | 2020-02-25 | 2021-09-10 | 北京字节跳动网络技术有限公司 | 消除回声的方法、装置、可读介质和电子设备 |
Non-Patent Citations (1)
Title |
---|
史兆丰;夏秀渝;: "基于语音稀疏性的频域声回波对消算法研究", 四川大学学报(自然科学版), no. 02, 28 March 2013 (2013-03-28) * |
Also Published As
Publication number | Publication date |
---|---|
CN114724572B (zh) | 2024-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9916840B1 (en) | Delay estimation for acoustic echo cancellation | |
US9431023B2 (en) | Monaural noise suppression based on computational auditory scene analysis | |
US20210110840A1 (en) | Hybrid Noise Suppression | |
CN111508519B (zh) | 一种音频信号人声增强的方法及装置 | |
CN108696648B (zh) | 一种短时语音信号处理的方法、装置、设备及存储介质 | |
CN108234793B (zh) | 一种通讯方法、装置、电子设备和存储介质 | |
CN112997249B (zh) | 语音处理方法、装置、存储介质及电子设备 | |
CN113205824B (zh) | 声音信号处理方法、装置、存储介质、芯片及相关设备 | |
KR20150032562A (ko) | 소음을 제거하기 위한 방법, 장치 및 모바일 단말 | |
CN114530160A (zh) | 模型训练方法、回声消除方法、系统、设备及存储介质 | |
CN113160846B (zh) | 噪声抑制方法和电子设备 | |
CN112309418B (zh) | 一种抑制风噪声的方法及装置 | |
CN204117590U (zh) | 语音采集降噪装置以及语音质量评价系统 | |
CN110085264B (zh) | 语音信号检测方法、装置、设备及存储介质 | |
CN114724572B (zh) | 确定回声延时的方法和装置 | |
CN110992975A (zh) | 一种语音信号处理方法、装置及终端 | |
CN113744762B (zh) | 一种信噪比确定方法、装置、电子设备和存储介质 | |
CN115101097A (zh) | 语音信号处理方法、装置、电子设备及存储介质 | |
WO2021217750A1 (zh) | 消除语音交互中信道差异的方法及系统、电子设备及介质 | |
CN114360572A (zh) | 语音去噪方法、装置、电子设备及存储介质 | |
CN113113046A (zh) | 音频处理的性能检测方法、装置、存储介质及电子设备 | |
CN113724722A (zh) | 回声延迟估计方法、装置、存储介质和计算设备 | |
CN111462771B (zh) | 一种啸叫处理方法 | |
CN113516995B (zh) | 声音处理方法和装置 | |
CN116504264B (zh) | 音频处理方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |