CN110289013A - 多音频采集源检测方法、装置、存储介质和计算机设备 - Google Patents

多音频采集源检测方法、装置、存储介质和计算机设备 Download PDF

Info

Publication number
CN110289013A
CN110289013A CN201910671632.3A CN201910671632A CN110289013A CN 110289013 A CN110289013 A CN 110289013A CN 201910671632 A CN201910671632 A CN 201910671632A CN 110289013 A CN110289013 A CN 110289013A
Authority
CN
China
Prior art keywords
audio
audio frame
far
history
fingerprint
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
CN201910671632.3A
Other languages
English (en)
Other versions
CN110289013B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910671632.3A priority Critical patent/CN110289013B/zh
Publication of CN110289013A publication Critical patent/CN110289013A/zh
Application granted granted Critical
Publication of CN110289013B publication Critical patent/CN110289013B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/18Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being spectral information of each sub-band
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/21Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being power information
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本申请涉及一种多音频采集源检测方法、装置、存储介质和计算机设备,所述方法包括:获取多人会话中当前播放的远端音频数据;对所述远端音频数据进行处理,获得远端音频帧指纹;从用于存储本地采集的历史音频数据的、且持续更新的队列中,读取历史音频数据;对读取的历史音频数据进行处理,获得历史音频帧指纹;当所述远端音频帧指纹与所述历史音频帧指纹匹配时,判定存在多音频采集源。本申请提供的方案可以实现多音频采集源的检测,从而能够提高多人会话的会话质量。

Description

