CN109979479A - 一种回音消除方法、装置、设备及存储介质 - Google Patents

一种回音消除方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN109979479A
CN109979479A CN201910301046.XA CN201910301046A CN109979479A CN 109979479 A CN109979479 A CN 109979479A CN 201910301046 A CN201910301046 A CN 201910301046A CN 109979479 A CN109979479 A CN 109979479A
Authority
CN
China
Prior art keywords
data
buffer area
audio
near end
parameter
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
CN201910301046.XA
Other languages
English (en)
Other versions
CN109979479B (zh
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.)
Suzhou Medicalsystem Medical Technology Co Ltd
Original Assignee
Suzhou Medicalsystem Medical Technology 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 Suzhou Medicalsystem Medical Technology Co Ltd filed Critical Suzhou Medicalsystem Medical Technology Co Ltd
Priority to CN201910301046.XA priority Critical patent/CN109979479B/zh
Publication of CN109979479A publication Critical patent/CN109979479A/zh
Application granted granted Critical
Publication of CN109979479B publication Critical patent/CN109979479B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10KSOUND-PRODUCING DEVICES; METHODS OR DEVICES FOR PROTECTING AGAINST, OR FOR DAMPING, NOISE OR OTHER ACOUSTIC WAVES IN GENERAL; ACOUSTICS NOT OTHERWISE PROVIDED FOR
    • G10K11/00Methods or devices for transmitting, conducting or directing sound in general; Methods or devices for protecting against, or for damping, noise or other acoustic waves in general
    • G10K11/16Methods or devices for protecting against, or for damping, noise or other acoustic waves in general
    • G10K11/175Methods or devices for protecting against, or for damping, noise or other acoustic waves in general using interference effects; Masking sound
    • G10K11/178Methods or devices for protecting against, or for damping, noise or other acoustic waves in general using interference effects; Masking sound by electro-acoustically regenerating the original acoustic waves in anti-phase
    • G10K11/1781Methods or devices for protecting against, or for damping, noise or other acoustic waves in general using interference effects; Masking sound by electro-acoustically regenerating the original acoustic waves in anti-phase characterised by the analysis of input or output signals, e.g. frequency range, modes, transfer functions
    • G10K11/17813Methods or devices for protecting against, or for damping, noise or other acoustic waves in general using interference effects; Masking sound by electro-acoustically regenerating the original acoustic waves in anti-phase characterised by the analysis of input or output signals, e.g. frequency range, modes, transfer functions characterised by the analysis of the acoustic paths, e.g. estimating, calibrating or testing of transfer functions or cross-terms
    • G10K11/17819Methods or devices for protecting against, or for damping, noise or other acoustic waves in general using interference effects; Masking sound by electro-acoustically regenerating the original acoustic waves in anti-phase characterised by the analysis of input or output signals, e.g. frequency range, modes, transfer functions characterised by the analysis of the acoustic paths, e.g. estimating, calibrating or testing of transfer functions or cross-terms between the output signals and the reference signals, e.g. to prevent howling
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M9/00Arrangements for interconnection not involving centralised switching
    • H04M9/08Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic
    • H04M9/082Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic using echo cancellers
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L2021/02082Noise filtering the noise being echo, reverberation of the speech

Abstract

本发明实施例公开了一种回音消除方法、装置、设备及存储介质。回音消除方法,包括:按照预设参数设置回音消除参数;初始化预设数据缓冲区,其中,所述预设数据缓冲区包括:近端数据缓冲区、远端数据缓冲、声卡播放缓冲区和声卡采集缓冲区;将从远端设备获取的远端数据同时送入所述声卡播放缓冲区和所述远端数据缓冲区,并按照所述回音消除参数中对应的参数播放音频;将从声卡采集的近端数据送入所述近端数据缓冲区;将所述远端数据和所述近端数据对齐;根据对齐后的所述远端数据和所述近端数据,对所述近端数据进行回音消除。本发明实施例的技术方案,可有效控制回音消除的远端数据和近端数据的延时,显著提升回音消除效果。

Description

