CN114449116A - 回声消除的延时获取方法、装置、计算机设备及存储介质 - Google Patents
回声消除的延时获取方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN114449116A CN114449116A CN202210143169.7A CN202210143169A CN114449116A CN 114449116 A CN114449116 A CN 114449116A CN 202210143169 A CN202210143169 A CN 202210143169A CN 114449116 A CN114449116 A CN 114449116A
- Authority
- CN
- China
- Prior art keywords
- value
- delay estimation
- delay
- far
- microphone
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 169
- 238000011156 evaluation Methods 0.000 claims abstract description 41
- 238000004364 calculation method Methods 0.000 claims description 36
- 238000000691 measurement method Methods 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 12
- 230000005236 sound signal Effects 0.000 claims description 8
- 230000005540 biological transmission Effects 0.000 claims description 7
- 238000005259 measurement Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 10
- 230000006854 communication Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 6
- 238000001228 spectrum Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001364 causal effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M9/00—Arrangements for interconnection not involving centralised switching
- H04M9/08—Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B3/00—Line transmission systems
- H04B3/02—Details
- H04B3/20—Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M9/00—Arrangements for interconnection not involving centralised switching
- H04M9/08—Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic
- H04M9/085—Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic using digital techniques
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Circuit For Audible Band Transducer (AREA)
- Telephone Function (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
Abstract
本申请涉及网络直播技术领域,提出一种回声消除的延时获取方法、装置、计算机设备及存储介质,该方法包括:获取远端语音数据以及近端麦克风数据;获得每一帧所述远端语音信号与相应帧所述麦克风信号之间的实际延时值;获得每个延时估计测算方法对应的每一帧所述远端语音信号与相应帧所述麦克风信号之间的延时估计值;根据每一帧所述延时估计值以及对应的所述实际延时值,获得每个延时估计测算方法对应的延时估计值评价参数;将满足预设条件的所述延时估计值评价参数对应的延时估计测算方法作为目标延时估计测算方法,根据所述目标延时估计测算方法对所述远端语音数据与所述麦克风数据之间的延时进行测算,从而提高了延时估计的速度和准确性。
Description
技术领域
本申请实施例涉及语音通信及网络直播技术领域,尤其涉及一种回声消除的延时获取方法、装置、计算机设备及存储介质。
背景技术
在语音通信系统中,远端设备的用户发出的语音信号通过网络传输到近端设备,所述近端设备接收到所述语音信号后,通过所述近端设备的扬声器播放所述语音信号,播放的所述语音信号经过所述近端设备的扬声器与麦克风之间的声学回路后被所述近端设备的麦克风重新采集,所述近端设备将重新采集的语音信号通过网络传输至所述远端设备播放,此时,所述远端设备的用户会听到自己的回声。因此,在远端设备与近端设备的通话过程中,需要进行回声消除处理,而回声消除的前提是远端设备的语音信号和近端设备的麦克风信号的时延对齐,因而需要一个延时估计测算方法对远端设备的语音信号和近端设备的麦克风信号之间的时延进行测算。
然而,延时估计测算方法有很多,不同的延时估计测算方法性能表现有差异,使得实际选择的延时估计测算方法测算的延时估计值不准确、耗时长,导致回声消除效果不佳,影响用户语音通话的体验。
发明内容
本申请实施例提供了一种回声消除的延时获取方法、装置、计算机设备及存储介质,可以解决延时估计测算方法测算的延时不准确、且耗时长的技术问题,该技术方案如下:
第一方面,本申请实施例提供了一种回声消除的延时获取方法,包括步骤:
获取远端语音数据以及近端麦克风数据;其中,所述远端语音数据包括若干帧远端语音信号,所述近端麦克风数据包括若干帧与所述远端语音信号一一对应的麦克风信号,所述麦克风信号包括回声信号,所述回声信号为由所述远端语音信号经近端扬声器播放后被近端麦克风采集的声音信号;
根据每一帧所述远端语音信号与对应的所述麦克风信号,获得每一帧所述远端语音信号与相应帧所述麦克风信号之间的实际延时值;
根据待评估的多个延时估计测算方法,获得每个所述延时估计测算方法对应的每一帧所述远端语音信号与相应帧所述麦克风信号之间的延时估计值;
根据每一帧所述延时估计值以及对应的所述实际延时值,获得每个延时估计测算方法对应的延时估计值评价参数;
将满足预设条件的所述延时估计值评价参数对应的延时估计测算方法作为目标延时估计测算方法,根据所述目标延时估计测算方法对所述远端语音数据与所述麦克风数据之间的延时进行测算。
第二方面,本申请实施例提供了一种回声消除的延时获取装置,包括:
数据获取模块,用于获取远端语音数据以及近端麦克风数据;其中,所述远端语音数据包括若干帧远端语音信号,所述近端麦克风数据包括若干帧与所述远端语音信号一一对应的麦克风信号,所述麦克风信号包括回声信号,所述回声信号为由所述远端语音信号经近端扬声器播放后被近端麦克风采集的声音信号;
实际延时值获得模块,用于根据每一帧所述远端语音信号与对应的所述麦克风信号,获得每一帧所述远端语音信号与相应帧所述麦克风信号之间的实际延时值;
延时估计值获得模块,用于根据待评估的多个延时估计测算方法,获得每个所述延时估计测算方法对应的每一帧所述远端语音信号与相应帧所述麦克风信号之间的延时估计值;
评价参数获得模块,用于根据每一帧所述延时估计值以及对应的所述实际延时值,获得每个延时估计测算方法对应的延时估计值评价参数;
延时测算模块,用于将满足预设条件的所述延时估计值评价参数对应的延时估计测算方法作为目标延时估计测算方法,根据所述目标延时估计测算方法对所述远端语音数据与所述麦克风数据之间的延时进行测算。
第三方面,本申请实施例提供了一种计算机设备,处理器、存储器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现如第一方面方法的步骤。
第四方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现如第一方面方法的步骤。
本申请实施例获取远端语音数据以及近端麦克风数据;其中,所述远端语音数据包括若干帧远端语音信号,所述近端麦克风数据包括若干帧与所述远端语音信号一一对应的麦克风信号,所述麦克风信号包括回声信号,所述回声信号为由所述远端语音信号经近端扬声器播放后被近端麦克风采集的声音信号;根据每一帧所述远端语音信号与对应的所述麦克风信号,获得每一帧所述远端语音信号与相应帧所述麦克风信号之间的实际延时值;根据待评估的多个延时估计测算方法,获得每个所述延时估计测算方法对应的每一帧所述远端语音信号与相应帧所述麦克风信号之间的延时估计值;根据每一帧所述延时估计值以及对应的所述实际延时值,获得每个延时估计测算方法对应的延时估计值评价参数;将满足预设条件的所述延时估计值评价参数对应的延时估计测算方法作为目标延时估计测算方法,根据所述目标延时估计测算方法对所述远端语音数据与所述麦克风数据之间的延时进行测算,从而根据延时估计值评价参数从待评估的多个延时估计测算方法获取目标延时估计测算方法,根据目标延时估计测算方法测算远端语音数据与近端麦克风数据之间的延时,进而提高了延时估计的速度和准确性。
为了更好地理解和实施,下面结合附图详细说明本申请的技术方案。
附图说明
图1为本申请实施例提供的回声消除的延时获取方法的应用场景示意图;
图2为本申请实施例提供的回声消除系统的工作原理图;
图3为本申请实施例提供的回声消除的延时获取方法的流程示意图;
图4为本申请实施例提供的回声消除的延时获取方法中S41~S42的流程示意图;
图5为本申请实施例提供的回声消除的延时获取方法中S421~S424的流程示意图;
图6为本申请实施例提供的回声消除的延时获取方法中S43~S45的流程示意图;
图7为本申请实施例提供的回声消除的延时获取方法中S46~S48的流程示意图;
图8为本申请实施例提供的回声消除的延时获取方法中S401~S402的流程示意图;
图9为本申请实施例提供的回声消除的延时获取装置的结构示意图;
图10为本申请实施例提供的计算机设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”/“若”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请的回声消除的延时获取方法可以应用于语音通信系统中,例如视频会议、线上教育、社交聊天、以及直播连麦等,下面以直播连麦为例说明本申请的具体应用场景。
请参阅图1,图1为本申请实施例提供的回声消除的延时获取方法的应用场景示意图,该应用场景包括本申请实施例提供的主播客户端101、服务器102和观众客户端103,主播客户端101与观众客户端103通过服务器102进行交互。
其中,主播客户端101是指发送网络直播视频的一端,通常来说是网络直播中主播(即,直播主播用户)所采用的客户端。
观众客户端103是指接收和观看网络直播视频的一端,通常来说是网络直播中观看视频的观众(即,直播观众用户)所采用的客户端。
主播客户端101和观众客户端103所指向的硬件,本质上是指计算机设备,具体地,如图1所示,其可以是智能手机、智能交互平板和个人计算机等类型的计算机设备。主播客户端101和观众客户端103均可以通过公知的网络接入方式接入互联网,与服务器102建立数据通信链路。
服务器102作为一个业务服务器,其可以负责进一步连接起相关音频数据服务器、视频流服务器以及其他提供相关支持的服务器等,以此构成逻辑上相关联的服务机群,来为相关的终端设备,例如图1中所示的主播客户端101和观众客户端103提供服务。
本申请实施例中,主播客户端101与观众客户端103可以加入同一个直播间(即直播频道),上述的直播间是指依靠互联网技术实现的一种聊天室,通常具备音视频播控功能。主播用户通过主播客户端101在直播间内进行直播,观众客户端103的观众可以登录服务器102进入直播间观看上直播。
在直播间内,主播与观众之间可通过语音、视频、文字等公知的线上交互方式来实现互动,一般是主播用户以音视频流的形式为观众表演节目,并且在互动过程中还可产生经济交易行为。当然,直播间的应用形态并不局限于在线娱乐,也可推广到其他相关场景中,例如:用户配对互动场景、视频会议场景、产品推介销售场景以及其他任何需要类似互动的场景中。
具体地,观众观看直播的过程如下:观众可以点击访问安装在观众客户端103上的直播应用程序(例如YY),并选择进入任意一个直播间,触发观众客户端103为该观众加载直播间界面,该直播间界面内包括若干交互组件,通过加载这些交互组件可以使观众在直播间内观看直播,并进行多种线上互动。
网络主播在与其他主播进行连麦时,直播端A将网络主播a的语音数据通过网络传输至直播端B,直播端B接收到所述语音数据,所述直播端B的扬声器播放所述语音数据,播放的所述语音数据经过所述直播端B的扬声器与麦克风之间的声学回路后被所述直播端B的麦克风重新采集,所述直播端B将重新采集的语音数据通过网络传输至所述直播端A播放,此时,所述直播端A的网络主播a会听到自己的回声。为此,在所述直播端B将重新采集的语音数据通过网络传输至所述直播端A播放之前,需要设置回声消除系统,以消除重新采集的语音数据中的回声。
请参阅图2,图2为语音通信软件中回声消除系统的工作原理示意图。所述回声消除系统100包括时延估计模块101以及回声消除模块102,所述时延估计模块101获取网络传输过程中网络主播a的语音数据,即采集远端设备的远端语音数据,以及获取直播端B重新采集的语音数据,即采集近端设备的麦克风数据。通过所述时延估计模块101内置的延时估计测算方法对所述远端设备的远端语音数据与所述近端设备的麦克风数据之间的时延进行测算,获得延时估计值,并根据所述延时估计值将远端设备的远端语音数据和近端设备的麦克风数据进行时延对齐。将对齐后的远端语音数据和麦克风数据输入至所述回声消除模块102进行回声消除,再将消除了回声的麦克风数据发送出去。
然而,延时估计测算方法有很多,不同的延时估计测算方法性能表现有差异,使得实际选择的延时估计测算方法对应的延时估计值不准确、耗时长,导致回声消除效果不佳,影响用户语音通话的体验。
为此,本申请实施例提供了一种回声消除的延时获取方法,可应用于主播客户端或服务器。
请参阅图3,图3为本申请第一实施例提供的回声消除的延时获取方法的流程示意图,该方法包括如下步骤:
S10:获取远端语音数据以及近端麦克风数据;其中,所述远端语音数据包括若干帧远端语音信号,所述近端麦克风数据包括若干帧与所述远端语音信号一一对应的麦克风信号,所述麦克风信号包括回声信号,所述回声信号为由所述远端语音信号经近端扬声器播放后被近端麦克风采集的声音信号。
在本申请实施例中,正在说话的用户所使用的终端为近端,接收正在说话的用户的语音的用户所使用的终端为远端。所述远端的用户在说话时产生的语音数据为所述远端语音数据,所述近端麦克风数据包括所述近端的用户在说话时产生的语音数据以及所述远端语音数据经过近端扬声器播放、以及经过近端扬声器与近端麦克风之间的声学回路后被近端麦克风采集的回声数据。
在所述近端和所述远端的语音通话过程中,可通过远端麦克风采集所述远端语音数据,近端麦克风采集所述近端麦克风数据。具体地,采集所述远端的若干帧远端语音信号,以及若干帧与所述远端语音信号一一对应的所述近端麦克风信号。
S20:根据每一帧所述远端语音信号与对应的所述麦克风信号,获得每一帧所述远端语音信号与相应帧所述麦克风信号之间的实际延时值。
在本申请实施例中,计算每一帧所述远端语音信号的开始时刻与对应的所述麦克风信号的开始时刻的差值,所述差值即为每一帧所述远端语音信号与相应帧所述麦克风信号之间的实际延时值。
S30:根据待评估的多个延时估计测算方法,获得每个所述延时估计测算方法对应的每一帧所述远端语音信号与相应帧所述麦克风信号之间的延时估计值。
在本申请实施例中,延时估计测算方法用于对远端语音信号与麦克风信号之间的延时进行估计,所述延时估计测算方法可以有多个,例如基于频域的相关峰延时估计测算方法和基于时域的相关峰延时估计测算方法。其中,基于频域的相关峰延时估计测算方法的工作原理为:将远端语音信号和麦克风信号按帧转换成频谱,远端语音信号对应的频谱存储在buffer内,计算当前帧的麦克风信号对应的频谱和buffer内的所有远端语音信号对应的频谱的相关性,求出相关性最大的远端语音信号帧位置,所述远端语音信号帧位置和当前帧麦克风信号位置的距离即为所述远端语音信号与所述麦克风信号之间的延时估计值。基于时域的相关峰延时估计测算方法的工作原理为:麦克风信号为远端语音信号和时域系数h的卷积,根据自适应滤波方法得到所述时域滤波系数h,所述时域滤波系数h的峰值位置即为所述远端语音信号与所述麦克风信号之间的延时估计值。利用待评估的多个延时估计测算方法对每一帧所述远端语音信号与所述麦克风信号之间的延时进行测算,可以获得每个所述延时估计测算方法对应的每一帧所述远端语音信号与所述麦克风信号之间的延时估计值。
S40:根据每一帧所述延时估计值以及对应的所述实际延时值,获得每个延时估计测算方法对应的延时估计值评价参数。
在本申请实施例中,延时估计值评价参数用于对延时估计测算方法进行性能评估,包括评估延时估计测算方法的准确性、稳定性以及收敛性,对应的延时估计值评价参数包括准确性参数、稳定性参数以及收敛时间。
S50:将满足预设条件的所述延时估计值评价参数对应的延时估计测算方法作为目标延时估计测算方法,根据所述目标延时估计测算方法对所述远端语音数据与所述麦克风数据之间的延时进行测算。
在本申请实施例中,在获得每个延时估计测算方法对应的延时估计值评价参数之后,判断延时估计值评价参数是否满足预设条件,将满足预设条件的所述延时估计值评价参数对应的延时估计测算方法确定为目标延时估计测算方法,并根据所述目标延时估计测算方法对所述远端语音数据与所述近端麦克风数据之间的延时进行测算。
本申请实施例获取远端语音数据以及近端麦克风数据;其中,所述远端语音数据包括若干帧远端语音信号,所述近端麦克风数据包括若干帧与所述远端语音信号一一对应的麦克风信号,所述麦克风信号包括回声信号,所述回声信号为由所述远端语音信号经近端扬声器播放后被近端麦克风采集的声音信号;根据每一帧所述远端语音信号与对应的所述麦克风信号,获得每一帧所述远端语音信号与相应帧所述麦克风信号之间的实际延时值;根据待评估的多个延时估计测算方法,获得每个所述延时估计测算方法对应的每一帧所述远端语音信号与相应帧所述麦克风信号之间的延时估计值;根据每一帧所述延时估计值以及对应的所述实际延时值,获得每个延时估计测算方法对应的延时估计值评价参数;将满足预设条件的所述延时估计值评价参数对应的延时估计测算方法作为目标延时估计测算方法,根据所述目标延时估计测算方法对所述远端语音数据与所述麦克风数据之间的延时进行测算,从而根据延时估计值评价参数从待评估的多个延时估计测算方法获取目标延时估计测算方法,根据目标延时估计测算方法测算远端语音数据与近端麦克风数据之间的延时,进而提高了延时估计的速度和准确性。
在一个可选的实施例中,所述延时估计值评价参数包括准确性参数。请参阅图4,步骤S40包括步骤S41~S42,具体如下:
S41:获取每一帧所述远端语音信号的帧长、每一帧所述实际延时值与二倍所述帧长的第一差值、每一帧所述实际延时值与预设阈值的第二差值;
S42:根据每一帧所述实际延时值、所述第一差值和所述第二差值,划分若干个延时估计区间,对每个所述延时估计区间预设对应的准确值,获得预设的准确值梯度。
S43:遍历每个所述延时估计测算方法的每一帧所述延时估计值,根据所述延时估计值以及预设的所述准确值梯度,获得每个延时估计测算方法对应的准确性参数。
当延时估计值大于实际延时值时,根据所述延时估计值将远端语音信号与麦克风信号对齐,会导致对齐后的远端语音信号晚于麦克风信号,从而使得回声消除处理非因果,此时,回声消除处理无法进行,因此所述延时估计值是不准确的。
当延时估计值小于实际延时值时,但所述延时估计值与所述实际延时值的偏差在一定范围内,根据所述延时估计值将远端语音信号与麦克风信号对齐,对齐后的远端语音信号早于麦克风信号,因为回声消除处理中滤波器阶数足够,可以兼容一定时延偏差的未对齐远端语音信号,所述延时估计值可视为准确。综上所述,可将延时估计测算方法的准确性定义为:
Act_delay-Th offset≤Est delay≤Act delay其中,Est_delay是延时估计值,Act_delay是实际延时值,Th_offset是预设阈值。
在本申请实施例中,获取每一帧所述远端语音信号的帧长TF、每一帧所述实际延时值与二倍所述帧长的第一差值Act_delay-2*TF、每一帧所述实际延时值与预设阈值的第二差值Act_delay-Th_offset,根据每一帧所述实际延时值Act_delay、所述第一差值Act_delay-2*TF和所述第二差值Act_delay-Th_offset,划分若干个延时估计区间,对每个所述延时估计区间预设对应的准确值,获得预设的准确值梯度。将每个所述延时估计测算方法的每一帧所述延时估计值Est_delay,分别与所述第一差值Act_delay-2*TF、所述第二差值Act_delay-Th_offset、以及每一帧所述实际延时值Act_delay进行比较,例如,将小于所述第一差值且大于所述第二差值划分为延时估计区间A,并对所述延时估计区间A预设对应的准确值a,若某一帧延时估计值位于所述延时估计区间A内,则所述某一帧延时估计值对应的准确值为a。结合各个延时估计区间以及预设的准确值梯度,获得每个延时估计测算方法对应的准确性参数。从而评估每个延时估计测算方法的准确性。
在一个可选的实施例中,所述准确值梯度包括第一准确值、第二准确值和第三准确值,所述第一准确值小于所述第二准确值,所述第二准确值小于所述第三准确值。请参阅图5,步骤S42包括步骤S421~S424,具体如下:
S421:遍历每个所述延时估计测算方法的每一帧所述延时估计值,若当前帧所述延时估计值大于对应的所述实际延时值,或者当前帧所述延时估计值小于所述第二差值,将所述第一准确值作为所述当前帧延时估计值的准确值;
S422:若当前帧所述延时估计值大于或等于所述第二差值,但小于所述第一差值,将所述第二准确值作为所述当前帧延时估计值的准确值;
S423:若当前帧所述延时估计值大于或等于所述第一差值,但小于所述实际延时值,将所述第三准确值作为所述当前帧延时估计值的准确值;
S424:根据每个所述延时估计测算方法的每一帧所述延时估计值的所述准确值,获得每个延时估计测算方法对应的准确性参数。
在本申请实施例中,遍历每个所述延时估计测算方法的每一帧所述延时估计值,并根据以下公式获得当前帧的延时估计值的准确值,具体为:
其中,ratio1为当前帧的延时估计值的准确值,0为所述第一准确值,0.5为所述第二准确值,1为所述第三准确值。
在获得每个所述延时估计测算方法的每一帧的延时估计值的准确值之后,将每个所述延时估计测算方法的所有帧的延时估计值的准确值求平均,平均结果即为每个延时估计测算方法对应的准确性参数,从而评估每个延时估计测算方法的准确性。
在一个可选的实施例中,请参阅图6,步骤S40包括步骤S43~S45,具体如下:
S43:遍历每个所述延时估计测算方法的每一帧延时估计值的所述准确值,若当前帧延时估计值的所述准确值为第二准确值或第三准确值,根据当前帧所述延时估计值和对应的所述实际延时值,计算当前帧延时估计值的所述准确值的权重;
S44:利用所述权重对当前帧延时估计值的所述准确值进行加权,将当前帧延时估计值的准确值更新为加权后的准确值;
S45:根据更新后的每个所述延时估计测算方法的每一帧延时估计值的所述准确值,获得每个延时估计测算方法对应的准确性参数。
在本申请实施例中,可能存在多帧延时估计值都不相同,但多帧所述延时估计值的准确值均相同的情况。例如,第一帧的延时估计值为16ms,第二帧的延时估计值为17ms,所述第一帧和所述第二帧的实际延时估计值均为18ms,每一帧远端语音信号的帧长TF为1ms,则所述第一帧和所述第二帧的延时估计值的准确值均为1。然而,第二帧的延时估计值与实际延时值的偏差更小,相应地,所述第二帧的延时估计值的准确值比所述第一帧的延时估计值的准确值要大。为此,计算当前帧的延时估计值的所述准确值的权重,利用所述权重对当前帧的延时估计值的所述准确值进行加权,将加权后的准确值更新为当前帧的延时估计值的准确值。具体地,根据以下公式计算当前帧的延时估计值的所述准确值的权重,具体为:
extraRatio2=max(min(extraRatio1,1),0)
ratio2=ratio1*extraRatio22
其中,extraRatio1为当前帧的延时估计值的所述准确值的初始权重,extraRatio2为当前帧的延时估计值的所述准确值的权重,ratio2为更新后的每一帧延时估计值的所述准确值。
将更新后的每个所述延时估计测算方法的所有帧延时估计值的所述准确值求平均,平均结果作为每个延时估计测算方法对应的准确性参数,提高了计算准确性参数的精度。
在一个可选的实施例中,请参阅图7,步骤S40包括步骤S46~S48,具体如下:
S46:获取所述麦克风数据中第一帧麦克风信号的第一开始时刻;
S47:若若干个连续帧所述远端语音信号与相应帧所述麦克风信号之间的延时估计值的准确值为第二准确值或第三准确值,获取所述若干个连续帧的下一帧麦克风信号的第二开始时刻;
S48:根据所述第一开始时刻和所述第二开始时刻,获得每个延时估计测算方法对应的收敛时间。
在本申请实施例中,以所述远端语音数据包括10帧远端语音信号,若干个连续帧为4个连续帧,对应地,所述麦克风数据包括与10帧所述远端语音信号一一对应的麦克风信号为例。获取所述麦克风数据中第一帧麦克风信号的第一开始时刻t1,若一个延时估计测算方法下第3、4、5、6帧连续4帧的延时估计值的准确值为第二准确值或第三准确值,则获取第7帧麦克风信号的第二开始时刻t2,将所述第二开始时刻t2和所述第一开始时刻t1的差值t2-t1,作为所述延时估计测算方法对应的收敛时间,从而评估延时估计测算方法的收敛性。
在一个可选的实施例中,请参阅图8,步骤S40包括步骤S401~S402,具体如下:
S401:若若干个连续帧所述远端语音信号与相应帧所述麦克风信号之间的延时估计值的准确值为第二准确值或第三准确值,从所述若干个连续帧的下一帧麦克风信号开始,根据相邻各帧所述远端语音信号与相应帧所述麦克风信号之间的所述延时估计值,获得每个延时估计测算方法对应的抖动参数;
S402:根据所述抖动参数和每一帧所述远端语音信号的帧长,获得每个延时估计测算方法对应的稳定性参数。
在本申请实施例中,根据如下公式每个延时估计测算方法对应的抖动参数,具体为:
其中,Est_delay(n)为第n帧所述延时估计值,Est_delay(n-1)为第n帧的上一帧所述延时估计值,所述第n帧为所述若干个连续帧的下一帧,N为所述若干个连续帧的下一帧到所述麦克风数据中最后一帧之间的帧数,X为所述抖动参数。
根据如下公式计算每个延时估计测算方法对应的稳定性参数,具体为:
其中,ratio3为所述稳定性差数。当抖动剧烈时,即X>TF/8,相应的ratio3=0,延时估计测算方法稳定性差;当抖动情况越少,X≤TF/8,相应的ratio3变大,延时估计测算方法的稳定性越好。
在一个可选的实施例中,所述延时估计值评价参数包括综合评分参数,步骤S40包括步骤S403,具体如下:
S403:将每个延时估计测算方法对应的准确性参数与每个延时估计测算方法对应的稳定性参数的乘积结果作为每个延时估计测算方法对应的综合评分参数。
在本申请实施例中,可以将延时估计测算方法对应的准确性参数ratio2与延时估计测算方法对应的稳定性参数ratio3的乘积结果作为延时估计测算方法对应的综合评分参数,具体为:
Ratio=ratio2*ratio3
其中,Ratio为延时估计测算方法对应的综合评分参数,Ratio越接近1,则延时估计测算方法的稳定性和准确性综合性能越好。
在一个可选的实施例中,步骤S50包括步骤S51,具体如下:
S51:比较每个延时估计测算方法对应的综合评分参数以及收敛时间,将所述综合评分参数最高或者所述收敛时间最小的延时估计测算方法作为目标延时估计测算方法。
在本申请实施例中,每个延时估计测算方法都对应有一组综合评分参数以及收敛时间,将所述综合评分参数最高或者所述收敛时间最小对应的延时估计测算方法作为目标延时估计测算方法,并根据所述目标延时估计测算方法对所述远端语音数据与所述近端麦克风数据之间的延时进行测算,从而提高延时估计值的精度。
在一个可选的实施例中,通过实测数据采集或计算机虚拟仿真,获得所述远端语音数据和所述近端麦克风数据。
远端语音信号以及近端麦克风信号的采集由两个异步采集播放线程执行,两个异步采集播放线程被其他应用的线程挤占运算资源时,会出现采集卡顿问题,造成两个异步采集播放线程的时序不同步,引发延时估计测算方法测算延时估计值不准确,从而回声消除处理无法正常消除回声。另外,远端语音信号以及近端麦克风信号之间的实际延时值可能在一段时间后会发生变化,需要延时估计测算方法及时输出与变化后的实际延时值接近的延时估计值,否则回声消除处理无法正常消除回声。由于上述情形是概率性发生的,不容易通过人工采集的方式获得测试数据,但问题发生之后会引起延时估计测算方法的延时估计不准确。因此,可以通过计算机虚拟仿真的方法仿真一些实际存在,但不容易人工复现问题的情形,同时也减少了人工采集数据的工作量。
在一个可选的实施例中,步骤S10包括步骤S101~S104,具体如下:
S101:远端麦克风实时采集远端语音数据,并通过第一线程将所述远端语音数据发送至第一缓存队列;近端麦克风实时采集近端麦克风数据,并通过第二线程将所述近端麦克风数据发送至第二缓存队列;从所述第一缓存队列获取远端语音数据,从所述第二缓存队列获取近端麦克风数据;或者,
S102:远端麦克风实时采集远端语音数据,近端麦克风实时采集近端麦克风数据,调整所述第一线程的第一数据读写周期和所述第二线程的第二数据读写周期,根据所述第一数据读写周期将所述远端语音数据发送至第一缓存队列,根据所述第二数据读写周期,将所述近端麦克风数据发送至第二缓存队列;从所述第一缓存队列获取远端语音数据,从所述第二缓存队列获取近端麦克风数据;或者,
S103:远端麦克风实时采集远端语音数据,近端麦克风采集近端麦克风数据;其中,所述近端麦克风数据包括回声数据,所述回声数据为由所述远端语音数据被近端扬声器播放后,经声学回路被近端麦克风采集的声音数据,通过计算机虚拟仿真模拟近端扬声器和近端麦克风之间的空间传输获得所述声学回路;通过第一线程将所述远端语音数据发送至第一缓存队列,通过第二线程将所述近端麦克风数据发送至第二缓存队列;从所述第一缓存队列获取远端语音数据,从所述第二缓存队列获取近端麦克风数据;或者,
S104:远端麦克风实时采集远端语音数据,近端麦克风实时采集近端麦克风数据;其中,所述近端麦克风数据包括回声数据,所述回声数据为由所述远端语音数据被近端扬声器播放后,经声学回路被近端麦克风采集的声音数据,通过计算机虚拟仿真模拟近端扬声器和近端麦克风之间的空间传输获得所述声学回路;调整所述第一线程的第一数据读写周期和所述第二线程的第二数据读写周期,根据所述第一数据读写周期将所述远端语音数据发送至第一缓存队列,根据所述第二数据读写周期,将所述近端麦克风数据发送至第二缓存队列;从所述第一缓存队列获取远端语音数据,从所述第二缓存队列获取近端麦克风数据。
在本申请实施例中,远端语音信号数据以及近端麦克风数据作为回声消除系统中延时估计模块的输入数据,具体可分为四类,分别为真实延时真实时序、真实延时虚拟时序、虚拟延时真实时序、以及虚拟延时虚拟时序数据。具体的数据获取过程如下:
1、获取真实场景下的实测数据,例如,在语音通话过程中,远端麦克风实时采集远端语音数据,并通过第一线程(播放线程)将所述远端语音数据发送至第一缓存队列;近端麦克风实时采集近端麦克风数据,并通过第二线程(采集线程)将所述近端麦克风数据发送至第二缓存队列,从所述第一缓存队列获取远端语音数据,从所述第二缓存队列获取近端麦克风数据。因此,所述远端语音数据和所述麦克风数据之间的延时为真实延时,所述播放线程和所述采集线程发送数据的时序为真实时序。
2、远端麦克风实时采集远端语音数据,近端麦克风实时采集近端麦克风数据,可以通过计算机程序控制播放线程和采集线程的读写数据周期,模拟真实场景可能出现的播放线程和采集线程时序不同步情形。因此,所述远端语音数据和所述麦克风数据之间的延时为真实延时,所述播放线程和所述采集线程发送数据的时序为虚拟时序。
3、远端麦克风实时采集远端语音数据,所述远端语音数据被近端扬声器播放后,经声学回路被近端麦克风采集的声音数据,通过计算机虚拟仿真模拟近端扬声器和近端麦克风之间的空间传输获得所述声学回路。其中,所述计算机虚拟仿真模拟所述空间传输可以是对输入的远端语音信号依次进行加延时、加传输衰减、加混响、以及加噪声。因此,所述远端语音数据和所述麦克风数据之间的延时为虚拟延时,所述播放线程和所述采集线程发送数据的时序为真实时序。
4、基于前面获得的真实延时虚拟时序的数据和虚拟延时真实时序的数据,即可获得虚拟延时虚拟时序的数据。通过上述四类数据,满足了延时估计模块对基本输入数据和异常输入数据的需求,结合计算机虚拟仿真,使得输入数据更全面且节约人工生成输入数据的时间成本。
请参阅图9,图9为本申请提供的回声消除的延时获取装置的结构示意图。本申请实施例提供的回声消除的延时获取装置9,包括:
数据获取模块91,用于获取远端语音数据以及近端麦克风数据;其中,所述远端语音数据包括若干帧远端语音信号,所述近端麦克风数据包括若干帧与所述远端语音信号一一对应的麦克风信号,所述麦克风信号包括回声信号,所述回声信号为由所述远端语音信号经近端扬声器播放后被近端麦克风采集的声音信号;
实际延时值获得模块92,用于根据每一帧所述远端语音信号与对应的所述麦克风信号,获得每一帧所述远端语音信号与相应帧所述麦克风信号之间的实际延时值;
延时估计值获得模块93,用于根据待评估的多个延时估计测算方法,获得每个所述延时估计测算方法对应的每一帧所述远端语音信号与相应帧所述麦克风信号之间的延时估计值;
评价参数获得模块94,用于根据每一帧所述延时估计值以及对应的所述实际延时值,获得每个延时估计测算方法对应的延时估计值评价参数;
延时测算模块95,用于将满足预设条件的所述延时估计值评价参数对应的延时估计测算方法作为目标延时估计测算方法,根据所述目标延时估计测算方法对所述远端语音数据与所述麦克风数据之间的延时进行测算。
需要说明的是,上述实施例提供的回声消除的延时获取装置在执行回声消除的延时获取方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分为不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的回声消除的延时获取装置与回声消除的延时获取方法属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
请参阅图10,为本申请提供的计算机设备的结构示意图。如图10所示,该计算机设备21可以包括:处理器210、存储器211以及存储在该存储器211并可以在该处理器210上运行的计算机程序212,例如:回声消除的延时获取程序;该处理器210执行该计算机程序212时实现上述实施例中的步骤。
其中,该处理器210可以包括一个或多个处理核心。处理器210利用各种接口和线路连接计算机设备21内的各个部分,通过运行或执行存储在存储器211内的指令、程序、代码集或指令集,以及调用存储器211内的数据,执行计算机设备21的各种功能和处理数据,可选的,处理器210可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programble LogicArray,PLA)中的至少一个硬件形式来实现。处理器210可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责触摸显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器210中,单独通过一块芯片进行实现。
其中,存储器211可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。可选的,该存储器211包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器211可用于存储指令、程序、代码、代码集或指令集。存储器211可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控指令等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器211可选的还可以是至少一个位于远离前述处理器210的存储装置。
本申请实施例还提供了一种计算机存储介质,该计算机存储介质可以存储有多条指令,该指令适用于由处理器加载并执行上述实施例的方法步骤,具体执行过程可以参见上述实施例的具体说明,在此不进行赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。
本发明并不局限于上述实施方式,如果对本发明的各种改动或变形不脱离本发明的精神和范围,倘若这些改动和变形属于本发明的权利要求和等同技术范围之内,则本发明也意图包含这些改动和变形。
Claims (13)
1.一种回声消除的延时获取方法,其特征在于,包括如下步骤:
获取远端语音数据以及近端麦克风数据;其中,所述远端语音数据包括若干帧远端语音信号,所述近端麦克风数据包括若干帧与所述远端语音信号一一对应的麦克风信号,所述麦克风信号包括回声信号,所述回声信号为由所述远端语音信号经近端扬声器播放后被近端麦克风采集的声音信号;
根据每一帧所述远端语音信号与对应的所述麦克风信号,获得每一帧所述远端语音信号与相应帧所述麦克风信号之间的实际延时值;
根据待评估的多个延时估计测算方法,获得每个所述延时估计测算方法对应的每一帧所述远端语音信号与相应帧所述麦克风信号之间的延时估计值;
根据每一帧所述延时估计值以及对应的所述实际延时值,获得每个延时估计测算方法对应的延时估计值评价参数;
将满足预设条件的所述延时估计值评价参数对应的延时估计测算方法作为目标延时估计测算方法,根据所述目标延时估计测算方法对所述远端语音数据与所述麦克风数据之间的延时进行测算。
2.根据权利要求1所述的回声消除的延时获取方法,其特征在于:
所述延时估计值评价参数包括准确性参数;所述根据每一帧所述延时估计值以及对应的所述实际延时值,获得每个延时估计测算方法对应的延时估计值评价参数的步骤,包括:
获取每一帧所述远端语音信号的帧长、每一帧所述实际延时值与二倍所述帧长的第一差值、每一帧所述实际延时值与预设阈值的第二差值;
根据每一帧所述实际延时值、所述第一差值和所述第二差值,划分若干个延时估计区间,对每个所述延时估计区间预设对应的准确值,获得预设的准确值梯度;
遍历每个所述延时估计测算方法的每一帧所述延时估计值,根据所述延时估计值以及预设的所述准确值梯度,获得每个延时估计测算方法对应的准确性参数。
3.根据权利要求2所述的回声消除的延时获取方法,其特征在于:
所述准确值梯度包括第一准确值、第二准确值和第三准确值;所述第一准确值小于所述第二准确值,所述第二准确值小于所述第三准确值;
所述遍历每个所述延时估计测算方法的每一帧所述延时估计值,根据所述延时估计值以及预设的所述准确值梯度,获得每个延时估计测算方法对应的准确性参数的步骤,包括:
遍历每个所述延时估计测算方法的每一帧所述延时估计值,若当前帧所述延时估计值大于对应的所述实际延时值,或者当前帧所述延时估计值小于所述第二差值,将所述第一准确值作为所述当前帧延时估计值的准确值;
若当前帧所述延时估计值大于或等于所述第二差值,但小于所述第一差值,将所述第二准确值作为所述当前帧延时估计值的准确值;
若当前帧所述延时估计值大于或等于所述第一差值,但小于所述实际延时值,将所述第三准确值作为所述当前帧延时估计值的准确值;
根据每个所述延时估计测算方法的每一帧所述延时估计值的所述准确值,获得每个延时估计测算方法对应的准确性参数。
4.根据权利要求3所述的回声消除的延时获取方法,其特征在于:
所述根据每个所述延时估计测算方法的每一帧延时估计值的所述准确值,获得每个延时估计测算方法对应的准确性参数的步骤,还包括:
遍历每个所述延时估计测算方法的每一帧延时估计值的所述准确值,若当前帧延时估计值的所述准确值为第二准确值或第三准确值,根据当前帧所述延时估计值和对应的所述实际延时值,计算当前帧延时估计值的所述准确值的权重;
利用所述权重对当前帧延时估计值的所述准确值进行加权,将当前帧延时估计值的准确值更新为加权后的准确值;
根据更新后的每个所述延时估计测算方法的每一帧延时估计值的所述准确值,获得每个延时估计测算方法对应的准确性参数。
5.根据权利要求3所述的回声消除的延时获取方法,其特征在于:
所述延时估计值评价参数包括收敛时间;所述根据每一帧所述延时估计值以及对应的所述实际延时值,获得每个延时估计测算方法对应的延时估计值评价参数的步骤,包括:
获取所述麦克风数据中第一帧麦克风信号的第一开始时刻;
若若干个连续帧所述远端语音信号与相应帧所述麦克风信号之间的延时估计值的准确值为第二准确值或第三准确值,获取所述若干个连续帧的下一帧麦克风信号的第二开始时刻;
根据所述第一开始时刻和所述第二开始时刻,获得每个延时估计测算方法对应的收敛时间。
6.根据权利要求5所述的回声消除的延时获取方法,其特征在于:
所述延时估计值评价参数包括稳定性参数;所述根据每一帧所述延时估计值以及对应的所述实际延时值,获得每个延时估计测算方法对应的延时估计值评价参数的步骤,包括:
若若干个连续帧所述远端语音信号与相应帧所述麦克风信号之间的延时估计值的准确值为第二准确值或第三准确值,从所述若干个连续帧的下一帧麦克风信号开始,根据相邻各帧所述远端语音信号与相应帧所述麦克风信号之间的所述延时估计值,获得每个延时估计测算方法对应的抖动参数;
根据所述抖动参数和每一帧所述远端语音信号的帧长,获得每个延时估计测算方法对应的稳定性参数。
7.根据权利要求6所述的回声消除的延时获取方法,其特征在于:
所述延时估计值评价参数包括综合评分参数;所述根据每一帧所述延时估计值以及对应的所述实际延时值,获得每个延时估计测算方法对应的延时估计值评价参数的步骤,包括:
将每个延时估计测算方法对应的准确性参数与每个延时估计测算方法对应的稳定性参数的乘积结果作为每个延时估计测算方法对应的综合评分参数。
8.根据权利要求7所述的回声消除的延时获取方法,其特征在于:
所述获取满足预设条件的所述延时估计值评价参数对应的目标延时估计测算方法,以根据所述目标延时估计测算方法对所述远端语音信号数据与所述麦克风信号数据之间的延时进行测算的步骤,包括:
比较每个延时估计测算方法对应的综合评分参数以及收敛时间,将所述综合评分参数最高或者所述收敛时间最小的延时估计测算方法作为目标延时估计测算方法。
9.根据权利要求1至8中任一项权利要求所述的回声消除的延时获取方法,其特征在于,
所述远端语音数据和所述麦克风信号数据通过实测数据采集和/或计算机虚拟仿真获得。
10.根据权利要求9中所述的回声消除的延时获取方法,其特征在于:获取远端语音数据以及近端麦克风数据的步骤包括:
远端麦克风实时采集远端语音数据,并通过第一线程将所述远端语音数据发送至第一缓存队列;近端麦克风实时采集近端麦克风数据,并通过第二线程将所述近端麦克风数据发送至第二缓存队列;从所述第一缓存队列获取远端语音数据,从所述第二缓存队列获取近端麦克风数据;或者,
远端麦克风实时采集远端语音数据,近端麦克风实时采集近端麦克风数据,调整所述第一线程的第一数据读写周期和所述第二线程的第二数据读写周期,根据所述第一数据读写周期将所述远端语音数据发送至第一缓存队列,根据所述第二数据读写周期,将所述近端麦克风数据发送至第二缓存队列;从所述第一缓存队列获取远端语音数据,从所述第二缓存队列获取近端麦克风数据;或者,
远端麦克风实时采集远端语音数据,近端麦克风采集近端麦克风数据;其中,所述近端麦克风数据包括回声数据,所述回声数据为由所述远端语音数据被近端扬声器播放后,经声学回路被近端麦克风采集的声音数据,通过计算机虚拟仿真模拟近端扬声器和近端麦克风之间的空间传输获得所述声学回路;通过第一线程将所述远端语音数据发送至第一缓存队列,通过第二线程将所述近端麦克风数据发送至第二缓存队列;从所述第一缓存队列获取远端语音数据,从所述第二缓存队列获取近端麦克风数据;或者,
远端麦克风实时采集远端语音数据,近端麦克风实时采集近端麦克风数据;其中,所述近端麦克风数据包括回声数据,所述回声数据为由所述远端语音数据被近端扬声器播放后,经声学回路被近端麦克风采集的声音数据,通过计算机虚拟仿真模拟近端扬声器和近端麦克风之间的空间传输获得所述声学回路;调整所述第一线程的第一数据读写周期和所述第二线程的第二数据读写周期,根据所述第一数据读写周期将所述远端语音数据发送至第一缓存队列,根据所述第二数据读写周期,将所述近端麦克风数据发送至第二缓存队列;从所述第一缓存队列获取远端语音数据,从所述第二缓存队列获取近端麦克风数据。
11.一种回声消除的延时获取装置,其特征在于,包括:
数据获取模块,用于获取远端语音数据以及近端麦克风数据;其中,所述远端语音数据包括若干帧远端语音信号,所述近端麦克风数据包括若干帧与所述远端语音信号一一对应的麦克风信号,所述麦克风信号包括回声信号,所述回声信号为由所述远端语音信号经近端扬声器播放后被近端麦克风采集的声音信号;
实际延时值获得模块,用于根据每一帧所述远端语音信号与对应的所述麦克风信号,获得每一帧所述远端语音信号与相应帧所述麦克风信号之间的实际延时值;
延时估计值获得模块,用于根据待评估的多个延时估计测算方法,获得每个所述延时估计测算方法对应的每一帧所述远端语音信号与相应帧所述麦克风信号之间的延时估计值;
评价参数获得模块,用于根据每一帧所述延时估计值以及对应的所述实际延时值,获得每个延时估计测算方法对应的延时估计值评价参数;
延时测算模块,用于将满足预设条件的所述延时估计值评价参数对应的延时估计测算方法作为目标延时估计测算方法,根据所述目标延时估计测算方法对所述远端语音数据与所述麦克风数据之间的延时进行测算。
12.一种计算机设备,包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至10任意一项所述方法的步骤。
13.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至10任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210143169.7A CN114449116A (zh) | 2022-02-16 | 2022-02-16 | 回声消除的延时获取方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210143169.7A CN114449116A (zh) | 2022-02-16 | 2022-02-16 | 回声消除的延时获取方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114449116A true CN114449116A (zh) | 2022-05-06 |
Family
ID=81373198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210143169.7A Pending CN114449116A (zh) | 2022-02-16 | 2022-02-16 | 回声消除的延时获取方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114449116A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024131371A1 (zh) * | 2022-12-21 | 2024-06-27 | 北京字跳网络技术有限公司 | 一种语音处理方法、装置和电子设备 |
-
2022
- 2022-02-16 CN CN202210143169.7A patent/CN114449116A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024131371A1 (zh) * | 2022-12-21 | 2024-06-27 | 北京字跳网络技术有限公司 | 一种语音处理方法、装置和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1924101B1 (en) | Video communication quality estimation device, method, and program | |
US10034036B2 (en) | Media synchronization for real-time streaming | |
JP2023075082A (ja) | ゲームシステムにおける表示ラグの検出および補償 | |
CN109257631B (zh) | 视频轮播播放方法、装置、计算机设备及存储介质 | |
CN108462896B (zh) | 直播数据流处理方法、装置及电子设备 | |
US11778106B2 (en) | Detecting and flagging acoustic problems in video conferencing | |
CN109348248A (zh) | 一种游戏直播的数据处理方法、系统和装置 | |
CN112995776B (zh) | 共享屏幕内容抓屏帧率确定方法、装置、设备和存储介质 | |
CN112511849A (zh) | 一种游戏显示方法、装置、设备、系统及存储介质 | |
CN114449116A (zh) | 回声消除的延时获取方法、装置、计算机设备及存储介质 | |
CN114666671A (zh) | 直播点赞互动方法、系统、装置、设备及存储介质 | |
JP4510583B2 (ja) | 双方向マルチモーダルサービス品質推定装置および方法 | |
CN113766261A (zh) | 一种确定预拉取时长方法、装置、电子设备及存储介质 | |
CN111179973B (zh) | 语音合成质量评价方法及系统 | |
CN114302164B (zh) | 网络条件检测方法及其装置、设备、介质、产品 | |
CN110769904B (zh) | 输出内容处理方法、输出方法、电子设备及存储介质 | |
CN113031756A (zh) | 一种评测vr体验临场感的方法、装置及系统 | |
CN103607596B (zh) | 时钟校准处理方法及装置 | |
EP3259906B1 (en) | Handling nuisance in teleconference system | |
CN107968942A (zh) | 一种直播平台音视频时间差测量方法与系统 | |
CN113727125B (zh) | 直播间的截图方法、装置、系统、介质以及计算机设备 | |
CN114827710B (zh) | 一种互动方法和相关装置 | |
CN115883863A (zh) | 赛事直播延时获取方法、装置、介质以及电子设备 | |
CN113747189B (zh) | 直播信息的显示控制方法、装置、电子设备及计算机介质 | |
CN108377243A (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 |