多音频采集源检测方法、装置、存储介质和计算机设备
技术领域
本申请涉及计算机技术领域,特别是涉及一种多音频采集源检测方法、装置、存储介质和计算机设备。
背景技术
随着计算机技术和通信技术的发展,人们之间的交互形式越来越多,不再局限于线下面对面沟通或电话沟通,基于互联网建立会话来实现交互也越来越普遍,给人们的交互提供了诸多便捷。由此,基于互联网的多人会话因其针对多会话用户仍能保持良好的互动性而逐渐发展起来。
目前,基于互联网的多人会话中,通常是由多个终端将各自采集的音频数据通过服务器分发至多人会话中的其他终端。然而,该种多人会话的交互形式中,可能存在声音嘈杂混乱的情况,从而降低了会话质量。
发明内容
基于此,有必要针对声音嘈杂混乱而导致会话质量较低的技术问题,提供一种多音频采集源检测方法、装置、存储介质和计算机设备。
一种多音频采集源检测方法,包括:
获取多人会话中当前播放的远端音频数据;
对所述远端音频数据进行处理,获得远端音频帧指纹;
从用于存储本地采集的历史音频数据的、且持续更新的队列中,读取历史音频数据;
对读取的历史音频数据进行处理,获得历史音频帧指纹;
当所述远端音频帧指纹与所述历史音频帧指纹匹配时,判定存在多音频采集源。
一种多音频采集源检测装置,所述装置包括:
获取模块,用于获取多人会话中当前播放的远端音频数据;
处理模块,用于对所述远端音频数据进行处理,获得远端音频帧指纹;
读取模块,用于从用于存储本地采集的历史音频数据的、且持续更新的队列中,读取历史音频数据;
所述处理模块,还用于对读取的历史音频数据进行处理,获得历史音频帧指纹;
检测模块,用于当所述远端音频帧指纹与所述历史音频帧指纹匹配时,判定存在多音频采集源。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行所述多音频采集源检测的步骤。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述多音频采集源检测的步骤。
上述多音频采集源检测方法、装置、存储介质和计算机设备,将本地采集的音频数据作为历史音频数据持续更新至队列中,多人会话中当前播放的远端音频数据,是由多人会话中除自身以外的其他终端采集并分发的,相对于队列中的历史音频数据存在时延,若远端音频数据对应的远端音频帧指纹与历史音频数据对应的历史音频帧指纹匹配,表明自身与多人会话中的其他终端采集到了相同的音频数据,则判定存在多音频采集源。在检测到存在多音频采集源时,通过进行相应的处理,即可解决因相同的音频数据在多人会话中分发多次而导致声音嘈杂混乱的问题,从而能够提高会话质量。
附图说明
图1为一个实施例中多音频采集源检测方法的应用环境图;
图2为一个实施例中多音频采集源检测方法的流程示意图;
图3为一个实施例中对目标音频数据进行处理的步骤的流程示意图;
图4为一个实施例中根据音频帧频域数据得到目标音频帧对应的目标音频帧指纹的步骤的流程示意图;
图5为一个实施例中判定多音频采集源的步骤的流程示意图;
图6为另一个实施例中多音频采集源检测方法的流程示意图;
图7为又一个实施例中多音频采集源检测方法的流程示意图;
图8为再一个实施例中多音频采集源检测方法的流程示意图;
图9为一个实施例中多音频采集源检测装置的结构框图;
图10为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中多音频采集源检测方法的应用环境图。参照图1,该多音频采集源检测方法应用于多音频采集源检测系统。该多音频采集源检测系统包括终端110和服务器120。其中,终端110和服务器120通过网络连接。终端110至少包括第一终端112和第二终端114。终端110具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
如图2所示,在一个实施例中,提供了一种多音频采集源检测方法。本实施例主要以该方法应用于上述图1中的终端110来举例说明。参照图2,该多音频采集源检测方法具体包括如下步骤:
S202,获取多人会话中当前播放的远端音频数据。
其中,多人会话是会话的一种形式,会话是至少一个用户与其他用户之间进行交互的过程。多人会话是至少三个用户之间进行交互的过程。多人会话可以是群会话或会议会话。远端音频数据是由参与多人会话的除本地用户标识外的其他用户标识通过其他终端发起的会话消息。远端音频数据具体是由多人会话对应的除自身以外的其他终端采集到的音频数据。远端音频数据是相对于本地采集的音频数据而言,是由除自身以外的其他终端采集的音频数据。远端音频数据是会话消息的一种,会话消息还可包括本地采集的音频数据。
会话消息是在多人会话中发起的消息,可以包括多人会话中任一用户在该多人会话中所发起的消息。会话消息可以包括文本数据、音频数据、视频数据、图片数据和表情数据等中的至少一种。
具体地,多人会话对应的各个终端分别采集音频数据,并将各自采集的音频数据作为会话消息发送至多人会话中除自身以外的其他终端。终端获取多人会话中当前播放的远端音频数据,也就是终端获取多人会话中除自身以外的其他终端采集并发送至的远端音频数据。
在一个实施例中,终端上运行有应用程序,该应用程序可提供多人会话的能力。终端通过运行于其上的应用程序获取多人会话中当前播放的远端音频数据。其中,应用程序具体可以是即时通信应用或用于组织业务的组织通信应用。
在一个实施例中,终端可通过麦克风采集音频数据。终端可通过运行于其上的应用程序将采集的音频数据发送至多人会话中的其他终端。终端具体可通过服务器将采集的音频数据发送中多人会话中的其他终端。
S204,对远端音频数据进行处理,获得远端音频帧指纹。
其中,远端音频帧指纹是根据远端音频数据确定的远端音频帧所对应的音频帧指纹。音频帧指纹是用于表征音频帧的信号特征的数据。音频帧指纹具体可以是由指定数量的比特数组成的数或数组,指定数量比如32,也即音频帧指纹是一个32bit(binary digit,比特)的数。在一个实施例中,音频帧指纹所包括的比特数的数量是32的整数倍。
具体地,终端对从多人会话中获取到的远端音频数据进行处理得到相应的远端音频帧,并对该远端音频帧进行音频能量分析得到相应的远端音频帧指纹。终端对远端音频帧进行音频能量分析具体可得到多个音频能量特征值,进而根据该多个音频能量特征值得到相应的远端音频帧指纹。
在一个实施例中,终端对所获取到的远端音频数据进行处理得到一个远端音频帧,对该一个远端音频帧进行处理得到相应的远端音频帧指纹。可以理解,终端每次从多人会话中获取包括一个远端音频帧的远端音频数据,对该远端音频数据进行处理得到一个远端音频帧指纹,并基于该一个远端音频帧指纹执行下述的相关步骤。终端每次从多人会话中获取当前播放的一个远端音频帧,并基于该一个远端音频帧执行多音频采集源检测的相关步骤。终端按照远端音频数据的播放时序,循环执行每次从多人会话中获取当前播放的一个远端音频帧,并基于该一个远端音频帧执行多音频采集源检测的相关步骤,以实现多音频采集源的实时检测。
在一个实施例中,终端对从多人会话中获取到的远端音频数据进行处理,得到多个远端音频帧,并分别对每个远端音频帧进行音频能量分析,得到每个远端音频帧对应的远端音频帧指纹。终端基于每个远端音频帧指纹分别执行多音频采集源检测的相关步骤。终端也可基于该多个远端音频帧指纹执行多音频采集源检测的相关步骤。
S206,从用于存储本地采集的历史音频数据的、且持续更新的队列中,读取历史音频数据。
其中,历史音频数据是当前时间之前由本地采集的音频数据,具体可以是在当前时间之前由本地麦克风采集的音频数据。基于队列先进先出的特性,队列中的历史音频数据按照采集时间的顺序进行存储。
具体地,终端预先配置有用于存储本地采集的历史音频数据的队列,并将本地实时采集的音频数据作为历史音频数据持续更新至队列中。终端将本地实时采集的音频数据作为历史音频数据存储至队列的队尾,以实现队列的持续更新。终端从该持续更新的队列中读取已存储的历史音频数据。
在一个实施例中,终端将队列的长度配置为定值。终端将本地实时采集的音频数据作为历史音频数据存储至队列的队尾,并从队列的队首删除与当前采集的音频数据长度一致的历史音频数据,以在保持队列的长度不变的情况下实现队列的持续更新。这样,队列中始终存储有最近的且与队列长度一致的历史音频数据。终端可从队列中读取当前所存储的所有历史音频数据,也可从队列中读取预设长度/时长的历史音频数据。队列的长度可根据实际情况进行自定义,比如2秒。队列的长度可动态调整,并保持调整后的值不变直至下一次动态调整。
在一个实施例中,队列的长度根据多人会话所基于的通信协议或通信方式的最大延时来确定。比如基于VOIP(Voice over Internet Protocol,网络电话)的多人会话的最大可能时延为2秒,则将队列长度设定为2秒。对于基于电话通信的多人会话,将队列长度设定为电话通信的最大时延。可以理解,队列长度可基于通信协议或通信方式的时延范围进行调整。
在一个实施例中,终端预先配置的队列的长度不固定,也就是队列的长度可动态变化。终端将本地实时采集的音频数据作为历史音频数据存储至队列的队尾,以实现队列的持续更新。终端将本地采集的历史音频数据持续更新至队列中,队列的长度会随着历史音频数据的更新持续变化。可以理解,终端会动态检测队列的长度,当检测到队列的长度达到长度阈值时,从队列的队首删除指定长度/时长的历史音频数据,以避免因队列中缓存的历史音频数据占用终端过多的内存或缓存而导致终端的性能下降,从而降低多音频采集源的检测效率,以及影响多人会话的质量或流畅性等。终端也可按照预设周期定期执行从队列的队首删除指定长度/时长的历史音频数据的步骤。这样,终端从队列中读取预设长度/时长的历史音频数据。
S208,对读取的历史音频数据进行处理,获得历史音频帧指纹。
其中,历史音频帧指纹是基于历史音频数据确定的历史音频帧所对应的音频帧指纹。历史音频帧指纹是历史音频帧所对应的信号特征数据。
具体地,终端对从队列中读取的历史音频数据进行处理得到相应的历史音频帧,并对所得到的历史音频帧进行音频能量分析得到相应的历史音频帧指纹。终端对历史音频帧进行音频能量分析具体可得到相应的多个音频能量特征值,进而根据该多个音频能量特征值得到相应的历史音频帧指纹。
在一个实施例中,终端对从队列中读取的历史音频数据进行处理,得到相应的多个历史音频帧,并分别对每个历史音频帧进行音频能量分析,得到每个历史音频帧对应的历史音频帧指纹。
S210,当远端音频帧指纹与历史音频帧指纹匹配时,判定存在多音频采集源。
其中,音频采集源是用于采集音频数据的设备或应用程序,设备比如终端或麦克风,麦克风可以是独立于终端且与终端进行音频数据的交互的音频采集源,也可以是部署于终端的音频采集源,应用程序是运行于终端的计算机程序。
具体地,终端根据从多人会话中获取的远端音频数据得到相应的远端音频帧指纹,并根据从队列中读取的历史音频数据得到相应的历史音频帧指纹后,将所得到的远端音频帧指纹和历史音频帧指纹进行匹配。当该远端音频帧指纹与相应的历史音频帧指纹匹配时,表明本地采集的历史音频数据中,存在与由多人会话中除自身以外的其他终端采集的远端音频数据一致的音频数据,终端则判定存在多音频采集源。可以理解,当远端音频帧指纹与历史音频帧指纹匹配时,终端则判定自身与多人会话中除自身以外的其他终端采集到相同的音频数据,进而将自身与采集到相同音频数据的其他终端判定为所检测到的多音频采集源。
在一个实施例中,终端将基于远端音频帧数据得到的远端音频帧与基于历史音频帧数据得到的历史音频帧进行逐帧比较,以确定多人会话中当前播放的远端音频数据与本地采集的历史音频数据的相似性或相似度。终端基于远端音频帧指纹和历史音频帧指纹来量化分析远端音频数据和历史音频数据之间的相似性。具体地,终端将基于远端音频数据得到的远端音频帧指纹与基于历史音频数据得到的各个历史音频帧指纹分别进行比较,得到远端音频帧指纹与每个历史音频帧指纹之间的相似性或相似度,进而确定远端音频数据与所读取的历史音频数据之间的相似性或相似度。
在一个实施例中,当基于远端音频数据得到多个远端音频帧指纹时,终端可将每个远端音频帧指纹分别与基于历史音频数据得到的每个历史音频帧指纹进行比较,并根据比较结果确定远端音频数据与历史音频数据之间的相似性或相似度。终端可根据单个远端音频帧指纹所对应的相似度确定远端音频数据与历史音频数据的相似度或相似性。例如,终端从各个远端音频帧指纹所对应的相似度中筛选相似度最大值,并基于该相似度最大值确定远端音频数据与历史音频数据的相似度或相似性。终端也可基于多个远端音频帧指纹各自对应的相似度确定远端音频数据与历史音频数据的相似度或相似性。例如,终端从每个远端音频帧指纹各自对应的相似度中筛选达到相似度阈值的相似度,并对筛选出的相似度求算术平均或加权平均,得到远端音频数据与历史音频数据的相似度或相似性。
在一个实施例中,当基于远端音频数据得到多个远端音频帧各自对应的远端音频帧指纹时,终端将该多个远端音频帧指纹按照时序组合成一个或多个远端音频指纹。相应地,终端将相应数量的多个历史音频帧指纹按照时序进行组合,得到一个或多个历史音频指纹。终端将每个远端音频指纹分别与每个历史音频指纹进行比较,以确定队列中是否存储有与当前播放的远端音频数据相关性较高的历史音频数据片段。若有,则表明由多人会话中除自身以外的其他终端采集的音频数据与本地采集的音频数据极其相似,也就是表明多人会话中存在与自身处于同一区域的其他终端,则判定多人会话中存在多音频采集源。
上述多音频采集源检测方法、装置、存储介质和计算机设备,将本地采集的音频数据作为历史音频数据持续更新至队列中,多人会话中当前播放的远端音频数据,是由多人会话中除自身以外的其他终端采集并分发的,相对于队列中的历史音频数据存在时延,若远端音频数据对应的远端音频帧指纹与历史音频数据对应的历史音频帧指纹匹配,表明自身与多人会话中的其他终端采集到了相同的音频数据,则判定存在多音频采集源。在检测到存在多音频采集源时,通过进行相应的处理,即可解决因相同的音频数据在多人会话中分发多次而导致声音嘈杂混乱的问题,从而能够提高会话质量。
如图3所示,在一个实施例中,上述多音频采集源检测方法中的处理包括以下步骤:
S302,对目标音频数据进行时域分帧,得到初始音频帧;目标音频数据为远端音频数据或读取的历史音频数据。
S304,对初始音频帧中的音频数据进行重采样,得到目标音频帧。
S306,将目标音频帧中的音频数据从时域变换到频域,得到音频帧频域数据。
S308,根据音频帧频域数据得到目标音频帧对应的目标音频帧指纹;目标音频帧指纹为远端音频帧指纹或历史音频帧指纹。
其中,目标音频数据为待处理的音频数据,可以是从多人会话中获取的当前播放的远端音频数据,也可以是从队列中获取的本地采集的历史音频数据。时域分帧是指在时域对音频数据进行音频帧的划分,也就是从音频数据中提取一个或多个音频帧。时域分帧处理又可理解为加窗处理,也就是通过滑动窗口将音频数据划分为一个或多个音频帧。时域是相对于频域而言的。终端采集的音频数据为时域数据,对音频数据进行时域分帧所得到的音频帧中的音频数据也为时域数据,可以理解为音频帧时域数据。相应地,将音频帧中的音频数据从时域变换到频域得到相应的频域数据,作为音频帧对应的音频帧频域数据。
具体地,终端对从多人会话中获取的当前播放的远端音频数据进行时域分帧处理,得到该远端音频数据对应的初始音频帧。终端对远端音频数据对应的初始音频帧中的音频数据进行重采样得到目标音频帧,并将该目标音频帧作为远端音频数据对应的远端音频帧。终端将远端音频帧中的音频数据从时域变换到频域,得到该远端音频帧对应的音频帧频域数据。终端根据该音频帧频域数据进行音频能量分析得到目标音频帧指纹,并将该目标音频帧指纹作为远端音频帧对应的远端音频帧指纹。
相应地,终端对从队列中读取的历史音频数据进行时域分帧处理,得到历史音频数据对应的初始音频帧。终端对历史音频数据对应的每个初始音频帧中的音频数据分别进行重采样得到相应的目标音频帧,并将该目标音频帧作为该历史音频数据对应的历史音频帧。终端分别将每个历史音频帧中的音频数据从时域变换到频域,得到每个历史音频帧对应的音频帧频域数据。终端根据每个音频帧频域数据分别对相应历史音频帧进行音频能量分析得到目标音频帧指纹,并将目标音频帧指纹作为相应历史音频帧所对应的历史音频帧指纹。
在一个实施例中,终端对目标音频数据进行时域分帧,得到预设时长的初始音频帧。终端按照预设采样频率对初始音频帧中的音频数据进行重采样,得到包括预设采样点数的目标音频帧。预设时长是预先设定的时间长度,也就是对目标音频数据进行加窗处理时窗口对应的时间长度,比如20毫秒。预设采样频率是预先设定的单位时间内的采样点数。采样点数是指采样点的数量,具体可以是指离散的音频数据的数量。预设采样点数基于预设采样频率与初始音频帧对应的预设时长确定。终端将预设采样频率除以初始音频帧对应的预设时长,得到该初始音频帧对应的预设采样点数,并按照预设采样点数对初始音频帧中的音频数据进行重采样,得到包括预设采样点数的目标音频帧。终端按照预设采样点数对初始音频帧中的音频数据进行重采样,可理解为从初始音频帧中的音频数据中重采样出预设采样点数的音频数据,并由该预设采样点数的音频数据得到目标音频帧。
在一个实施例中,终端从多人会话中获取的远端音频数据是离散的音频数据,以及从队列中获取的历史音频数据是离散的音频数据,也就是终端所获取到的目标音频数据为离散的音频数据。其中,多人会话中的每个终端对自身采集的音频数据进行模数转换,得到离散的音频数据。终端具体可通过预配置的模数转换模块将所采集到的连续的音频数据转换为离散的音频数据,也就是将连续的模拟信号转换为离散的数字信号。可以理解,对目标音频数据进行时域分帧得到初始音频帧后,若初始音频帧包括的采样点数与预设采样点数一致,终端则无需对该初始音频帧中的音频数据进行重采样,并直接将初始音频帧确定为目标音频帧。
在一个实施例中,终端所获取到的目标音频数据为连续的音频数据。终端对目标音频数据进行时域分帧得到初始音频帧,初始音频帧包括预设时长的连续的音频数据。终端按照预设采样频率对初始音频帧进行采样,得到包括预设采样点数的目标音频帧。这样,通过采样将连续的模拟音频数据转换为离散的数字音频数据。
在一个实施例中,终端对所获取到的目标音频数据进行重采样,并对重采样后的目标音频数据进行时域分帧得到相应的目标音频帧,进而对该目标音频帧进行音频能量分析得到目标音频帧指纹。可以理解,若目标音频数据为离散的音频数据,终端按照预设采样频率对该目标音频数据进行重采样,通过对采样后的目标音频数据进行时域分帧,得到包括预设采样点数的目标音频帧。若目标音频数据为连续的音频数据,终端通过重采样将该连续的目标音频数据变换为离散的音频数据,并对该离散的音频数据进行时域分帧得到目标音频帧。
上述实施例中,对远端音频数据和历史音频数据进行相同的处理,也即均通过时域分帧、重采样、时域到空域的变换等处理分别得到远端音频帧指纹和历史音频帧指纹,这样,基于通过相同处理得到的远端音频帧指纹和历史音频帧指纹判定多音频采集源的存在情况,能够提高判定的准确性。
如图4所示,在一个实施例中,步骤S308即根据音频帧频域数据得到目标音频帧对应的目标音频帧指纹,包括:
S402,对音频帧频域数据进行频带划分,得到多个音频帧频带。
其中,音频帧频带是指对音频帧频域数据按照频率进行划分得到的频带区间或范围,也可理解为频率区间或范围。每个音频帧频域数据包括多个频点数据,每个音频帧频带包括至少一个频点数据。
具体地,终端对每个音频帧频域数据分别进行频带划分,得到相应的多个音频帧频带,也就是将每个音频帧频域数据划分到多个音频帧频带。终端按照预设频带数量对每个音频帧频域数据进行频带划分,得到每个目标音频帧对应的预设频带数量的音频帧频带。预设频带数据可自定义,比如33。
在一个实施例中,终端可将每个音频帧频域数据平均划分至多个音频帧频带,也就是每个音频帧频带包括相同数量的频点数据。终端也可将每个音频帧频域数据差异化的划分至多个音频帧频带,也就是不同音频帧频带所包括的频点数据不完全一致。
在一个实施例中,终端从每个音频帧频域数据中筛选出预设频率范围内的频点数据,并将筛选出的频点数据划分至多个音频帧频带。预设频率范围比如300Hz(赫兹)到2000Hz。这样,通过剔除掉对用户听觉效果无影响或影响较小的频点数据,能够减少待处理的数据量,从而能够在保证检测准确性的情况下提高检测效率。
在一个实施例中,终端可按照下述公式(1)计算每个音频帧频带的下限频率,从而确定每个音频帧频带,由此实现将音频帧频域数据划分为多个音频帧频带。其中,公式(1)如下:
其中,f(m)为第m个音频帧频带的下限频率,Fmax为音频帧频域数据的上限频率,Fmin为音频帧频域数据的上限频率,M为音频帧频带的数量。可以理解,Fmax和Fmin具体可以是预设频率范围的上限频率和下限频率,比如Fmax为2000Hz,Fmin为300Hz。M具体可以是预设频带数量,比如33。
S404,获取多个音频帧频带各自的频带能量。
其中,频带能量是指音频帧频带对应的能量,也可理解为音频帧频带对应的音频能量。具体地,终端将每个音频帧频域数据划分为多个音频帧频带后,分别计算每个音频帧频带的频带能量。
在一个实施例中,对于每个目标音频帧或音频帧频域数据,终端具体可基于下述公式(2)计算每个音频帧频带的频带能量。其中,公式(2)如下:
其中,E(m)为第m个音频帧频带的频带能量,f(m)为第m个音频帧频带的下限频率,f(m+1)为第m+1个音频帧频带的下限频率,也就是第m个音频帧频带的上限频率,X(k)为第m个音频帧频带中第k个频点数据。可以理解,第m个音频帧频带中的每个频点数据所对应的频率都处于由f(m)和f(m+1)确定的频率范围内。
在一个实施例中,若目标音频帧有多个,也就是根据远端音频数据确定的远端音频帧或者根据历史音频数据确定的历史音频帧有多个,终端可将第n个目标音频帧对应的第m个音频帧频带的频带能量表示为E(n,m)。
S406,根据每个音频帧频带与相邻音频帧频带之间的频带能量差值,以及相邻音频帧频域数据中相同位置处的音频帧频带对应的频带能量差值,得到每个音频帧频带对应的音频能量特征值。
其中,频带能量差值是指相邻两个音频帧频带各自对应的频带能量的差值。音频能量特征值是用于表征音频帧频带对应的音频能量的动态变化特征的数值,具体可以指二进制的数值,比如0或1。
具体地,对于每个目标音频帧对应的每个音频帧频带,终端根据该音频帧频带与其相邻的音频帧频带各自对应的频带能量,计算二者之间的频带能量差值,作为第一能量差值。终端确定当前计算的目标音频帧的相邻目标音频帧,也就是确定当前计算的音频帧频带数据的相邻音频帧频带数据,从该相邻目标音频帧/相邻音频帧频域数据对应的多个音频帧频带中,筛选与当前计算的音频帧频带位置相同的音频频带及其相邻音频帧频带,并基于筛选出的音频帧频带及其相邻音频帧频带各自对应的频带能量计算相应的频带能量差值,作为第二频带能量差值。终端根据第一频带能量差值与第二频带能量差值,计算得到当前计算的音频帧频带所对应的音频能量特征值。
在一个实施例中,在计算第一频带能量差值与第二频带能量差值时,参与计算的两个音频帧频带之间的相邻关系一致,比如均为前相邻或后相邻。在一个实施例中,在计算音频帧频带对应的音频能量特征值时,参与计算的目标音频帧之间的相邻关系可以是前相邻也可以是后相邻。可以理解,由于每次检测过程中,按照时序的最后一个目标音频帧通常没有与其后相邻的目标音频帧,故在计算各个音频帧频带的音频能量特征值时,通常会选取前相邻的相邻关系。
在一个实施例中,终端基于下述公式(3)计算每个目标音频帧对应的每个音频帧频带所对应的音频能量的动态变化特征,并根据音频能量的动态变化特征确定音频能量特征值。其中,公式(3)如下:
其中,F(n,m)为第n个目标音频帧对应的第m个音频帧频带的音频能量特征值,E(n,m)为第n个目标音频帧对应的第m个音频帧频带的频带能量,E(n,m+1)为第n个目标音频帧对应的第m+1个音频帧频带的频带能量,E(n-1,m)为第n-1个目标音频帧对应的第m个音频帧频带的频带能量,E(n-1,m+1)为第n-1个目标音频帧对应的第m+1个音频帧频带的频带能量,E(n,m)-E(n,m+1)-(E(n-1,m)-E(n-1,m+1))为第n个目标音频帧对应的第m个音频帧频带所对应的音频能量的动态变化特征。
上述公式(3)中,终端将计算的音频能量的动态变化特征与预设数值进行比较,并根据比较结果确定相应音频帧频带的音频能量特征值。其中,预设数值取值为0。可以理解,预设数值可根据实际情况自定义。
S408,根据多个音频帧频带各自的音频能量特征值,获得目标音频帧对应的目标音频帧指纹。
具体地,终端根据每个目标音频帧对应的多个音频帧频带各自的音频能量特征值,得到该目标音频帧对应的目标音频帧指纹。终端将每个目标音频帧对应的多个音频帧频带各自的音频能量特征值,按照音频帧频带的位置顺序进行组合得到目标音频帧指纹。
在一个实施例中,终端在计算每个音频帧频带对应的音频能量特征值时,会涉及当前计算的音频帧频带的相邻音频帧频带所对应的频带能量,由此,针对每个目标音频帧计算得到的音频能量特征值数量小于相应的音频帧频带数量。具体地,针对每个目标音频帧计算得到的音频能量特征值数量比音频帧频带数量少一个。举例说明,若将目标音频帧对应的音频帧频域数据划分为M个音频帧频带,则基于该M个音频帧频带各自对应的频带能量,按照上述方式计算得到该目标音频帧对应的M-1个音频能量特征值。
在一个实施例中,每个目标音频帧对应的多个音频能量特征值,按照相应音频帧频带的位置进行排列组合,得到该目标音频帧对应的目标音频帧指纹。例如,第n个目标音频帧的目标音频帧指纹表示为{F(n,1),F(n,2)...F(n,M-1)}。
上述实施例中,基于同一时刻相邻音频帧频带的频带能量差值,以及相邻时刻相同位置处的音频帧频带各自的频带能量差值,确定当前计算的音频帧频带的音频能量特征值,这样,基于时间和空间两个维度确定音频能量特征值,进而得到准确性较高的目标音频帧指纹,能够提高多音频采集源的检测准确性。
在一个实施例中,步骤S208包括:获取随机噪声;基于随机噪声对读取的历史音频数据进行预处理;对预处理后的历史音频数据进行处理,获得历史音频帧指纹。
具体地,终端获取随机噪声,并将所获取到的随机噪声添加至从队列中读取的历史音频数据中,得到预处理后的历史音频数据。终端按照上述一个或多个实施例中提供的处理步骤,对预处理后的历史音频数据进行处理,得到相应的历史音频帧指纹。
在一个实施例中,终端可从本地或其他设备获取预先生成的随机噪声,也可通过随机噪声生成器或随机噪声生成函数生成随机噪声。
在一个实施例中,终端基于极低随机噪声对所读取的历史音频数据进行预处理。极低随机噪声是指随机噪声的分贝数极低或很低,比如-50dB。
上述实施例中,由于静音数据处处一致,也就是静音数据对应的目标音频指纹一致,而对静音数据进行对齐或比较没有意义,终端向读取的历史音频数据中添加随机噪声,能够避免静音的干扰,也就是在远端音频数据和历史音频数据均为静音数据时,能够避免对音频采集源检测结果的误判,从而能够提高检测的准确性。
如图5所示,在一个实施例中,步骤S210,也就是判定多音频采集源的步骤具体可包括:
S502,获取远端音频帧指纹之前、且最近的预设数量的历史远端音频帧指纹。
其中,预设数量是预先设定的数量,比如5。历史远端音频帧指纹是指根据在当前时间之前从多人会话中获取的远端音频数据得到的远端音频帧指纹。
具体地,在循环执行的多音频采集源检测过程中,终端根据每次获取的远端音频数据得到相应的远端音频帧指纹,并将该远端音频帧指纹作为历史远端音频帧指纹存储在本地。在当次执行的多音频采集源检测过程中,终端从本地获取最近的预设数量的历史远端音频帧指纹。可以理解,获取到的历史远端音频帧指纹是在当次执行的多音频采集源检测之前存储至本地的远端音频数据。
在一个实施例中,终端可将历史远端音频帧指纹存储在预配置的音频帧指纹队列中。由此,终端从音频帧指纹队列中读取最近入列的预设数量的历史远端音频帧指纹。
在一个实施例中,音频帧指纹队列的长度设定为定值,也就是音频帧指纹队列中所能存储的历史远端音频帧指纹数量设定为定值,比如设定为5,也就是该音频帧指纹队列中可存储5个历史远端音频帧指纹。这样,终端直接从音频帧指纹队列中读取所存储的历史远端音频帧指纹。
S504,根据远端音频帧指纹和历史远端音频帧指纹得到远端音频指纹。
其中,远端音频指纹是由当前计算的远端音频帧指纹和至少一个历史远端音频帧指纹组成的音频帧指纹集合。
具体地,终端将根据从多人会话中获取的当前播放的远端音频数据得到的远端音频帧指纹,以及从本地获取的预设数量的历史远端音频帧指纹按照预设组合方式进行组合,得到相应的远端音频指纹。预设组合方式比如拼接或叠加。
在一个实施例中,终端将远端音频帧指纹所包括的多个音频能量特征值,与所获取到的历史远端音频帧指纹所包括的多个音频能量特征值进行拼接,得到由该些音频能量特征值组成的远端音频指纹。其中,远端音频指纹所包括的音频能量特征值的数量为远端音频帧指纹和历史远端音频帧指纹各自包括的音频能量特征值的数量之和。例如,远端音频指纹由1个远端音频帧指纹和4个历史远端音频帧指纹组成,且每个远端音频帧指纹和历史远端音频帧指纹均包括32个音频能量特征值,则远端音频指纹包括160个音频能量特征值。可以理解,由远端音频帧指纹和历史远端音频帧指纹组成的远端音频指纹为一组32位的比特数。
在一个实施例中,终端以音频能量特征值为维度,将远端音频帧指纹与历史远端音频帧指纹在各个维度上进行叠加,由叠加得到的多个音频能量特征值组成远端音频指纹。
S506,根据历史音频帧指纹得到历史音频指纹。
其中,历史音频指纹是由多个历史音频帧指纹组成的音频指纹。具体地,终端将根据从队列中读取的历史音频数据得到的历史音频帧指纹按照预设组合方式进行组合,得到历史音频指纹。终端基于相同的预设组合方式分别得到远端音频指纹和历史音频指纹。
在一个实施例中,终端将根据读取的历史音频数据得到的多个历史音频帧指纹按照时序进行划分,得到至少一个包括第一数量的历史音频帧指纹的集合,并根据每个集合中的各个历史音频帧指纹得到相应的历史音频指纹。其中,第一数量等于预设数量与当前计算的远端音频帧指纹的数量之和。这样,历史音频指纹所包括的历史音频帧指纹的数量,与远端音频指纹所包括的远端音频帧指纹与历史音频帧指纹的数量之和一致。
在一个实施例中,终端可按照正向时序或者逆向时序对多个历史音频帧指纹进行划分,得到一个或多个由历史音频帧指纹组成的集合。
S508,当远端音频指纹和历史音频指纹匹配时,判定存在多音频采集源。
具体地,终端将远端音频指纹与每个历史音频指纹进行匹配,以根据匹配结果判断是否存在多音频采集源。当存在与远端音频指纹匹配的历史音频指纹时,终端则判定存在多音频采集源。
在一个实施例中,在当前得到的历史音频指纹中存在与远端音频指纹之间的匹配度符合预设匹配条件时,终端则判定存在多音频采集源。预设匹配条件比如匹配度达到预设匹配度阈值。预设匹配度阈值可自定义,比如70%。
在一个实施例中,远端音频指纹和历史音频指纹由相同数量的音频能量特征值组成,也就是远端音频指纹和历史音频指纹各自所包括的比特数总量相等。终端将远端音频指纹和历史音频指纹中相应位置处的比特数分别进行比较,并统计比特数一致的数量,以根据统计的数量与比特数总量确定匹配度。
上述实施例中,通过相同的预设组合方式分别得到包括多个远端音频帧指纹的远端音频指纹,以及包括多个历史音频帧指纹的历史音频指纹,并基于远端音频指纹与历史音频指纹之间的匹配情况进行多音频采集源的检测,相较于基于远端音频帧指纹和历史音频帧指纹的检测方式,能够提高检测结果的可信度,也就是能够提高检测的准确性。
在一个实施例中,步骤S210具体还可包括:当远端音频帧指纹与历史音频帧指纹匹配、且以下条件中的至少一个满足时,判定存在多音频采集源;以下条件包括:自身与采集远端音频数据的终端同属于一个局域网;自身与采集远端音频数据的终端之间的距离小于预设距离;自身与采集远端音频数据的终端距离同一超声接收器的距离差小于预设差值。
具体地,当判定远端音频帧指纹与历史音频帧指纹匹配时,终端进一步判断自身与采集该远端音频帧指纹对应的远端音频数据的终端是否同属于一个局域网,和/或,判断自身与采集该远端音频数据的终端之间的距离是否小于预设距离,和/或,判断自身与采集该远端音频数据的终端距离同一超声接收器的距离差小于预设差值。当判定自身与采集远端音频数据的终端同属于一个局域网时,和/或,当判定自身与采集远端音频数据的终端之间的距离小于预设距离时,和/或,当判定自身与采集远端音频数据的终端距离同一超声接收器的距离小于预设差值时,终端则判定存在多音频采集源。
在一个实施例中,服务器监测接入多人会话的终端中是否存在同属于一个局域网的至少两个终端,若存在,则向该至少两个终端分别发送表示存在至少两个终端同属于一个局域网的提示信息。其中,提示信息可包括该至少两个终端的终端标识,也可以包括该至少两个终端中除接收该提示信息的终端之外的每个终端的终端标识。可以理解,终端可通过服务器获取多人会话中除自身以外的其他终端所接入的局域网标识,基于所接收到的局域网标识与自身所接入的局域网标识,判断多人会话中是否存在与自身同属于一个局域网的终端。
在一个实施例中,服务器接收多人会话中各个终端发送的定位信息,根据定位信息确定任意两个终端之间的距离,并向计算的距离小于预设距离的相应终端反馈表示存在存在距离小于预设距离的终端的提示信息。可以理解,终端也可接收服务器发送的多人会话中除自身以外的其他终端的位置信息,基于所接收到的位置信息和自身的位置信息确定是否存在与自身的距离小于预设距离的终端。其中,位置信息可以是GPS定位信息,具体可以是经纬度坐标信息。
在一个实施例中,超声接收器接收多人会话中的至少一个终端发送的超声波,基于所接收到的超声波计算该至少一个终端距离自身的距离。当分别计算出多个终端距离自身的距离时,超声接收器基于计算出的距离分别计算该多个终端中的任意两个终端相对于自身的距离差,并向距离差小于预设差值的终端反馈表示距离差小于预设差值的提示信息。
上述实施例中,基于多人会话中各终端所接入的局域网、相互之间的距离和距离超声接收器的距离差中的至少一个,以及远端音频指纹和历史音频指纹之间的匹配度进行多音频采集源的检测,能够提高检测的准确性。
在一个实施例中,步骤S210之后,上述多音频采集源检测方法还包括:触发生成提示信息;将提示信息进行展示,和/或,将提示信息推送至多人会话中除自身之外的每个终端。
其中,提示信息是用于提示存在多音频采集源的信息。提示信息具体可携带有多音频采集源中除自身以外的其他终端的终端标识,也可携带有该多音频采集源中各个终端的终端标识。可以理解,存在多音频采集源表明存在多人会话中存在多个终端同属于一个区域。
具体地,终端判定存在多音频采集源后,也就是判定多人会话中存在与自身处于同一区域的其他终端后,触发生成提示信息。终端将所生成的提示信息通过用户操作界面进行展示,和/或,通过服务器将所生成的提示信息推送至多人会话中出自身以外的每个终端。
在一个实施例中,终端判定多人会话中存在与自身处于同一区域的终端后,触发生成携带该与自身处于同一区域的终端的终端标识和/或该终端对应的用户标识的提示信息,并将提示信息进行展示。提示信息比如“XX与您同属于一个区域,发言时请对其禁麦”。可以理解,提示信息中也可不携带终端标识和用户标识,比如“存在与您同属于一个区域的终端,发言时请对其禁麦”。举例只是一个示例,并不用于对提示信息进行限定。
在一个实施例中,终端通过服务器将携带多人会话中处于同一区域的终端对应的终端标识和/或用户标识的提示信息发送至除自身以外的每个终端,以使得参与多人会话的每个用户通过相应终端确定当前处于同一区域的终端或用户。提示信息比如“XX和YY处于同一区域”。可以理解,若多人会话是VOIP会议,则可确定是否存在至少两个用户处于同一会场。
在一个实施例中,在判定存在多音频采集源后,终端可通过判断相应用户是否处于发言状态来自动控制声音采集装置的语音采集状态。声音采集装置比如麦克风。可以理解,服务器在检测到存在多音频采集源时,可通过发送麦克风控制指令来控制麦克风的语音采集状态,或者,对从该多音频采集源接收到的相同音频数据进行处理,得到相同处理后的单一音频数据,并发送至多人会话中的各个终端。其中,服务器可从多音频采集源分别发送的相同音频数据中筛选一路质量最好的音频数据,并将筛选出的音频数据发送至多人会话中除采集该音频数据的终端以外的其他终端。服务器也可将多音频采集源采集的相同音频数据进行混流处理,并将混流处理后的音频数据发送至多人会话中的每个终端。
上述实施例中,在判定存在多音频采集源后,触发生成提示信息,以指示相应终端进行适应性处理,从而能够提高多人会话的质量。
在一个具体的实施例中,在多人会话的场景中,可能存在同一地点/区域多个终端接入的情况。多人会话比如多人会议。假设多人会议对应有多个会场,至少一个会场中有至少两个用户通过各自的终端接入该多人会议。例如,处于同一会场中的甲和乙通过各自的终端接入多人会议,甲对应的终端记为第一终端,乙对应的终端记为第二终端。目前,当甲发言时,第一终端和第二终端均会采集该发言对应的音频数据,并将所采集到的音频数据分别通过网络传输至多人会议中除自身以外的其他终端。而第一终端和第二终端各自发送的音频数据传输至其他终端的时延不一样,由此,多人会议中的其他用户会收听到两个重叠的音频数据,也就是收听者会体验到发言的声音出现重叠。当甲发言时,第一终端采集到的音频数据质量较好,而离甲一定距离的第二终端采集到的音频数据则质量较差,还可能存在不完整的片段音频数据,导致收听体验极差。
可以理解,当第一终端和第二终端均通过已开启的麦克风采集音频数据,在二者均未开启扬声器的情况下,甲和乙则不能感知到多人会议中存在的音频数据重叠的情况,也就是不能感知到当前会话质量差的问题,由此不能及时进行相应处理,以提高会话质量。通过本申请中的一个或多个实施例中提供的多音频采集源检测的方法,终端能够及时检测到存在多音频采集源的场景,也就是能及时检测到多人会话中因存在重叠的相同音频数据而导致会话质量差的问题,并触发相应的提示信息,以指示甲和/或乙及时进行相应的处理,从而能够提高会话质量。多人会话中的各个终端均可执行本申请中的一个或多个实施例中提供的多音频采集源检测方法。
图6为一个实施例中多音频采集源检测方法的流程图。终端从多人会话中获取当前播放的由其他终端采集的远端音频数据,对该远端音频数据进行时域分帧及重采样得到远端音频帧,对远端音频帧进行音频能量分析得到相应的远端音频帧指纹。相应地,终端从队列中获取本地采集的历史音频数据,对改历史音频数据进行时域分帧及重采样得到历史音频帧,对历史音频帧进行音频能量分析得到相应的历史音频帧指纹。进一步地,终端基于远端音频帧指纹和历史音频帧指纹判断是否存在多音频采集源,若判定不存在多音频采集源,则跳转至步骤从多人会话中获取当前播放的由其他终端采集的远端音频数据,和/或,步骤从队列中获取本地采集的历史音频数据继续执行。若判定存在多音频采集源,则相应的触发提示信息。
如图7所示,在一个实施例中,提供了一种多音频采集源检测方法,该方法具体包括以下步骤:
S702,获取多人会话中当前播放的远端音频数据。
S704,对远端音频数据进行时域分帧,得到初始音频帧。
S706,对初始音频帧中的音频数据进行重采样,得到远端音频帧。
S708,将远端音频帧中的音频数据从时域变换到频域,得到音频帧频域数据。
S710,对音频帧频域数据进行频带划分,得到多个音频帧频带。
S712,获取多个音频帧频带各自的频带能量。
S714,根据每个音频帧频带与相邻音频帧频带之间的频带能量差值,以及相邻音频帧频域数据中相同位置处的音频帧频带对应的频带能量差值,得到每个音频帧频带对应的音频能量特征值。
S716,根据多个音频帧频带各自的音频能量特征值,获得远端音频帧对应的远端音频指纹。
S718,从用于存储本地采集的历史音频数据的、且持续更新的队列中,读取历史音频数据。
S720,对历史音频数据进行时域分帧,得到初始音频帧。
S722,对初始音频帧中的音频数据进行重采样,得到历史音频帧。
S724,将历史音频帧中的音频数据从时域变换到频域,得到音频帧频域数据。
S726,对音频帧频域数据进行频带划分,得到多个音频帧频带。
S728,获取多个音频帧频带各自的频带能量。
S730,根据每个音频帧频带与相邻音频帧频带之间的频带能量差值,以及相邻音频帧频域数据中相同位置处的音频帧频带对应的频带能量差值,得到每个音频帧频带对应的音频能量特征值。
S732,根据多个音频帧频带各自的音频能量特征值,获得历史音频帧对应的历史音频指纹。
S734,当远端音频帧指纹与历史音频帧指纹匹配时,判定存在多音频采集源。
上述实施例中,对从多人会话中获取的当前播放的远端音频数据,以及从队列中获取的本地采集的历史音频数据进行相同的处理,并根据处理得到的远端音频帧指纹和历史音频帧指纹进行多音频采集源的检测,能够提高检测的准确性。
如图8所示,在一个实施例中,提供了一种多音频采集源检测方法,该方法具体包括以下步骤:
S802,获取多人会话中当前播放的远端音频数据。
S804,对远端音频数据进行处理,获得远端音频帧指纹。
S806,获取远端音频帧指纹之前、且最近的预设数量的历史远端音频帧指纹。
S808,根据远端音频帧指纹和历史远端音频帧指纹得到远端音频指纹。
S810,从用于存储本地采集的历史音频数据的、且持续更新的队列中,读取历史音频数据。
S812,获取随机噪声。
S814,基于随机噪声对读取的历史音频数据进行预处理。
S816,对预处理后的历史音频数据进行处理,获得历史音频帧指纹。
S818,根据历史音频帧指纹得到历史音频指纹。
S820,当远端音频指纹和历史音频指纹匹配时,判定存在多音频采集源。
S822,触发生成提示信息。
S824,将提示信息进行展示,和/或,将提示信息推送至多人会话中除自身之外的每个终端。
上述实施例中,对历史音频数据进行随机噪声处理,以避免静音对多音频采集源的检测结果的影响,能够提高检测的准确性,对远端音频数据和处理后的历史音频数据进行相同的处理,且基于处理得到的远端音频帧指纹得到远端音频指纹,以及基于历史音频帧指纹得到历史音频指纹,并基于更高维度的远端音频指纹和历史音频指纹进行多音频采集源的检测,能够进一步提高检测的准确性。进一步地,在检测到多音频采集源后,触发提示信息,以指示用户进行相应的处理,从而能够提高多人会话的会话质量。
应该理解的是,虽然本申请各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图9所示,在一个实施例中,提供了一种多音频采集源检测装置900,该装置包括:获取模块902、处理模块904、读取模块906和检测模块908,其中,
获取模块902,用于获取多人会话中当前播放的远端音频数据。
处理模块904,用于对远端音频数据进行处理,获得远端音频帧指纹。
读取模块906,用于从用于存储本地采集的历史音频数据的、且持续更新的队列中,读取历史音频数据。
处理模块904,还用于对读取的历史音频数据进行处理,获得历史音频帧指纹。
检测模块908,用于当远端音频帧指纹与历史音频帧指纹匹配时,判定存在多音频采集源。
在一个实施例中,处理模块904,还用于对目标音频数据进行时域分帧,得到初始音频帧;目标音频数据为远端音频数据或读取的历史音频数据;对初始音频帧中的音频数据进行重采样,得到目标音频帧;将目标音频帧中的音频数据从时域变换到频域,得到音频帧频域数据;根据音频帧频域数据得到目标音频帧对应的目标音频帧指纹;目标音频帧指纹为远端音频帧指纹或历史音频帧指纹。
在一个实施例中,处理模块904,还用于对音频帧频域数据进行频带划分,得到多个音频帧频带;获取多个音频帧频带各自的频带能量;根据每个音频帧频带与相邻音频帧频带之间的频带能量差值,以及相邻音频帧频域数据中相同位置处的音频帧频带对应的频带能量差值,得到每个音频帧频带对应的音频能量特征值;根据多个音频帧频带各自的音频能量特征值,获得目标音频帧对应的目标音频帧指纹。
在一个实施例中,处理模块904,还用于获取随机噪声;基于随机噪声对读取的历史音频数据进行预处理;对预处理后的历史音频数据进行处理,获得历史音频帧指纹。
在一个实施例中,检测模块908,还用于获取远端音频帧指纹之前、且最近的预设数量的历史远端音频帧指纹;根据远端音频帧指纹和历史远端音频帧指纹得到远端音频指纹;根据历史音频帧指纹得到历史音频指纹;当远端音频指纹和历史音频指纹匹配时,判定存在多音频采集源。
在一个实施例中,检测模块908,还用于当远端音频帧指纹与历史音频帧指纹匹配、且以下条件中的至少一个满足时,判定存在多音频采集源;以下条件包括:自身与采集远端音频数据的终端同属于一个局域网;自身与采集远端音频数据的终端之间的距离小于预设距离;自身与采集远端音频数据的终端距离同一超声接收器的距离差小于预设差值。
在一个实施例中,检测模块908,还用于触发生成提示信息;将提示信息进行展示,和/或,将提示信息推送至多人会话中除自身之外的每个终端。
图10示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的终端110。如图10所示,该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置、显示屏、声音采集装置和扬声器。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现多音频采集源检测方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行多音频采集源检测方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的多音频采集源检测装置可以实现为一种计算机程序的形式,计算机程序可在如图10所示的计算机设备上运行。计算机设备的存储器中可存储组成该多音频采集源检测装置的各个程序模块,比如,图9所示的获取模块、处理模块、读取模块和检测模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的多音频采集源检测方法中的步骤。
例如,图10所示的计算机设备可以通过如图9所示的多音频采集源检测装置中的获取模块执行步骤S202。计算机设备可通过处理模块执行步骤S204和步骤S208。计算机设备可通过读取模块执行步骤S206。计算机设备可通过检测模块执行步骤S210。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述多音频采集源检测方法的步骤。此处多音频采集源检测方法的步骤可以是上述各个实施例的多音频采集源检测方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述多音频采集源检测方法的步骤。此处多音频采集源检测方法的步骤可以是上述各个实施例的多音频采集源检测方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种多音频采集源检测方法,包括:
获取多人会话中当前播放的远端音频数据;
对所述远端音频数据进行处理,获得远端音频帧指纹;
从用于存储本地采集的历史音频数据的、且持续更新的队列中,读取历史音频数据;
对读取的历史音频数据进行处理,获得历史音频帧指纹;
当所述远端音频帧指纹与所述历史音频帧指纹匹配时,判定存在多音频采集源。
2.根据权利要求1所述的方法,其特征在于,所述处理包括:
对目标音频数据进行时域分帧,得到初始音频帧;所述目标音频数据为所述远端音频数据或读取的所述历史音频数据;
对所述初始音频帧中的音频数据进行重采样,得到目标音频帧;
将所述目标音频帧中的音频数据从时域变换到频域,得到音频帧频域数据;
根据所述音频帧频域数据得到所述目标音频帧对应的目标音频帧指纹;所述目标音频帧指纹为所述远端音频帧指纹或所述历史音频帧指纹。
3.根据权利要求2所述的方法,其特征在于,所述根据所述音频帧频域数据得到所述目标音频帧对应的目标音频帧指纹,包括:
对所述音频帧频域数据进行频带划分,得到多个音频帧频带;
获取所述多个音频帧频带各自的频带能量;
根据每个音频帧频带与相邻音频帧频带之间的频带能量差值,以及相邻音频帧频域数据中相同位置处的音频帧频带对应的频带能量差值,得到所述每个音频帧频带对应的音频能量特征值;
根据所述多个音频帧频带各自的音频能量特征值,获得所述目标音频帧对应的目标音频帧指纹。
4.根据权利要求1所述的方法,其特征在于,所述对读取的历史音频数据进行处理,获得历史音频帧指纹,包括:
获取随机噪声;
基于所述随机噪声对读取的历史音频数据进行预处理;
对预处理后的历史音频数据进行处理,获得历史音频帧指纹。
5.根据权利要求1所述的方法,其特征在于,所述当所述远端音频帧指纹与所述历史音频帧指纹匹配时,判定存在多音频采集源,包括:
获取所述远端音频帧指纹之前、且最近的预设数量的历史远端音频帧指纹;
根据所述远端音频帧指纹和所述历史远端音频帧指纹得到远端音频指纹;
根据所述历史音频帧指纹得到历史音频指纹;
当所述远端音频指纹和所述历史音频指纹匹配时,判定存在多音频采集源。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述当所述远端音频帧指纹与所述历史音频帧指纹匹配时,判定存在多音频采集源,还包括:
当所述远端音频帧指纹与所述历史音频帧指纹匹配、且以下条件中的至少一个满足时,判定存在多音频采集源;
所述以下条件包括:
自身与采集所述远端音频数据的终端同属于一个局域网;
自身与采集所述远端音频数据的终端之间的距离小于预设距离;
自身与采集所述远端音频数据的终端距离同一超声接收器的距离差小于预设差值。
7.根据权利要求1至5中任一项所述的方法,其特征在于,所述当所述远端音频帧指纹与所述历史音频帧指纹匹配时,判定存在多音频采集源之后,所述方法还包括:
触发生成提示信息;
将所述提示信息进行展示,和/或,将所述提示信息推送至所述多人会话中除自身之外的每个终端。
8.一种多音频采集源检测装置,其特征在于,所述装置包括:
获取模块,用于获取多人会话中当前播放的远端音频数据;
处理模块,用于对所述远端音频数据进行处理,获得远端音频帧指纹;
读取模块,用于从用于存储本地采集的历史音频数据的、且持续更新的队列中,读取历史音频数据;
所述处理模块,还用于对读取的历史音频数据进行处理,获得历史音频帧指纹;
检测模块,用于当所述远端音频帧指纹与所述历史音频帧指纹匹配时,判定存在多音频采集源。
9.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述方法的步骤。
10.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述方法的步骤。
CN201910671632.3A 2019-07-24 2019-07-24 多音频采集源检测方法、装置、存储介质和计算机设备 Active CN110289013B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910671632.3A CN110289013B (zh) 2019-07-24 2019-07-24 多音频采集源检测方法、装置、存储介质和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910671632.3A CN110289013B (zh) 2019-07-24 2019-07-24 多音频采集源检测方法、装置、存储介质和计算机设备