一种回音消除方法、装置、设备及存储介质
技术领域
本发明实施例涉及语音通话技术,尤其涉及一种回音消除方法、装置、设备及存储介质。
背景技术
语音通话的使用已经非常普遍,例如,网络即时通讯或视频会议等,这使得人们日常工作和生活更加高效。与此同时,语音通话的一些问题也随之而来,其中回音问题显得尤为严重,如果不对回音进行处理,将会影响通话质量和用户体验,更严重的还会形成震荡,产生啸叫。
目前,绝大多数的软件回音消除应用,都是基于WebRTC的回声消除算法。该算法需将远端数据(本端用户从远端收到的、并送给扬声器播放的音频数据)和近端数据(本端用户从麦克风采集到的包含了从扬声器出来的回音和近端人说话的声音的录音数据)尽可能同时作为算法的输入,也就是近端数据和远端数据两者间延时尽可能小,以保证回音消除算法能用远端数据建立近端数据所含回声对应的回音参考数据,并从近端数据中减去参考数据,最终输出消除回声后的数据。
音频通信实际应用中,由于操作系统本身的非实时性,以及存在声卡硬件采集和播放延时、操作系统和驱动层面的缓冲延时、应用软件的音频传输处理延时等多个延时环节,近端数据和远端数据两者间延时往往很大,处理方法不当会导致两者延时过大且不稳定,也就是每次回音消除近端数据和远端数据两者延时不是一个固定值,这就导致回音消除时无法将远端数据和近端数据对齐,从而得不到理想的回音消除效果。
发明内容
本发明实施例提供一种回音消除方法、装置、设备及存储介质,以实现有效控制回音消除的远端数据和近端数据的延时,显著提升回音消除效果。
第一方面,本发明实施例提供了一种回音消除方法,所述方法包括:
按照预设参数设置回音消除参数;
初始化预设数据缓冲区,其中,所述预设数据缓冲区包括:远端数据缓冲区、近端数据缓冲区、声卡播放缓冲区和声卡采集缓冲区;
将从远端设备获取的远端数据同时送入所述声卡播放缓冲区和所述远端数据缓冲区,并按照所述回音消除参数中对应的参数播放音频;
将从声卡采集的近端数据送入所述近端数据缓冲区;
将所述远端数据和所述近端数据对齐;
根据对齐后的所述远端数据和所述近端数据,对所述近端数据进行回音消除。
第二方面,本发明实施例还提供了一种回音消除装置,所述装置包括:
参数预设模块,用于按照预设参数设置回音消除参数;
缓冲区初始化模块,用于初始化预设数据缓冲区,其中,所述预设数据缓冲区包括:近端数据缓冲区、远端数据缓冲区、声卡播放缓冲区和声卡采集缓冲区;
远端数据送入模块,用于将从远端设备获取的远端数据同时送入所述声卡播放缓冲区和所述远端数据缓冲区,并按照所述回音消除参数中对应的参数播放音频;
近端数据送入模块,用于将从声卡采集的近端数据送入所述近端数据缓冲区;
数据对齐模块,用于将所述远端数据和所述近端数据对齐;
回音消除模块,用于根据对齐后的所述远端数据和所述近端数据,对所述近端数据进行回音消除。
第三方面,本发明实施例还提供了一种设备,包括:
存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,麦克风,用于采集音频,扬声器,用于播放音频。其中,所述处理器执行所述程序时实现本发明任意实施例提供的回音消除方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例提供的回音消除方法。
本发明实施例的技术方案,通过按照预设参数设置回音消除参数并对预设数据缓冲区进行初始化操作,解决了回音消除近端数据和远端数据延时不稳定的问题,实现了将回音消除近端数据和远端数据延时控制在很小的波动范围内,从而显著提升了回音消除效果。
附图说明
图1是本发明实施例一中的一种回音消除方法的流程图;
图2是本发明实施例二中的一种回音消除方法的流程图;
图3a是本发明实施例三中的一种回音消除方法的流程图;
图3b是本发明实施例三中的16KHz远端数据波形图;
图3c是本发明实施例三中的16KHz近端数据波形图;
图3d是本发明实施例三中的对图3c中的近端数据进行回音消除后的波形图;
图3e是本发明实施例三中的8KHz远端数据波形图;
图3f是本发明实施例三中的8KHz近端数据波形图;
图3g是本发明实施例三中的对图3f中的近端数据进行回音消除后的波形图;
图3h是本发明实施例三中的32KHz远端数据波形图;
图3i是本发明实施例三中的32KHz近端数据波形图;
图3j是本发明实施例三中的对图3i中的近端数据进行回音消除后的波形图;
图4是本发明实施例四中的一种回音消除装置的结构示意图;
图5是本发明实施例五提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种回音消除方法的流程图,本实施例的技术方案适用于将远端数据和近端数据对齐从而实现回音消除的情况,该方法可以由回音消除的装置执行,该装置可以由软件和/或硬件来实现,回音消除的方法具体包括如下步骤:
步骤110、按照预设参数设置回音消除参数。
本实施例中,需要按照预设参数设置的回音消除参数包括:音频采集的采样率、采样声道数和采样精度,音频播放的采样率、采样声道数和采样精度,回音消除的采样率、采样声道数和采样精度,音频采集音频帧时长,音频播放音频帧时长,以及数据对齐延时修正参数;
其中,所述音频采集、音频播放、回音消除的采样率设为相同,所述音频采集、音频播放、回音消除的采样声道数设为相同,所述音频采集、音频播放、回音消除的采样率设为相同。
在本实施例中,设置回音消除参数时,将音频采集、播放和回音消除统一配置为回音消除器支持的采样参数。示例的,基于WebRTC回音消除器,可将音频采样参数配置为单声道,采样精度为16bit,采样率为8KHz、16KHz、32KHz或48KHz。
步骤120、初始化预设数据缓冲区,其中,预设数据缓冲区包括:远端数据缓冲区、近端数据缓冲区、声卡播放缓冲区和声卡采集缓冲区。
执行初始化预设数据缓冲区操作,包括:
清空声卡播放缓冲区和声卡采集缓冲区;
清空所述远端数据缓冲区和所述近端数据缓冲区。
可选的,需要执行初始化操作的情况,包括:
当启动音频采集时,音频播放已启动;
或者,当启动音频播放时,音频采集已启动;
或者,当获取到用户操作指令时,初始化所述预设数据缓冲区。
步骤130、将从远端设备获取的远端数据同时送入声卡播放缓冲区和远端数据缓冲区,并按照回音消除参数中对应的参数播放音频。
其中,远端数据是从远端设备接收到的电信号经过解码器转化成的音频数据。从解码器端接收音频帧数据和音频采样参数,如果获得的音频采样参数和预设采样参数相同,则将音频帧数据送入系统播放缓冲区,每次从系统播放缓冲区获取指定时长的音频帧数据送入声卡播放缓冲区,如果系统播放缓冲区剩余音频数据时长大于指定时长,重复执行该过程。
启动音频播放时,将远端数据送入声卡播放缓冲区进行音频播放,同时送入远端数据缓冲区,作为回音消除操作时的回音参考。示例的,远端设备可以是手机、平板、电脑等智能终端设备。
步骤140、将从声卡采集的近端数据送入近端数据缓冲区。
其中,每次采集的音频时长要足够短,使得声音一旦被硬件声卡采集到,便可以被送入近端数据缓冲区,最大程度减少驱动层和操作系统层对声音数据的缓存,以降低从声卡播放的远端数据到被麦克风采集成为近端数据的延时;及减少延时不稳定性干扰因素。示例的,对于Windows平台,每次采集音频时长设置为声卡音频的最小采集单位,即10ms时长音频数据。
可以理解的是,步骤130和步骤140执行的先后顺序是根据实际情况灵活调整的,在实际应用中有先接收到远端数据、先开始采集近端数据或两个步骤同时开始执行三种情况。
步骤150、将远端数据和近端数据对齐。
其中,进行远端数据和近端数据对齐操作包括:将近端数据缓冲区前面一段与修正延时时长相等的近端数据直接送编码器,经编码后传输到远端设备;之后,每次从近端数据缓冲区获取与回音消除器要求的音频时长相等的近端数据,并从远端数据缓冲区获取相等时长的远端数据同时送回音消除器。示例的,当数据对齐延时修正参数为100ms时,将近端数据缓冲区前100ms的近端数据直接送编码器,之后,从近端数据缓冲区及远端数据缓冲区分别获取10ms时长的音频数据同时送回音消除器。
步骤160、根据对齐后的远端数据和近端数据,对近端数据进行回音消除。
其中,回音消除操作包括:用远端数据建立近端数据所含回声对应的回音参考数据;并从近端数据中减去参考数据;输出回音消除后的与音频编码器要求音频时长相等的音帧数据,送入编码器,可选的,采用自适应滤波回音消除器进行回音消除。
本实施例的技术方案,通过按照预设参数设置回音消除参数并对预设数据缓冲区进行初始化操作,解决了回音消除近端数据和远端数据延时不稳定的问题,实现了将回音消除近端数据和远端数据延时控制在很小的波动范围内,从而显著提升了回音消除效果。
实施例二
图2为本发明实施例二提供的一种回音消除方法的流程图,本实施例在上述实施例的基础上进一步细化,提供了从远端设备获取远端数据之时的具体步骤。下面结合图2对本发明实施例二提供的一种回音消除方法进行说明,包括以下步骤:
步骤210、按照预设参数设置回音消除参数。
步骤220、初始化预设数据缓冲区,其中,所述预设数据缓冲区包括:远端数据缓冲区、近端数据缓冲区、声卡播放缓冲区和声卡采集缓冲区。
步骤231、从远端设备获取远端数据和采样参数。
其中,采样参数包括:音频采样率、采样声道数和采样精度。
步骤232、将接收到的采样参数与所述预设参数中的对应参数作比较。
步骤233、如果采样参数与预设参数中的对应参数相同,将远端数据送入系统播放缓冲区。
步骤234、如果采样参数与预设参数中的对应参数不同,将采用线性插值方法进行采样率转换后的远端数据送入系统播放缓冲区。
其中,远端设备通过网络传输到近端的音频数据的采样率、采样声道数和采样精度与预设参数中的对应参数不同时,对接收到的远端数据进行采样率转换。优选的,采用线性插值方法进行采样率转换。可以理解的是,步骤233和步骤234是根据情况择一执行的,图2中所示不对两者执行的先后顺序构成限定。
步骤240、将从声卡采集的近端数据送入近端数据缓冲区。
步骤250、将远端数据和近端数据对齐。
步骤260、根据对齐后的远端数据和近端数据,对近端数据进行回音消除。
本实施例的技术方案,通过将远端数据进行采样率转换,得到与预设参数中对应参数相等的远端数据,避免了音频在回音消除时再次进行采样率转换,节省了计算资源,同时,保证进入声卡播放缓冲区准备播放的音频数据与送入远端数据缓冲区的远端数据完全一致,从而最大程度保持进入回音消除器作为回音参考的远端数据与声卡播放的音频被麦克风采集后的真实回音数据的相关性,从而获得更好的回音消除效果。
实施例三
图3a为本发明实施例三提供的一种回音消除方法的流程图,本实施例在上述实施例的基础上,进一步进行细化,提供了远端数据和近端数据对齐的具体步骤。下面结合图3a对本发明实施例三提供的一种回音消除方法进行说明,还包括以下步骤:
步骤310、按照预设参数设置回音消除参数。
可选的,在Windows平台上,步骤310具体包括:按照音频采集、音频播放、回音消除音频的采样率为16KHz,音频采样声道数为单声道,采样精度为16bit,数据对齐延时修正参数为100ms,音频采集音频帧时长为10ms,音频播放音频帧时长为50ms设置上述回音消除参数。
步骤320、初始化预设数据缓冲区。
步骤330、将从远端设备获取的远端数据同时送入所述声卡播放缓冲区和所述远端数据缓冲区,并按照所述回音消除参数中对应的参数播放音频。
可选的,将远端数据送入所述声卡播放缓冲区,包括:
将预设音频播放音频帧时长的所述远端数据送入所述声卡播放缓冲区。
其中,每次从系统播放缓冲区获取指定时长的音频数据送入声卡播放缓冲区,如果系统播放缓冲区剩余音频数据时长大于指定时长,重复执行该过程。每次从系统播放缓冲区送入声卡播放缓冲区的音频数据大小需要足够大,以确保能填满操作系统驱动层级硬件声卡播放缓冲区,使得声音能够被声卡立即播放出来,最大程度缩减播放的远端数据到被麦克风采集成为近端数据的延时,及降低驱动层和操作系统层由于声音数据的多次缓存导致的延时不稳定性。示例的,对于Windows平台,音频播放模块每次送声卡播放缓冲区的音频数据时长大于等于50ms。
步骤340、从所述声卡采集的预设音频采集音频帧时长的所述近端数据送入所述近端数据缓冲区。
步骤351、从所述近端数据缓冲区获取前面一段与所述数据对齐延时修正时长相等的所述近端数据直接送编码器,经编码后传输到所述远端设备。
在本实施例中,延时修正参数通过近端数据和远端数据的延时大小上(x)、下(y)限分别除以10向下取整后两者加后除以2向下取整再乘以10来计算,即延时修正参数z=(x/10+y/10)/2*10。其中,向下取整可以保证延时修正参数为10ms的整数倍,方便后续进行数据对齐。示例的,不同采样率音频的延时修正参数为:8KHz近端数据和远端数据的延时约为100-105ms,对应延时修正参数为100ms;16KHz音频近端数据和远端数据的延时约为105-115ms,对应延时修正参数为100ms;32KHz音频近端数据和远端数据的延时约为90-100ms,对应延时修正参数为90ms;48KHz音频近端数据和远端数据的延时约90-100ms,对应90ms。
步骤352、每次从所述近端数据缓冲区获取与回音消除器要求的音频时长相等的所述近端数据,并从所述远端数据缓冲区获取相等时长的所述远端数据同时送回音消除器。
示例的,每次从近端数据缓冲区及远端数据缓冲区分别获取10ms时长音频数据,一起送回音消除器进行回音消除器。
步骤360、根据对齐后的所述远端数据和所述近端数据,对所述近端数据进行回音消除。
示例的,图3b、3c和3d分别是16KHz的远端数据波形图、近端数据波形图和近端数据进行回音消除后的波形图,图3e、3f和3g分别8KHz的远端数据波形图、近端数据波形图和近端数据进行回音消除后的波形图,图3h、3i和3j分别是32KHz的远端数据波形图、近端数据波形图和近端数据进行回音消除后的波形图。
本发明实施例,提供了获取远端数据和近端数据并分别送入远端数据缓冲区和近端数据缓冲区以及对远端数据和近端数据进行对齐的具体执行方法,获得更好的回音消除效果。
实施例四
图4为本发明实施例四提供的一种回音消除装置的结构示意图,该回音消除的装置,包括:参数预设模块410、缓冲区初始化模块420、远端数据送入模块430、近端数据送入模块440、数据对齐模块450和回音消除模块460。
参数预设模块410,用于按照预设参数设置回音消除参数;
缓冲区初始化模块420,用于初始化预设数据缓冲区,其中,所述预设数据缓冲区包括:近端数据缓冲区、远端数据缓冲区、声卡播放缓冲区和声卡采集缓冲区;
远端数据送入模块430,用于将从远端设备获取的远端数据同时送入所述声卡播放缓冲区和所述远端数据缓冲区,并按照所述回音消除参数中对应的参数播放音频;
近端数据送入模块440,用于将从声卡采集的近端数据送入所述近端数据缓冲区;
数据对齐模块450,用于将所述远端数据和所述近端数据对齐;
回音消除模块460,用于根据对齐后的所述远端数据和所述近端数据,对所述近端数据进行回音消除。
本发明实施例的技术方案,通过按照预设参数设置回音消除参数并对预设数据缓冲区进行初始化操作,解决了回音消除近端数据和远端数据延时不稳定的问题,实现了将回音消除近端数据和远端数据延时控制在很小的波动范围内,从而显著提升了回音消除效果。
可选的,需要按照预设参数设置的回音消除参数具体包括:
音频采集的采样率、采样声道数和采样精度,音频播放的采样率、采样声道数和采样精度,回音消除的采样率、采样声道数和采样精度,音频采集音频帧时长,音频播放音频帧时长,以及数据对齐延时修正参数;
其中,所述音频采集、音频播放、回音消除的采样率设为相同,所述音频采集、音频播放、回音消除的采样声道数设为相同,所述音频采集、音频播放、回音消除的采样率设为相同。
可选的,缓冲区初始化模块420具体用于:
当启动音频采集时,音频播放已启动;
或者,当启动音频播放时,音频采集已启动;
或者,当获取到用户操作指令时,初始化所述预设数据缓冲区。
可选的,缓冲区初始化模块420具体用于:
清空声卡播放缓冲区和声卡采集缓冲区;
清空远端数据缓冲区和近端数据缓冲区。
可选的,回音消除装置还包括:
采样参数获取模块,用于从远端设备获取采样参数;
可选的,远端数据送入模块430具体用于:
将接收到的采样参数与预设参数中的对应参数作比较;
如果采样参数与预设参数中的对应参数相同,将远端数据送入系统播放缓冲区;
如果采样参数与预设参数中的对应参数不同,将采用线性插值方法进行采样率转换后的远端数据送入系统播放缓冲区。
可选的,远端数据送入模块430具体用于:
将预设音频播放音频帧时长的所述远端数据送入所述声卡播放缓冲区。
可选的,近端数据送入模块440具体用于:
从所述声卡采集的预设音频采集音频帧时长的所述近端数据送入所述近端数据缓冲区。
可选的,数据对齐模块450具体用于:
从所述近端数据缓冲区获取前面一段与所述数据对齐延时修正时长相等的所述近端数据直接送编码器,经编码后传输到所述远端设备;
每次从所述近端数据缓冲区获取与回音消除器要求的音频时长相等的所述近端数据,并从所述远端数据缓冲区获取相等时长的所述远端数据同时送回音消除器。
可选的,在Windows平台上,参数预设模块410具体用于:
按照音频采集、音频播放、回音消除音频的采样率为16KHz或8KHz或32Khz,音频采样声道数为单声道,采样精度为16bit,回音延时修正参数为100ms,音频采集音频帧时长为10ms,音频播放音频帧时长为50ms设置所述回音消除参数。
本发明实施例所提供的回音消除装置可执行本发明任意实施例所提供的回音消除方法,具备执行方法相应的功能模块和有益效果。
实施例五
图5为本发明实施例五提供的一种设备的结构示意图,如图5所示,该设备包括处理器50、存储器51、麦克风52和扬声器53;设备中处理器50的数量可以是一个或多个,图5中以一个处理器50为例;设备中的处理器50、存储器51、麦克风52和扬声器53可以通过总线或其他方式连接,图5中以通过总线连接为例。
存储器51作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的一种回音消除方法对应的程序指令/模块(例如,回音消除装置中的参数预设模块410、缓冲区初始化模块420、远端数据送入模块430、近端数据送入模块440、数据对齐模块550和回音消除模块460)。处理器50通过运行存储在存储器51中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的回音消除方法。
存储器51可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器51可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器51可进一步包括相对于处理器50远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实施例六
本发明实施例六还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种回音消除方法,该方法包括:
按照预设参数设置回音消除参数;
初始化预设数据缓冲区,其中,所述预设数据缓冲区包括:远端数据缓冲区、近端数据缓冲区、声卡播放缓冲区和声卡采集缓冲区;
将从远端设备获取的远端数据同时送入所述声卡播放缓冲区和所述远端数据缓冲区,并按照所述回音消除参数中对应的参数播放音频;
将从声卡采集的近端数据送入所述近端数据缓冲区;
将所述远端数据和所述近端数据对齐;
根据对齐后的所述远端数据和所述近端数据,对所述近端数据进行回音消除。
当然,本发明实施例所提供的包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的回音消除方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述一种回音消除装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (12)

1.一种回音消除方法,其特征在于,包括:
按照预设参数设置回音消除参数;
初始化预设数据缓冲区,其中,所述预设数据缓冲区包括:远端数据缓冲区、近端数据缓冲区、声卡播放缓冲区和声卡采集缓冲区;
将从远端设备获取的远端数据同时送入所述声卡播放缓冲区和所述远端数据缓冲区,并按照所述回音消除参数中对应的参数播放音频;
将从声卡采集的近端数据送入所述近端数据缓冲区;
将所述远端数据和所述近端数据对齐;
根据对齐后的所述远端数据和所述近端数据,对所述近端数据进行回音消除。
2.根据权利要求1所述的回音消除方法,其特征在于,所述回音消除参数包括:
音频采集的采样率、采样声道数和采样精度,音频播放的采样率、采样声道数和采样精度,回音消除的采样率、采样声道数和采样精度,音频采集音频帧时长,音频播放音频帧时长,以及数据对齐延时修正参数;
其中,所述音频采集、音频播放、回音消除的采样率设为相同,所述音频采集、音频播放、回音消除的采样声道数设为相同,所述音频采集、音频播放、回音消除的采样率设为相同。
3.根据权利要求1所述的回音消除方法,其特征在于,所述初始化预设数据缓冲区包括:
当启动音频采集时,音频播放已启动;
或者,当启动音频播放时,音频采集已启动;
或者,当获取到用户操作指令时,初始化所述预设数据缓冲区。
4.根据权利要求3所述的回音消除方法,其特征在于,所述初始化预设数据缓冲区,包括:
清空所述声卡播放缓冲区和所述声卡采集缓冲区;
清空所述远端数据缓冲区和所述近端数据缓冲区。
5.根据权利要求2中所述的回音消除方法,其特征在于,在所述从远端设备获取远端数据之时,还包括:
从所述远端设备获取采样参数;
将所述远端数据同时送入所述声卡播放缓冲区和所述远端数据缓冲区,包括:
将接收到的采样参数与所述预设参数中的对应参数作比较;
如果所述采样参数与所述预设参数中的对应参数相同,将所述远端数据送入系统播放缓冲区;
如果所述采样参数与所述预设参数中的对应参数不同,将采用线性插值方法进行采样率转换后的所述远端数据送入所述系统播放缓冲区。
6.根据权利要求5所述的回音消除方法,其特征在于,将远端数据送入所述声卡播放缓冲区,包括:
将预设音频播放音频帧时长的所述远端数据送入所述声卡播放缓冲区。
7.根据权利要求6所述的回音消除方法,其特征在于将从声卡采集的近端数据送入所述近端数据缓冲区,包括:
从所述声卡采集的预设音频采集音频帧时长的所述近端数据送入所述近端数据缓冲区。
8.根据权利要求7所述的回音消除方法,其特征在于,将所述远端数据和所述近端数据对齐,包括:
从所述近端数据缓冲区获取前面一段与所述数据对齐延时修正时长相等的所述近端数据直接送编码器,经编码后传输到所述远端设备;
每次从所述近端数据缓冲区获取与回音消除器要求的音频时长相等的所述近端数据,并从所述远端数据缓冲区获取相等时长的所述远端数据同时送回音消除器。
9.根据权利要求2所述的回音消除方法,其特征在于,在Windows平台上,所述按照预设参数设置回音消除参数包括:
按照音频采集、音频播放、回音消除音频的采样率为16KHz或8KHz或32Khz,音频采样声道数为单声道,采样精度为16bit,回音延时修正参数为100ms,音频采集音频帧时长为10ms,音频播放音频帧时长为50ms设置所述回音消除参数。
10.一种回音消除装置,其特征在于,包括:
参数预设模块,用于按照预设参数设置回音消除参数;
缓冲区初始化模块,用于初始化预设数据缓冲区,其中,所述预设数据缓冲区包括:近端数据缓冲区、远端数据缓冲区、声卡播放缓冲区和声卡采集缓冲区;
远端数据送入模块,用于将从远端设备获取的远端数据同时送入所述声卡播放缓冲区和所述远端数据缓冲区,并按照所述回音消除参数中对应的参数播放音频;
近端数据送入模块,用于将从声卡采集的近端数据送入所述近端数据缓冲区;
数据对齐模块,用于将所述远端数据和所述近端数据对齐;
回音消除模块,用于根据对齐后的所述远端数据和所述近端数据,对所述近端数据进行回音消除。
11.一种计算机设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,麦克风,用于采集音频;扬声器,用于播放音频;其中,所述处理器执行所述程序时实现如权利要求1-9中任一所述的回音消除方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-9中任一所述的回音消除方法。
CN201910301046.XA 2019-04-15 2019-04-15 一种回音消除方法、装置、设备及存储介质 Active CN109979479B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910301046.XA CN109979479B (zh) 2019-04-15 2019-04-15 一种回音消除方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910301046.XA CN109979479B (zh) 2019-04-15 2019-04-15 一种回音消除方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN109979479A true CN109979479A (zh) 2019-07-05
CN109979479B CN109979479B (zh) 2021-11-23

Family

ID=67084686

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910301046.XA Active CN109979479B (zh) 2019-04-15 2019-04-15 一种回音消除方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN109979479B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110956974A (zh) * 2019-12-05 2020-04-03 浙江大华技术股份有限公司 回声消除方法及其相关装置
CN112071132A (zh) * 2020-09-03 2020-12-11 北京竞业达数码科技股份有限公司 音视频教学设备、智能教学系统
CN112233687A (zh) * 2020-12-10 2021-01-15 统信软件技术有限公司 一种音频降噪装置以及计算设备
CN112492112A (zh) * 2020-11-19 2021-03-12 睿云联(厦门)网络通讯技术有限公司 一种基于对讲系统的回音消除方法和装置
CN113409808A (zh) * 2021-06-18 2021-09-17 上海盈方微电子有限公司 一种回声消除时延估算方法及回声消除方法
CN113542977A (zh) * 2021-07-15 2021-10-22 深圳软牛科技有限公司 合成声卡和麦克风声音的方法、装置和相关组件
CN113608714A (zh) * 2021-06-23 2021-11-05 杭州华橙软件技术有限公司 一种回音消除方法、电子设备和计算机可读存储介质
CN113823306A (zh) * 2021-08-17 2021-12-21 北京佳讯飞鸿电气股份有限公司 语音的回声消除方法、装置、设备及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0746133A2 (en) * 1995-05-31 1996-12-04 AT&T Corp. Multistage echo canceller including time variation compensation
CN103096024A (zh) * 2011-10-27 2013-05-08 宝利通公司 作为视频会议外围设备的便携式设备
CN103200385A (zh) * 2011-10-27 2013-07-10 宝利通公司 使用超声信标补偿设备之间的不同音频时钟
CN103685795A (zh) * 2013-12-13 2014-03-26 广州华多网络科技有限公司 网络语音通信中的数据对齐方法和系统
CN104219403A (zh) * 2013-06-03 2014-12-17 腾讯科技(深圳)有限公司 一种消除回声的方法及装置
CN104822001A (zh) * 2015-04-23 2015-08-05 腾讯科技(深圳)有限公司 回声消除数据同步控制方法和装置
CN106506872A (zh) * 2016-11-02 2017-03-15 腾讯科技(深圳)有限公司 通话状态检测方法及装置
CN107635082A (zh) * 2016-07-18 2018-01-26 深圳市有信网络技术有限公司 一种双端发声端检测系统
CN109361828A (zh) * 2018-12-17 2019-02-19 北京达佳互联信息技术有限公司 一种回声消除方法、装置、电子设备及存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0746133A2 (en) * 1995-05-31 1996-12-04 AT&T Corp. Multistage echo canceller including time variation compensation
CN103096024A (zh) * 2011-10-27 2013-05-08 宝利通公司 作为视频会议外围设备的便携式设备
CN103200385A (zh) * 2011-10-27 2013-07-10 宝利通公司 使用超声信标补偿设备之间的不同音频时钟
CN104219403A (zh) * 2013-06-03 2014-12-17 腾讯科技(深圳)有限公司 一种消除回声的方法及装置
CN103685795A (zh) * 2013-12-13 2014-03-26 广州华多网络科技有限公司 网络语音通信中的数据对齐方法和系统
CN104822001A (zh) * 2015-04-23 2015-08-05 腾讯科技(深圳)有限公司 回声消除数据同步控制方法和装置
CN107635082A (zh) * 2016-07-18 2018-01-26 深圳市有信网络技术有限公司 一种双端发声端检测系统
CN106506872A (zh) * 2016-11-02 2017-03-15 腾讯科技(深圳)有限公司 通话状态检测方法及装置
CN109361828A (zh) * 2018-12-17 2019-02-19 北京达佳互联信息技术有限公司 一种回声消除方法、装置、电子设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王宇: "《计算机应用基础》", 30 June 2017, 电子科技大学出版 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110956974A (zh) * 2019-12-05 2020-04-03 浙江大华技术股份有限公司 回声消除方法及其相关装置
CN112071132A (zh) * 2020-09-03 2020-12-11 北京竞业达数码科技股份有限公司 音视频教学设备、智能教学系统
CN112071132B (zh) * 2020-09-03 2021-08-17 北京竞业达数码科技股份有限公司 音视频教学设备、智能教学系统
CN112492112A (zh) * 2020-11-19 2021-03-12 睿云联(厦门)网络通讯技术有限公司 一种基于对讲系统的回音消除方法和装置
CN112492112B (zh) * 2020-11-19 2022-03-18 睿云联(厦门)网络通讯技术有限公司 一种基于对讲系统的回音消除方法和装置
CN112233687A (zh) * 2020-12-10 2021-01-15 统信软件技术有限公司 一种音频降噪装置以及计算设备
CN113409808A (zh) * 2021-06-18 2021-09-17 上海盈方微电子有限公司 一种回声消除时延估算方法及回声消除方法
CN113409808B (zh) * 2021-06-18 2024-05-03 上海盈方微电子有限公司 一种回声消除时延估算方法及回声消除方法
CN113608714A (zh) * 2021-06-23 2021-11-05 杭州华橙软件技术有限公司 一种回音消除方法、电子设备和计算机可读存储介质
CN113542977A (zh) * 2021-07-15 2021-10-22 深圳软牛科技有限公司 合成声卡和麦克风声音的方法、装置和相关组件
CN113823306A (zh) * 2021-08-17 2021-12-21 北京佳讯飞鸿电气股份有限公司 语音的回声消除方法、装置、设备及存储介质
CN113823306B (zh) * 2021-08-17 2024-02-02 北京佳讯飞鸿电气股份有限公司 语音的回声消除方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN109979479B (zh) 2021-11-23

Similar Documents

Publication Publication Date Title
CN109979479A (zh) 一种回音消除方法、装置、设备及存储介质
CN105979197B (zh) 基于啸叫音自动识别的远程会议控制方法及装置
DE60034484T2 (de) Verfahren und vorrichtung in einem kommunikationssystem
CN104269182B (zh) 一种音频同步播放的方法、装置和系统
US7830862B2 (en) System and method for modifying speech playout to compensate for transmission delay jitter in a voice over internet protocol (VoIP) network
CN109977218B (zh) 一种应用于对话场景的自动应答系统和方法
US8571039B2 (en) Encoding and decoding speech signals
WO2016094598A1 (en) Translation control
US20080107281A1 (en) Acoustic echo canceller system
CN101060550B (zh) 语音通信终端的杂音去除装置
CN105141730B (zh) 音量控制方法及装置
CN109040501A (zh) 一种改善voip通话质量的回声消除方法
KR20020086671A (ko) 비대칭 다중 채널 필터
CN107592430B (zh) 一种回声消除的方法及终端设备
CN105142002B (zh) 音/视频直播方法、装置及控制方法、装置
CN109451329B (zh) 混音处理方法及装置
KR20040005965A (ko) 오디오 신호 처리 장치 및 방법
CN109120947A (zh) 一种直播间的语音私聊方法及客户端
CN109104616A (zh) 一种直播间的语音连麦方法及客户端
JPH08153369A (ja) デジタル圧縮された録音機
CN109361527A (zh) 语音会议记录方法及系统
CN109087662A (zh) 一种回声消除方法及装置
CN110060696A (zh) 混音方法及装置、终端及可读存储介质
US8553520B2 (en) System and method for echo suppression in web browser-based communication
CN115620736A (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