Publications (2)

Publication Number Publication Date
CN110289013A true CN110289013A (zh) 2019-09-27
CN110289013B CN110289013B (zh) 2023-12-19

Family

ID=68022328

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910671632.3A Active CN110289013B (zh) 2019-07-24 2019-07-24 多音频采集源检测方法、装置、存储介质和计算机设备

Country Status (1)

Country Link
CN (1) CN110289013B (zh)

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080243494A1 (en) * 2007-03-28 2008-10-02 Kabushiki Kaisha Toshiba Dialog detecting apparatus, dialog detecting method, and computer program product
CN102214219A (zh) * 2011-06-07 2011-10-12 盛乐信息技术(上海)有限公司 音视频内容检索系统及其方法
CN102281425A (zh) * 2010-06-11 2011-12-14 华为终端有限公司 一种播放远端与会人员音频的方法、装置及远程视频会议系统
CN102760434A (zh) * 2012-07-09 2012-10-31 华为终端有限公司 一种声纹特征模型更新方法及终端
CN102930868A (zh) * 2012-10-24 2013-02-13 北京车音网科技有限公司 身份识别方法和装置
US20140163970A1 (en) * 2012-11-29 2014-06-12 Huawei Technologies Co., Ltd. Method for classifying voice conference minutes, device, and system
CN103971689A (zh) * 2013-02-04 2014-08-06 腾讯科技(深圳)有限公司 一种音频识别方法及装置
CN104184697A (zh) * 2013-05-20 2014-12-03 百度在线网络技术(北京)有限公司 一种音频指纹的提取方法及系统
CN104464726A (zh) * 2014-12-30 2015-03-25 北京奇艺世纪科技有限公司 一种相似音频的确定方法及装置
CN107918663A (zh) * 2017-11-22 2018-04-17 腾讯科技(深圳)有限公司 音频文件检索方法及装置
CN109065023A (zh) * 2018-08-23 2018-12-21 广州势必可赢网络科技有限公司 一种语音鉴定方法、装置、设备及计算机可读存储介质
CN109102811A (zh) * 2018-07-27 2018-12-28 广州酷狗计算机科技有限公司 音频指纹的生成方法、装置及存储介质
CN109525800A (zh) * 2018-11-08 2019-03-26 江西国泰利民信息科技有限公司 一种远程会议语音识别数据传输方法
US20190139557A1 (en) * 2017-11-08 2019-05-09 PlayFusion Limited Audio recognition apparatus and method
CN109829515A (zh) * 2019-03-07 2019-05-31 北京市博汇科技股份有限公司 一种音频指纹匹配方法以及音频指纹匹配装置

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080243494A1 (en) * 2007-03-28 2008-10-02 Kabushiki Kaisha Toshiba Dialog detecting apparatus, dialog detecting method, and computer program product
CN102281425A (zh) * 2010-06-11 2011-12-14 华为终端有限公司 一种播放远端与会人员音频的方法、装置及远程视频会议系统
CN102214219A (zh) * 2011-06-07 2011-10-12 盛乐信息技术(上海)有限公司 音视频内容检索系统及其方法
CN102760434A (zh) * 2012-07-09 2012-10-31 华为终端有限公司 一种声纹特征模型更新方法及终端
CN102930868A (zh) * 2012-10-24 2013-02-13 北京车音网科技有限公司 身份识别方法和装置
US20140163970A1 (en) * 2012-11-29 2014-06-12 Huawei Technologies Co., Ltd. Method for classifying voice conference minutes, device, and system
CN103971689A (zh) * 2013-02-04 2014-08-06 腾讯科技(深圳)有限公司 一种音频识别方法及装置
CN104184697A (zh) * 2013-05-20 2014-12-03 百度在线网络技术(北京)有限公司 一种音频指纹的提取方法及系统
CN104464726A (zh) * 2014-12-30 2015-03-25 北京奇艺世纪科技有限公司 一种相似音频的确定方法及装置
US20190139557A1 (en) * 2017-11-08 2019-05-09 PlayFusion Limited Audio recognition apparatus and method
CN107918663A (zh) * 2017-11-22 2018-04-17 腾讯科技(深圳)有限公司 音频文件检索方法及装置
CN109102811A (zh) * 2018-07-27 2018-12-28 广州酷狗计算机科技有限公司 音频指纹的生成方法、装置及存储介质
CN109065023A (zh) * 2018-08-23 2018-12-21 广州势必可赢网络科技有限公司 一种语音鉴定方法、装置、设备及计算机可读存储介质
CN109525800A (zh) * 2018-11-08 2019-03-26 江西国泰利民信息科技有限公司 一种远程会议语音识别数据传输方法
CN109829515A (zh) * 2019-03-07 2019-05-31 北京市博汇科技股份有限公司 一种音频指纹匹配方法以及音频指纹匹配装置

Also Published As

Publication number Publication date
CN110289013B (zh) 2023-12-19

Similar Documents

Publication Publication Date Title
JP6849797B2 (ja) 音響信号の聴取試験および変調
WO2021179651A1 (zh) 通话音频混音处理方法、装置、存储介质和计算机设备
CN111489760B (zh) 语音信号去混响处理方法、装置、计算机设备和存储介质
KR101255404B1 (ko) 컴퓨터 시스템에서 에코 소거를 적용할지를 판정하는 방법,컴퓨터 시스템에서 에코 소거 알고리즘을 구성하는 방법및 에코 소거 알고리즘을 구성하는 컴퓨터 시스템
US8606249B1 (en) Methods and systems for enhancing audio quality during teleconferencing
EP0981888B1 (en) Testing telecommunications equipment
US10142483B2 (en) Technologies for dynamic audio communication adjustment
WO2020041497A1 (en) Speech enhancement and noise suppression systems and methods
US10978085B2 (en) Doppler microphone processing for conference calls
CN109727607B (zh) 时延估计方法、装置及电子设备
US20140329511A1 (en) Audio conferencing
US9774743B2 (en) Silence signatures of audio signals
CN103024224B (zh) 一种多人语音通信中的语音控制方法及装置
US20180048683A1 (en) Private communications in virtual meetings
JP2024507916A (ja) オーディオ信号の処理方法、装置、電子機器、及びコンピュータプログラム
CN112634932A (zh) 音频信号处理方法、装置、服务器及相关设备
CN110289013A (zh) 多音频采集源检测方法、装置、存储介质和计算机设备
CN110708432B (zh) 音频会议中音频输出的方法、系统、设备及存储介质
TWI519123B (zh) 電話語音輸出之方法,用於電話語音之電腦程式產品及可撥打電話之電子裝置
US20240064229A1 (en) Speakerphone with room acoustics characterization and related methods
EP3933832A1 (en) A method and a speech-based system for automatically detecting synthesized or natural speech in a speech-based system and a computer program
CN115442485A (zh) 音频信号处理方法、装置、设备及存储介质
CN116453534A (zh) 远程介入手术的混音方法、装置、设备和介质
CN115563502A (zh) 一种异常号码识别方法、装置、电子设备及存储介质
CN118075246A (zh) 抖动缓冲区大小的调整方法、装置和计算机设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40013084

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant