CN117118956B - 音频处理方法、装置、电子设备及计算机可读存储介质 - Google Patents
音频处理方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN117118956B CN117118956B CN202311390913.4A CN202311390913A CN117118956B CN 117118956 B CN117118956 B CN 117118956B CN 202311390913 A CN202311390913 A CN 202311390913A CN 117118956 B CN117118956 B CN 117118956B
- Authority
- CN
- China
- Prior art keywords
- audio data
- audio
- channel
- data
- similarity
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 39
- 238000012545 processing Methods 0.000 claims abstract description 83
- 238000001914 filtration Methods 0.000 claims abstract description 80
- 238000000034 method Methods 0.000 claims abstract description 61
- 238000001228 spectrum Methods 0.000 claims description 53
- 238000009432 framing Methods 0.000 claims description 47
- 230000003595 spectral effect Effects 0.000 claims description 42
- 238000005070 sampling Methods 0.000 claims description 38
- 230000008569 process Effects 0.000 claims description 31
- 230000015654 memory Effects 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 15
- 230000009466 transformation Effects 0.000 claims description 12
- 238000009499 grossing Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 8
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 230000006854 communication Effects 0.000 abstract description 23
- 238000004891 communication Methods 0.000 abstract description 21
- 230000005236 sound signal Effects 0.000 description 120
- 230000006870 function Effects 0.000 description 22
- 238000004364 calculation method Methods 0.000 description 12
- 230000003044 adaptive effect Effects 0.000 description 8
- 238000013473 artificial intelligence Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000008685 targeting Effects 0.000 description 6
- 108010076504 Protein Sorting Signals Proteins 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 241000209140 Triticum Species 0.000 description 1
- 235000021307 Triticum Nutrition 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/765—Media network packet handling intermediate
-
- 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/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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/48—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
- G10L25/51—Speech 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/403—Arrangements for multi-party communication, e.g. for conferences
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Computer Networks & Wireless Communication (AREA)
- Quality & Reliability (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请提供了一种音频处理方法、装置、电子设备及计算机可读存储介质;方法包括:响应于音频通话中存在多个通道的音频数据,获取多个通道的音频数据;确定音频数据之间的相似度;基于相似度,从多个通道中确定出至少一个通道组,其中,每个通道组包括至少两个通道的音频数据,每个通道组包括的音频数据对应的录音设备位于同一空间;对每个通道组包括的至少一个通道的音频数据进行滤波处理,得到滤波后的音频数据,其中,滤波后的音频数据用于音频通话。通过本申请,能够无需人工干预,即可在音频通话中判断出录音设备处于同一空间的多个音频数据,并进行音频滤波处理,提高音频通话的质量。
Description
技术领域
本申请涉及数据处理技术,尤其涉及一种音频处理方法、装置、电子设备及计算机可读存储介质。
背景技术
在一些多人实时通话场景中,一般允许三个或者更多人同时进行实时语音或视频通话,而参与通话的每一方都可以通过各自不同的设备(例如终端或者录音设备)收听其他方所发送的音频信号。如果存在多个参与方在同一现场进行通话,设备在同一时刻采集多个音频信号、发送到服务解码的过程则会存在先后顺序,而服务器处理多个音频信号并转发到接收方就会有时间差。这会使接收方的设备接收到服务器转发的多个音频信号、并解码播放声音时,可能产生重叠音或者混响杂音,声音清晰度不佳。而实时通话场景中又无法准确判断是否存在多个参与方在同一现场参与通话,降低了实时通话的质量。
当接收方所接收并播放的声音出现明显重叠音时,一般都凭借通话经验来判断存在多个通话参与方处于同一现场。然后利用人工反馈的方法,通知处于同一现场且设备都处于开麦状态的多个通话参与方,让部分通话参与方关闭自己的设备麦克风,只保持其中一个通话参与方设备处于开麦状态,作为最终的录音声源完成声音的传输交互。经过这种人工操作后接收方所接收并播放的声音才趋于正常。但是并非大部分用户都有这类通话经验,且人工反馈的操作繁琐,无法准确判断存在多个通话参与方处于同一现场。在通话环境和网络环境差的情况下,仍然会使整个实时通话过程都存在声音收听阻碍。
发明内容
本申请实施例提供一种音频处理方法、装置、电子设备及计算机可读存储介质,能够无需人工干预,即可在音频通话中判断出录音设备处于同一空间的多个音频数据,并进行音频滤波处理,提高音频通话的质量。
本申请实施例的技术方案是这样实现的:
本申请实施例提供一种音频处理方法,所述方法包括:
响应于音频通话中存在多个通道的音频数据,获取所述多个通道的音频数据,其中,一个通道的音频数据来源于一个录音设备;
确定所述音频数据之间的相似度;
基于所述相似度,从所述多个通道中确定出至少一个通道组,其中,每个所述通道组包括至少两个通道的音频数据,每个所述通道组包括的音频数据对应的录音设备位于同一空间;
对每个所述通道组包括的至少一个通道的音频数据进行滤波处理,得到滤波后的音频数据,其中,所述滤波后的音频数据用于所述音频通话。
本申请实施例提供一种音频处理装置,包括:
获取模块,用于响应于音频通话中存在多个通道的音频数据,获取所述多个通道的音频数据,其中,一个通道的音频数据来源于一个录音设备;
确定模块,用于确定所述音频数据之间的相似度;
所述确定模块,还用于基于所述相似度,从所述多个通道中确定出至少一个通道组,其中,每个所述通道组包括至少两个通道的音频数据,每个所述通道组包括的音频数据对应的录音设备位于同一空间;
滤波模块,用于对每个所述通道组包括的至少一个通道的音频数据进行滤波处理,得到滤波后的音频数据,其中,所述滤波后的音频数据用于所述音频通话。
本申请实施例提供一种电子设备,包括:
存储器,用于存储计算机可执行指令或计算机程序;
处理器,用于执行所述存储器中存储的计算机可执行指令或计算机程序时,实现本申请实施例提供的音频处理方法。
本申请实施例提供一种计算机可读存储介质,存储有计算机可执行指令或计算机程序,用于被处理器执行时实现本申请实施例提供的音频处理方法。
本申请实施例提供一种计算机程序产品,包括计算机可执行指令或计算机程序,所述计算机可执行指令或计算机程序被处理器执行时,实现本申请实施例提供的音频处理方法。
本申请实施例具有以下有益效果:
通过本申请实施例,在音频通话中确定多个通道的音频数据之间的相似度,再基于相似度,从多个通道中确定出至少一个通道组,以此来确定出录音设备处于同一空间的多个音频数据。接下来再对通道组中的多个音频数据进行滤波处理,得到滤波后的音频数据用于音频通话。由此无需通过人工干预和反馈,在音频通话中就可以确定是否存在多个录音设备处于同一空间。再对录音设备处于同一空间的多个音频数据进行滤波处理,旨在通过音频滤波来消除播放声音时产生的重叠音或混响杂音,提高音频通话的质量。
附图说明
图1是本申请实施例提供的音频处理***架构的结构示意图;
图2是本申请实施例提供的电子设备的结构示意图;
图3A是本申请实施例提供的音频处理方法的流程示意图一;
图3B是本申请实施例提供的音频处理方法的流程示意图二;
图3C是本申请实施例提供的音频处理方法的流程示意图三;
图3D是本申请实施例提供的音频处理方法的流程示意图四;
图3E是本申请实施例提供的音频处理方法的流程示意图五;
图3F是本申请实施例提供的音频处理方法的流程示意图六;
图3G是本申请实施例提供的音频处理方法的流程示意图七;
图3H是本申请实施例提供的音频处理方法的流程示意图八;
图3I是本申请实施例提供的音频处理方法的流程示意图九;
图3J是本申请实施例提供的音频处理方法的流程示意图十;
图4是本申请实施例提供的多人实时通话场景示意图;
图5是本申请实施例提供的语音数据处理方法的处理流程图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
除非另有定义,本申请实施例所使用的所有的技术和科学术语与所属技术领域的技术人员通常理解的含义相同。本申请实施例中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1)音频信号,指带有语音、音乐和音效的信息载体,一般都存在有规律的声波频率、幅度变化。音频信号具有音调、音强和音色等特征属性,可分为规则音频和不规则音频,其中规则音频又可以分为语音、音乐和音效,是一种连续变化的模拟信号。
2)通道,指声音的音频通道,具体为声音在录制或播放时,在不同空间位置采集或回放的相互独立的音频信号,一个音频通道一般对应来源于一个音频设备(如终端或者录音设备)。而多个音频通道一般对应来源于多个音频设备,也可以来源于一个音频设备,即这个音频设备可以接收多个通道的音频信号。
本申请实施例提供一种音频处理方法、装置、电子设备、计算机可读存储介质和计算机程序产品,能够无需人工干预,即可在音频通话中判断出录音设备处于同一空间的多个音频数据,并进行音频滤波处理,提高音频通话的质量。
下面说明本申请实施例提供的电子设备的示例性应用,本申请实施例提供的设备可以实施为笔记本电脑、平板电脑,台式计算机、机顶盒、移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)、智能手机、智能音箱、智能手表、智能电视、车载终端等各种类型的用户终端,也可以实施为服务器。
参见图1,图1是本申请实施例提供的数据处理***100的架构示意图,终端400通过网络300连接服务器200,网络300可以是广域网或者局域网,又或者是二者的组合。
终端400连接有录音设备或者携带有录音功能,运行着各种与音频通话(例如语音通话或者视频通话)有关的应用程序(Application,APP),例如可以是即时通信APP、阅读APP、视频APP、游戏APP,或者其他可以进行音频通话的软件程序。多个(至少三个)用户可以通过终端400的应用程序进行多人实时音频通话,当有部分用户在音频通话过程中发出声音进行交互时,终端400或者终端400的录音设备会采集这些声音通道的音频数据(例如音频信号),然后将采集的多个通道的音频数据通过网络300发送到服务器200,服务器200判断出音频通话中存在多个通道的音频数据后获取多个通道的音频数据,然后确定音频数据之间的相似度,再基于相似度,从多个通道中确定出至少一个通道组。接下来对每个通道组包括的至少一个通道的音频数据进行滤波处理,得到滤波后的音频数据,最后把滤波后的音频数据通过网络300返回到终端400中。终端400或终端400的录音设备会将服务器200返回的滤波后的音频数据进行解码,并播放出声音用于音频通话。参与多人实时音频通话的各个用户在终端400应用程序中就都可以收听到解码播放的声音。
在一些实施例中,服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content DeliveryNetwork,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端400可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、车载终端等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。
本申请实施例可以借助人工智能(Artificial Intelligence,AI)技术实现,是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
以本申请实施例提供的服务器为例,例如可以部署在云端的服务器集群,从而向用户或开发者开放人工智能云服务(AI as a Service,AIaaS),AIaaS平台会把几类常见的AI服务进行拆分,并在云端提供独立或者打包的服务。这种服务模式类似于开了一个AI主题商城,所有的用户或开发者都可以通过应用程序编程接口的方式来接入使用AIaaS平台提供的一种或者多种人工智能服务。
例如,云端的服务器封装有本申请实施例提供的音频处理方法的程序。用户通过携带有录音功能的终端(终端运行有APP,例如即时通信APP、阅读APP等)调用云服务中的音频处理服务,以使部署在云端的服务器调用封装的数音频处理方法的程序。当多个(至少三个)用户可以通过终端的应用程序进行多人实时音频通话且部分用户发出声音进行交互时,终端的录音功能会采集这些声音的音频数据(例如音频信号),然后将采集多个通道的音频数据发送到云端的服务器,云端的服务器判断出音频通话中存在多个通道的音频数据后获取多个通道的音频数据,然后确定音频数据之间的相似度,再基于相似度,从多个通道中确定出至少一个通道组。接下来对每个通道组包括的至少一个通道的音频数据进行滤波处理,得到滤波后的音频数据,最后把滤波后的音频数据返回到终端。终端的录音功能会将返回的滤波后的音频数据进行解码,并播放出声音。各个用户在终端应用程序中就都可以收听到解码播放的声音。
本申请实施例提供的音频处理方法还可以在终端进行实现,当多个(至少三个)用户通过终端的应用程序进行多人实时音频通话且部分用户发出声音进行交互时,终端会采集这些声音的音频数据(例如音频信号),判断出音频通话中存在多个通道的音频数据后,直接获取多个通道的音频数据。然后确定音频数据之间的相似度,再基于相似度,从多个通道中确定出至少一个通道组。接下来对每个通道组包括的至少一个通道的音频数据进行滤波处理,得到滤波后的音频数据。最后直接利用录音功能对滤波后的音频数据进行解码,并播放出声音。各个用户在应用程序中就可以直接收听到解码播放的声音。
参见图2,图2是本申请实施例提供的服务器200的结构示意图,图2所示的服务器200包括:至少一个处理器410、存储器450、至少一个网络接口420。服务器200中的各个组件通过总线***440耦合在一起。可理解,总线***440用于实现这些组件之间的连接通信。总线***440除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线***440。
处理器410可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(Digital Signal Processor,DSP),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
存储器450可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450可选地包括在物理位置上远离处理器410的一个或多个存储设备。
存储器450包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(Random Access Memory,RAM)。本申请实施例描述的存储器450旨在包括任意适合类型的存储器。
在一些实施例中,存储器450能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作***451,包括用于处理各种基本***服务和执行硬件相关任务的***程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块452,用于经由一个或多个(有线或无线)网络接口420到达其他电子设备,示例性的网络接口420包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(Universal Serial Bus,USB)等;
在一些实施例中,本申请实施例提供的装置可以采用软件方式实现,图2示出了存储在存储器450中的音频处理装置453,其可以是程序和插件等形式的软件,包括以下软件模块:获取模块4531、确定模块4532以及滤波模块4533,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。
在一些实施例中,终端或服务器可以通过运行各种计算机可执行指令或计算机程序来实现本申请实施例提供的音频处理方法。举例来说,计算机可执行指令可以是微程序级的命令、机器指令或软件指令。计算机程序可以是操作***中的原生程序或软件模块;可以是本地(Native)应用程序(Application,APP),即需要在操作***中安装才能运行的程序,如直播APP或者即时通信APP;也可以是可以嵌入至任意APP中的小程序,即只需要下载到浏览器环境中就可以运行的程序。总而言之,上述的计算机可执行指令可以是任意形式的指令,上述计算机程序可以是任意形式的应用程序、模块或插件。
将结合本申请实施例提供的服务器的示例性应用和实施,说明本申请实施例提供的音频处理方法。
参见图3A,图3A是本申请实施例提供的音频处理方法的流程示意图,以图1中所示的服务器200为执行主体,将结合图3A示出的步骤进行说明。
在步骤101中,响应于音频通话中存在多个通道的音频数据,获取多个通道的音频数据。
在一些多人实时音频通话的场景中,例如多人语音电话或视频电话、多人线上会议等。在这些场景中,参与通话的每一方(对应每个用户)都通过开启各自的录音设备来参与音频通话,这些设备可以是携带录音功能的终端或者通过终端外接的录音设备(例如麦克风)。当参与音频通话的某一方或者多方(即某一个用户或者多个用户)作为语音发送方发出声音时,录音设备均会采集这些声音通道的音频信号作为音频数据,然后上传到混音服务器或者选路服务器。如果是混音服务器则直接对音频数据进行编码和解码等处理,生成对应的声音发送到参与音频通话的其他方(其他用户)的录音设备中。如果是选路服务器则将音频数据发送到参与通话的其他方的录音设备中,其他方的录音设备则对音频数据进行编码和解码等处理,生成对应的声音。如此参与音频通话的其他方作为语音接收方,就可以通过录音设备收听到生成的声音。
在上述音频通话过程中,当参与音频通话的某一方或者多方(即某一个用户或者多个用户)发出声音时,对应的每个录音设备就会采集一个通道的音频数据,即参与音频通话的每一方发出的声音对应着一个通道的音频数据。当录音设备将采集的每个通道的音频数据进行发送后,此时就会判断发送的音频数据是否来源于多个通道。响应于音频通话中存在多个通道的音频数据,获取多个通道的音频数据,其中一个通道的音频数据来源于一个录音设备,同时也对应一个音频通话的参与方(即声音发送方)。即当确定音频通话中存在多个通道的音频数据,则说明需要对音频进行处理,则需要获取多个通道的音频数据。
在步骤102中,确定音频数据之间的相似度。
获取多个通道的音频数据后,就需要根据这些音频数据来确定每个通道的音频数据所来源的录音设备是否存在同一空间,也即判断实时通话场景中是否存在多个通话的参与方处于同一空间。本申请实施例中利用每个通道的音频数据之间的相似度,来确定每个通道的音频数据所来源的录音设备是否存在同一空间。具体的,先通过提取音频数据的特征,再比较特征之间的相似系数,最后利用相似系数来确定音频数据之间的相似度,下面具体说明。
在一些实施例中,参见图3B,图3A示出的步骤102可以通过以下步骤1021至步骤1023实现,下面具体说明。
在步骤1021中,确定音频数据的频谱特征。
在确定每个通道的音频数据之间的相似度时,首先需要提取音频数据的特征。本申请实施例中的音频数据可以为声音的音频信号,而音频信号的特征有多种。这里音频数据的特征选取为频谱特征,即需要确定音频数据的频谱特征,而频谱特征具体为音频信号的功率谱特征,下面说明提取音频数据的频谱特征的过程。
在一些实施例中,参见图3C,图3B示出的步骤1021可以通过以下步骤10211至步骤10213实现,下面具体说明。
在步骤10211中,对音频数据进行分帧处理,得到音频数据的多个分帧数据。
由于频谱特征与音频信号的频率有关,而音频信号又是由一帧一帧的信号组成的,每一帧音频信号在每个频率上都有对应的信号频率点。所以本申请实施例中在提取音频数据的频谱特征时,先对音频数据进行分帧处理,得到音频数据的多个分帧数据,也即将音频信号进行分帧处理,获得每一帧的音频信号。
分帧处理可以调用窗函数来实现,窗函数可以采用汉宁窗或者汉明窗,通过窗函数对音频数据进行加窗,来对音频数据进行分帧,从而得到音频数据的多个分帧数据,也即将音频信号分帧得到多个分帧信号,其中使用窗函数进行分帧处理计算方法如下公式(1):
(1);
上述公式(1)中,为将音频数据进行分帧处理后所得到的分帧数据,n为整
数,表示窗函数加窗的总长度,也即加窗的帧数时间间隔,取值范围为0到N-1,N为窗函数加
窗的最大有效长度。
在步骤10212中,对每个分帧数据进行基于多个频率的变换处理,得到每个分帧数据在多个频率的功率值。
承接上述实施例,通过调用窗函数对音频数据进行分帧处理,得到多个分帧数据后,再针对每个分帧数据,提取分帧数据在每个频率的频谱特征。本申请实施例中通过对每个分帧数据进行基于多个频率的变换处理,得到每个分帧数据在多个频率的功率值,这个功率值即为频谱特征的特征值,下面将说明具体的变换处理过程。
在一些实施例中,参见图3D,图3C示出的步骤10212可以通过以下步骤102121至步骤102124实现,下面具体说明。
在步骤102121中,对每个分帧数据进行采样处理,得到每个分帧数据在多个频率的采样点。
由于功率谱的计算过程是利用音频数据的信号序列进行功率谱估计,所以在对每个分帧数据进行基于多个频率的变换处理之前,需要确定分帧数据的音频序列(信号序列),这个信号序列可以是随机信号序列。本申请实施例中通过对每个分帧数据进行采样处理,得到每个分帧数据在多个频率的采样点,其中,采样的方法可以是进行随机采样,随机采样所得到的音频序列即为随机音频序列,采样点的个数可以根据分帧数据的数量进行设定,所得到的采样点实质上是分帧数据在每个频率上的样本值(即音频信号的信号幅度值)。
在步骤102122中,将多个频率的采样点进行拼接处理,得到分帧数据的音频序列。
承接上述实施例,获取到每个分帧数据在多个频率的采样点后,再将多个频率的采样点进行拼接处理,得到分帧数据的音频序列。可以将采样点按照分帧数据的时间先后顺序进行排序,再将多个频率的采样点进行拼接,组成音频序列。其中,拼接的方法可以按照时间顺序直接进行物理拼接,得到分帧数据的音频序列。
在步骤102123中,基于音频序列,对采样点进行频域变换处理,得到采样点的功率值。
针对每个分帧数据,获取分帧数据的音频序列后,再针对每个采样点,基于音频序列,对采样点进行频域变换处理,得到多个采样点的功率值。这里频域变换处理采用的是快速傅里叶变换(Fast Fourier Transform,FFT),通过对每个采样点进行快速傅里叶变换,就可以得到每个采样点的功率值。由此每个分帧数据都可以利用快速傅里叶变换得到多个采样点的功率值,这个功率值就是音频数据的频谱特征的特征值,即音频信号的功率谱特征的特征值。这里,快速傅里叶变换的计算方法如下公式(2):
(2);
上述公式(2)中,为采样点的功率值,i为当前分帧数据的帧数,为分
帧数据,N为每一帧分帧数据的频率总数,k表示频率,取值为大于0不大于N的整数,x(n)为
分帧数据n个频率的采样点所组成的音频序列。
在步骤102124中,将多个频率的采样点的功率值,作为分帧数据在多个频率的功率值。
由于对分帧数据进行采样处理,得到的是分帧数据在多个频率的采样点,所以每个采样点都对应一个频率,可以将多个频率的采样点的功率值,作为分帧数据在多个频率的功率值。而每个分帧数据,都可以通过快速傅里叶变换得到对应分帧数据在多个频率的功率值。
继续参见图3C,在步骤10213中,从每个分帧数据在多个频率的功率值中,获取处于频率阈值范围的目标功率值,并将目标功率值作为音频数据的频谱特征。
考虑到音频信号的音量主要集中在基频,而基频范围之外的音频信号的功率谱特征可以忽略不计。所以在获取到每个分帧数据在多个频率的功率值后,需要通过基频范围对这些功率值进行筛选,只保留频率处于基频范围内的功率值。本申请实施例中,针对每个分帧数据,从每个分帧数据在多个频率的功率值中,获取处于频率阈值范围的目标功率值,并将目标功率值作为音频数据的频谱特征。其中,这里的频率阈值即为音频信号的基频范围,例如可以是100hz至4000hz的频率范围。由此,在每个分帧数据的功率值中,只保留频率处于100hz至4000hz范围内的功率值作为目标功率值,然后将所有分帧数据的目标功率值作为对应通道音频数据的频谱特征。
继续参见图3B,在步骤1022中,确定两个音频数据的频谱特征之间的多个相似系数。
确定每个通道音频数据的频谱特征之后,再确定两个音频数据的频谱特征之间的多个相似系数。本申请实施例中针对多个通道的音频数据中的任意两个音频数据,确定两个音频数据的频谱特征之间的多个相似系数。由于每个通道的音频数据都需要互相比较并确定相似度,所以这里可以对每个通道的音频数据进行两两组合,即每个通道的音频数据都需要和剩余通道的音频数据一一进行组合。然后针对每个组合,确定组合中两个通道的音频数据频谱特征之间的多个相似系数。
在一些实施例中,参见图3E,图3B示出的步骤1022可以通过以下步骤10221至步骤10223实现,下面具体说明。
在步骤10221中,从两个音频数据中选取一个音频数据作为目标音频数据,并将另一个音频数据作为对标音频数据。
在一些实施例中,音频数据之间的相似性可以通过计算两个音频数据的频谱特征之间的相似系数来确定。考虑到每个音频数据的频谱特征都不相同,并且都是由每一帧分帧数据在多个频率的功率值组成的。本申请实施例中针对每个组合中的两个音频数据,从两个音频数据中选取一个音频数据作为目标音频数据,并将另一个音频数据作为对标音频数据,其中,这里目标音频数据的选取是不固定的,可以是随机选取,另一个自然就作为对标音频数据。接下来通过分别确定两个音频数据各自的帧数阈值范围,继而在帧数阈值范围内确定对应频谱特征之间的相似系数。
在步骤10222中,获取目标音频数据的目标特征,并获取对标音频数据的多个对标特征。
因为两个音频数据可能处于在不同的帧数阈值范围,每一帧分帧数据对应的频谱特征都存在差异,所以直接在固定的帧数阈值范围内计算相似系数则会存在误差。为了使频谱特征之间相似系数更为准确,本申请实施例中先获取目标音频数据的目标特征,并获取对标音频数据的多个对标特征。其中,目标音频数据具有固定的帧数阈值范围,而对标音频数据具有多个不同的对标帧数阈值范围,由此可以计算目标特征与不同对标帧数阈值范围内的对标特征之间的相似系数,然后通过计算得到的多个相似系数来确定音频数据的相似度。
在一些实施例中,参见图3F,图3E示出的步骤10222中“获取目标音频数据的目标特征”,可以通过以下步骤102221A至步骤102222A实现,下面具体说明。
在步骤102221A中,确定目标音频数据在帧数阈值范围内的多个分帧数据。
首先需选取目标音频数据的帧数阈值范围,这个帧数阈值范围实质上是一种时间距离范围,固定只有一个且不可变化。选取的方法是先确定一个起始帧数,例如可以是当前时刻帧数,记作0ms。然后确定比当前时刻帧数早一定时间距离的帧数,这个时间距离可以根据实际场景预设,例如可以是50ms的时间距离,如此目标音频数据的帧数阈值范围即为“0ms-50ms”。这里起始帧数还可以是比当前时刻帧早50ms时间距离的帧数,记作50ms。然后确定比当前时刻帧数早一定时间距离(例如50ms或者100ms)的帧数,那么目标音频数据的帧数阈值范围即为“50ms-100ms”或者“50ms-150ms”。
在目标音频数据的帧数阈值范围确定以后,即可确定目标音频数据在帧数阈值范围内的多个分帧数据,其中,分帧数据之间可以有时间间距,这个时间间距即为对音频数据进行分帧处理时所使用窗函数的加窗长度,分帧数据的个数可以根据目标音频数据的总帧数和时间间距来设定,由此即可确定目标音频数据在帧数阈值范围内分帧数据的数量。
示例的,分帧数据之间的时间间距设定10ms为一帧,那么目标音频数据在“0ms-50ms”范围内的分帧数据可以有5个,即最后确定目标音频数据在“0ms-50ms”范围内的5个分帧数据。
在步骤102222A中,将多个分帧数据的频谱特征进行合并,得到目标音频数据的目标特征。
确定目标音频数据在帧数阈值范围内的多个分帧数据,再将多个分帧数据的频谱特征进行合并,得到目标音频数据的目标特征。具体的,将每个分帧数据的目标功率值进行合并,从而得到一个组合特征,这个组合特征就可作为目标音频数据的目标特征,由于目标音频数据的帧数阈值范围是固定不变的,所以目标音频数据的目标特征有且仅有一个。
在一些实施例中,参见图3G,图3E示出的步骤10222中“获取对标音频数据的多个对标特征”,可以通过以下步骤102221B至步骤102223B实现,下面具体说明。
在步骤102221B中,确定对标音频数据的多个对标帧数阈值范围。
在一些实施例中,对于对标音频数据,需要确定对标音频数据的多个对标帧数阈值范围,这个对标帧数阈值范围实质上也为一种时间距离范围,是不固定且可以变化。但这个时间距离范围的边界是固定的,即对标帧数阈值范围最大不能超过帧数的时间边界。例如时间边界为150ms,那么所有的对标帧数阈值范围只能从在150ms这个时间边界之内。选取的方法也是先确定一个起始帧数,例如可以是当前时刻帧数,记作0ms,那么对标帧数阈值范围的时间边界即确定为“0ms-150ms”。然后确定比当前时刻帧数早一定时间距离的帧数,例如50ms、100ms、150ms,这个帧数不能超过时间边界(例如150ms)。那么对标音频数据的多个对标帧数阈值范围可以为“0ms-50ms、0ms-100ms、0ms-150ms”。
此外考虑到目标音频数据在帧数阈值范围的分帧数据个数,与对标音频数据在对标帧数阈值范围的分帧数据个数需保持一致。所以本申请实施例中,在时间边界内,通过控制对标音频数据的分帧数据之间的时间间距,来确定多个对标帧数阈值范围。
示例的,目标音频数据在“0ms-50ms”范围内的分帧数据个数有5个,对应每个分帧数据之间的时间间距为10ms。那么对标音频数据的分帧数据个数需要与目标音频数据的分帧数据的个数保持一致,也需要5个。但这里可以控制对标音频数据的分帧数据之间的时间间距,例如也可以为10ms,还可以是20ms或者30ms,对应确定的对标帧数阈值范围分别为“0ms-50ms、0ms-100ms、0ms-150ms”,但最大对标帧数阈值范围不能超过时间边界150ms,即需要控制对标音频数据的分帧数据之间的时间间距最大不能超过30ms。
在步骤102222B中,确定对标音频数据在每个对标帧数阈值范围内的多个分帧数据,并对多个分帧数据的频谱特征进行合并,得到对标音频数据在每个对标帧数阈值范围内的频谱特征。
确定对标音频数据的多个对标帧数阈值范围后,接下来再确定对标音频数据在每个对标帧数阈值范围内的多个分帧数据,并对多个分帧数据的频谱特征进行合并,得到对标音频数据在每个对标帧数阈值范围内的频谱特征。
具体的,针对每一个对标帧数阈值范围,将对标帧数阈值范围内的多个分帧数据的频谱特征进行合并,得到一个组合特征。也即针对每个对标帧数阈值范围,将多个分帧数据的目标功率值进行合并,从而得到一个组合特征,这个组合特征即可作为对标音频数据在对应对标帧数阈值范围内的频谱特征。而由于对标音频数据的对标帧数阈值范围有多个,所以可以得到多个组合特征。
在步骤102223B中,将对标音频数据在多个对标帧数阈值范围内的频谱特征,作为对标音频数据的对标特征。
获取到对标音频数据在多个对标帧数阈值范围内的频谱特征后,就可以将对标音频数据在多个对标帧数阈值范围内的频谱特征,作为对标音频数据的对标特征。由于对标音频数据的对标帧数阈值范围有多个,所以最终可以得到对标音频数据的多个不同的对标特征。
示例的,确定对标音频数据有3个对标帧数阈值范围,分别为“0ms-50ms、0ms-100ms、0ms-150ms”,每个对标帧数阈值范围都有5个分帧数据。首先将“0ms-50ms”范围内的5个分帧数据的目标功率值进行组合,得到对标音频数据的组合特征1,将“0ms-100ms”范围内的5个分帧数据的目标功率值进行组合,得到对标音频数据的组合特征2,最后将“0ms-150ms”范围内的5个分帧数据的目标功率值进行组合,得到对标音频数据的组合特征3,这些组合特征就可以作为对标音频数据的对标特征,由此得到对标音频数据的3个对标特征。
继续参见图3E,在步骤10223中,确定目标特征与每个对标特征之间的相关系数,并将相关系数作为两个音频数据的频谱特征之间的多个相似系数。
确定获取目标音频数据的目标特征以及对标音频数据的多个对标特征后,即可确
定目标特征与每个对标特征之间的相关系数,并将相关系数作为两个音频数据的频谱特征
之间的多个相似系数。具体的,首先计算目标特征分别与每个对标特征之间的相关系数,这
里的相关系数可以协方差相关系数,记作,计算公式如下公式(3):
(3);
上述公式(3)中,i为当前时刻的帧数,m为第m个分帧数据的频谱特征。为
在由第i帧分帧数据在帧数阈值范围内的目标特征。为在由第i帧分帧数据从
当前时刻到时间距离j的对标帧数阈值范围内的对标特征。表
示目标特征和对标特征的卷积处理值,简称为,具体计算方法如公式(4):
(4);
上述公式(4)中,E(A)表示目标特征的均值,E(B)表示对标特征的均值。
此外,在上述公式(3)中,表示目标特征的方差,简称为,表示对标特征的方差,简称为,计算方法如公式(5):
(5);
上述公式(5)中,E(A)表示目标特征的均值。
由此,根据公式(3)可以确定目标特征与每一个对标特征的协方差相关系数,记作,于是可以得到多个协方差相关系数。这多个协方差相关系数就可以作为两个音频
数据的频谱特征之间的多个相似系数。
继续参见图3B,在步骤1023中,基于多个相似系数,确定两个音频数据之间的相似度。
在一些实施例中,参见图3H,图3B示出的步骤1023可以通过以下步骤10231至步骤10233实现,下面具体说明。
在步骤10231中,从多个相似系数中确定出最大相似系数。
确定每个组合中两个音频数据的频谱特征之间的多个相似系数之后,就可以
基于多个相似系数,确定两个音频数据之间的相似度。由于目标音频数据的帧数阈值范围
和对标音频数据的部分对标帧数阈值范围不同,最终计算得到的目标特征和多个对标特征
的多个相似系数也是不同的,且会存在峰值。若是直接将这个峰值作为两个音频数据之间
的相似度会产生误差。为减少多个相似系数之间的差异,尽可能消除误差,本申请实施例中
从多个相似系数中确定出最大相似系数(即峰值),来对每个相似系数做平滑处理得到相似
系数的平滑值,以平衡多个相似系数之间的差异,再利用相似系数的平滑值来确定两个音
频数据之间的相似度。
在步骤10232中,基于最大相似系数对每个相似系数进行平滑处理,得到每个相似系数的平滑值。
承接上述实施例,从多个相似系数中确定出最大相似系数后,再基于最大相似系数对每个相似系数进行平滑处理,得到每个相似系数的平滑值。这里最大相似系数即为多个相似系数的峰值,也即通过峰值来对剩下非峰值的相似系数做平滑处理,平滑处理的计算方法如下公式(6):
(6);
上述公式(6)中,为第i个相似系数,为最大相似系数。
在步骤10233中,将最大平滑值作为两个音频数据之间的相似度。
确定每个相似系数的平滑值后,考虑到相似系数最大时,说明目标音频数据
与对标音频数据的频率特征在某些帧数阈值范围内的相似度最高,这也表征了对应的音频
数据之间相似性高。故本申请实施例在对每个相似系数做平滑处理后,将最大平滑值作为
两个音频数据之间的相似度,也即选取多个相似系数的平滑值中最大的一个平滑值作为两
个音频数据之间的相似度。
继续参见图3A,在步骤103中,基于相似度,从多个通道中确定出至少一个通道组。
通过确定每个通道音频数据之间的相似度后,就可以基于相似度,从多个通道中确定出至少一个通道组。具体的,可以通过设定一个相似度阈值,相似阈值可以根据实际的通话场景或者实验验证来确定,例如可以是0.85,然后判断每个组合中两个音频数据的相似度是否大于相似度阈值0.85。
在一些实施例中,响应于相似度大于相似度阈值,确定相似度的两个音频数据对应的两个录音设备位于同一空间。具体的当确定两个音频数据的相似度大于相似度阈值0.85,则说明两个音频数据所来源的录音设备处于同一空间,因为两个录音设备在同一空间所采集的声音的音频数据是相似的。这里的空间是指具体的物理场景空间,例如同一个房间或者同一个教室等,即在同一房间的通话参与方所有的录音设备所采集的音频信号是具有相似成分的。
此外,响应于相似度小于相似度阈值,则相似度的两个音频数据对应的两个录音设备不是位于同一空间。当确定两个音频数据的相似度小于相似度阈值0.85,则说明两个音频数据所来源的录音设备可能不是处于同一空间,两个录音设备在不同空间所采集的声音的音频信号是存在差异的。
示例的,其中一个通话参与方的录音设备处于一个房间内,另外一个通话参与方的录音设备处于这个房间的隔壁房间。两个录音设备可能会采集到部分相同的音频数据,例如背景音或者环境音,这两个音频数据之间也存在一定的相似度,但这个相似度小于相似度阈值0.85,所以确定这两个音频数据所来源的录音设备可能不是处于同一空间。
承接上述实施例,通过确定相似度,来确定两个音频数据对应的两个录音设备位于同一空间之后,就可以将录音设备位于同一空间的音频数据加入至同一通道组内,由此从多个通道的音频数据中确定出至少一个通道组。由于通道组所包括的多个通道的音频数据所来源的录音设备是位于同一空间的,所以这个通道组也被称为同地通道组。
示例的,音频通话中共有5个参与方(用户)在通话,对应的有5个通道的音频数据,分别音频1、音频2、音频3、音频4、音频5。通过将这个5个通道的音频数据进行两两组合,然后针对每个组合中的两个音频数据,确定这个两个音频数据之间的相似度,最终确定音频1与音频2、音频1与音频3、音频2与音频3这三个组合的相似度大于相似度阈值,即可确定音频1、音频2、音频3这三个音频数据所来源的录音设备处于同一房间,也即这三个音频数据对应的参与方(用户)在同一房间进行音频通话。而另外确定音频4与音频5这个组合的相似度大于相似度阈值,即可确定音频4、音频5、这两个音频数据所来源的录音设备处于同一房间,也即这两个音频数据对应的参与方(用户)在同一房间进行音频通话。然后将录音设备位于同一空间的音频数据加入至同一通道组内,从而得到两个通道组分别为“音频1、音频2、音频3”以及“音频4、音频5”。
继续参见图3A,在步骤104中,对每个通道组包括的至少一个通道的音频数据进行滤波处理,得到滤波后的音频数据。
将每个通道的音频数据都加入到通道组后,每个通道组就有至少一个通道的音频数据。由于通道组中的音频数据所来源的录音设备是处于同一空间,对这些音频数据分别进行编码解码,所得到的声音可能会存在重叠音或者混响杂音。为了去除这些重叠音或者混响杂音,针对每个一个通道组,对每个通道组包括的至少一个通道的音频数据进行滤波处理,得到滤波后的音频数据。也即对同地通道组中的多个音频数据进行滤波处理,这里滤波处理的目的是消除之后可能产生的重叠音或者混响杂音,提高声音的清晰度和质量。滤波后的音频数据后续进行编码和解码,生成对应的声音,用于音频通话。
在一些实施例中,参见图3I,图3A示出的步骤104可以通过以下步骤1041至步骤1043实现,下面具体说明。
在步骤1041中,确定通道组中的每个通道的音频数据的音量。
一般在音频通话中,声音音量最大的一个可能是进行通话交互的有效声音,其余的声音则可能是位于同一空间的其他通话参与方发出来的声音,也可能是录音设备所采集的背景音或者环境音,并非用于参与音频通话。基于此,本申请实施例中针对每个通道组,确定通道组中的每个通道的音频数据的音量,即音频信号的音量,然后通过音量确定同地通道组中有效通道的音频数据。音量的确定方法可以通过录音设备分析得到或者利用其他声音工具检测得到。
在步骤1042中,将最大音量的音频数据所对应的通道确定为主通道,并将其他通道作为次通道。
承接上述实施例,确定通道组中的每个通道的音频数据的音量后,将最大音量的音频数据所对应的通道确定为主通道,并将其他通道作为次通道,其中,其他通道是通道组中除主通道之外的通道。因此确定同地通道组中的主通道为参与音频通话的有效声音通道,主通道对应的音频数据属于有效音频数据,用于参与音频通话,而其余次通道对应的音频数据则并非用于参与音频通话,需要进行滤波处理。
在步骤1043中,基于主通道的音频数据,对次通道的音频数据进行滤波处理,得到滤波后的音频数据。
确定同地通道组中的主通道之后,即可基于主通道的音频数据,对次通道的音频数据进行滤波处理,得到滤波后的音频数据。具体的,将主通道的音频数据作为参考音频数据,然后基于参考音频数据对次通道的音频数据进行滤波处理,滤波处理可以调用相关的滤波器来实现,下面说明具体的滤波处理方法。
在一些实施例中,参见图3J,图3I示出的步骤1043可以通过以下步骤10431至步骤10434实现,下面具体说明。
在步骤10431中,确定次通道的音频数据在多个频率的功率值以及主通道的音频数据在多个频率的功率值。
对次通道的音频数据进行滤波处理之前,首先需确定次通道的音频数据在多个频率的功率值以及主通道的音频数据在多个频率的功率值。确定方法可以通过快速傅里叶变换分别对主通道的音频数据以及次通道的音频数据,进行基于频域的变换处理,得到对应音频数据的功率值。需要说明的是,这里在变换处理之前无需对音频数据进行分帧处理,具体的变换处理方法与图3C所示的步骤10212类似,这里不再赘述。
在步骤10432中,基于主通道的音频数据在每个频率的功率值,确定每个频率的滤波参数。
承接上述实施例,由于主通道的音频数据是作为滤波处理的参考音频数据,所以可以基于主通道的音频数据在每个频率的功率值,确定每个频率对应的滤波参数。此外,滤波处理如果采用的是某些滤波器,则利用主通道的音频数据在每个频率的功率值,来更新滤波器在每个频率对应的滤波参数,也即更新滤波器每一个频率的滤波权重值。
在步骤10433中,基于每个频率的滤波参数,对次通道的音频数据在每个频率的功率值进行滤波处理,得到次通道的音频数据在每个频率的滤波功率值。
通过主通道的音频数据在每个频率的功率值,确定每个频率对应的滤波参数后,再基于每个频率的滤波参数,对次通道的音频数据在每个频率的功率值进行滤波处理,得到次通道的音频数据在每个频率的滤波功率值。具体的,滤波处理的过程可以是将次通道的音频数据在每个频率的功率值依次输入到滤波器中,先更新滤波器中对应频率的滤波参数。接下来再利用对于频率更新后的滤波参数,对次通道的音频数据在对应频率的功率值进行更新处理,最终得到次通道的音频数据在对应每个频率的更新功率值,也即滤波功率值。
在步骤10434中,对次通道的音频数据在每个频率的滤波功率值进行基于频率的反变换处理,得到滤波后的音频数据。
通过对次通道的音频数据在对应频率的功率值进行更新处理,得到对应的滤波功率值之后,再对次通道的音频数据在每个频率的滤波功率值进行基于频率的反变换处理,得到滤波后的音频数据。具体的,将次通道的音频数据在每个频率的滤波功率值进行反傅里叶变换,还原为音频数据。经过滤波处理操作后,次通道滤波后的音频数据与主通道的在每个频率的功率值近似于相同,对应的音频数据也近似于相同(因为滤波计算可能有误差)。如此同地通道组中的多个音频数据都是近似于相同的,再对同地通道组中的多个音频数据进行编码再解码,所得到的声音就会只存在一种声音,其他通话参与方所收听到的声音就不会产生重叠音或者混响杂音,提高了声音清晰度和通话质量。
通过本申请实施例,在音频通话中获取多个通道的音频数据,利用多个音频数据之间的相似性来判断音频数据所来源的录音设备是否存在于同一空间,无需人工干预和判断。由此将多个音频数据的通道组合成至少一个通道组,然后对通道组中包括的至少一个音频数据进行滤波处理,以消除不同通道的音频数据之间的差异,从而滤波后的音频数据近似于相同,最终使得通道组中多个音频数据所产生的声音提高了清晰度,消除了音频通话过程中可能存在的重叠音或混响杂音所造成的收听阻碍。
下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。
在多人实时通话场景中,一般允许三个或者更多人同时进行实时语音或视频通话,而参与通话的多方通过不同的设备(例如终端或者语音录制设备)各自进行音频信号采集及音频编码处理,得到音频对应的通道码流。然后将通道码流发送到混音服务器进行解码后再做混音处理,得到混音信号,在对混音信号进行二次编码后得到数据包发送回接收方。或者是将通道码流发送到选路服务器,然后选路服务器对多个通道码流进行音频信号能量排序,将能量靠前的若干个通道码流做成数据包,转发到对应的接收方,而能量小的通道码流不作处理将被忽略。接收方针对来自混音服务器发送的数据包直接进行解码播放,如果是来自选路服务器发送的数据包则需要进行多路解码后,再进行混音处理得到最终的混音信号进行播放。
在实际应用中,参见图4,图4是本申请实施例提供的多人实时通话场景示意图,如图4所示,在多人会议(参与会议方通过移动终端、固定终端等设备进行声音接入)的实时通话场景中,这里共有5个会议通话的参与方,分别是参与方A、参与方B、参与方C、参与方D、参与方E。其中参与方A、参与方B、参与方C的设备处于开麦状态,而且是处于同一个语音环境中,例如三个人在同一个房间里一起参加多人会议通话。所以他们三方采集到的声音是很相近的,而另外的参与方D和参与方E则在其它房间一起参与会议通话。多人会议通话进行时,开麦状态的设备首先会进行声音采集,之后将采集到的声音信号进行数据接收,然后经过音频编码器进行音频编码得到编码码流,再通过传输网络发送到对应的服务器。服务器负责多路声音信号混音处理或者选取有效声音信号转发到其他参与方的设备进行声音播放。由于参与方A、参与方B、参与方C的设备各自进行声音采集,然后将采集的音频信号进行音频编码、数据发送等步骤以及传输到服务器,这些步骤所消耗的时间是不一样的。即在参与方A、参与方B、参与方C在现场同一时刻采集的声音信号传输到服务器进行混音处理的时间点存在先后顺序。由于对应的服务器做混音处理或转发参与方A、参与方B、参与方C声音信号会产生时间差,例如在转发参与方A处理后的声音信号的同时还在对参与方B发送的音频信号进行处理。如此使得接收方(例如参与方D)接收发送回的混音信号后所播放的声音存在重叠音或混响杂音,导致声音清晰度严重下降、会导致接收方听感不适的问题。
相关技术中,当声音接收方(例如参与方D)所接收并播放的声音出现明显重叠音时,一般都凭借自身经验,通过人工反馈的方法通知处于同一语音环境(例如处于同一房间)且设备都处于开麦状态的参与方A,参与方B、参与方C。让其中的两个人关闭自己的设备的麦克风,只保留其中一个的设备处于开麦状态,作为最终的录音声源,经过这种人工操作后接收方(例如参与方D)所接收并播放的声音才正常。但是并非大部分用户都有这类专业经验,并且人工反馈的操作繁琐。在语音环境和网络环境较差的情况下,仍然会导致整个多人会议通话过程都可能存在收听阻碍。
基于以上场景,本申请实施例提供一种语音数据处理方法(即音频处理方法),该方案在现有多人实时通话***基础上,先确定出各参与方的不同音频通道的音频信号相关性,以确定是否有多个参与方存在处于同地。接下来再对处于同地通道中的部分通道的音频信号进行滤波,过滤掉同地录音中相似的音频信号,即去除掉其中的重叠音,最后在对滤波处理后的音频信息进行后续的混音处理生成对应的语音,从而解决多人实时通话场景中,存在接收发送回的混音信号后所播放的语音存在重叠音或混响杂音的问题。
需要说明的是,如果是服务器混音方案(即将多个通道码流都发送到混音服务器中进行解码,做混音处理后再进行二次编码转发),则本申请实施提供的语音数据处理方法部署在服务器中实现,即通过服务器进行同地通道检测和同地通道滤波处理,最后对滤波后的音频信号进行混音处理。如果是服务器选路方案(即将多个通道码流发送到选路服务器筛选后,转发到相应的接收客户端,以在客户端上进行解码和混音处理),本申请实施提供的语音数据处理方法则应该部署在客户端,即通过客户端进行同地通道检测和同地通道滤波处理,最后对滤波后的音频信号进行混音处理。
参见图5,图5是本申请实施例提供的语音数据处理方法的处理流程图,下面将结合图5中的步骤来详细说明。
在步骤501中,将采集的各通道信号进行编码,并将得到的通道码流发送到服务器。
首先,参与多人实时通话中的参与方(发出语音方)通过本地的终端设备进行声音采集,也即采集每个通道的音频信号。然后将采集得到的各通道音频信号进行音频编码,得到编码数据。其中,编码数据为多个通道码流,一个发送方的音频信号对应一个通道,每个通道的音频编码数据即为通道码流。接下来再将得到的多个通道码流发送到服务器进行解码。
在步骤502中,对通道码流进行多通道解码,得到多通道信号。
若多个通道码流发送的是混音服务器,则混音服务器收到多个通道码流后之间进行解码处理,得到每个通道对应的音频信号。若多个通道码流发送的是选路服务器,选路服务器接收到多个通道码流后,对多个通道码流进行音频信号能量排序,将能量靠前的若干个通道码流做成数据包,返回到对应的客户端进行解码处理,得到每个通道对应的音频信号。
在步骤503中,对多通道信号进行特征提取,并缓存提取的特征。
当混音服务器或者选路服务器对应的客户端获取到每个通道对应的音频信号后,针对每个通道对应的音频信号进行特征提取,例如可以是提取音频信号在局部关键频段的功率谱特征,然后将提取的功率谱特征缓存到各通道的特征缓冲区以进行后续处理。
本申请实施例中通过傅里叶变换来对每个通道对应的音频信号进行处理,以提取功率谱特征。由于功率谱特征是离散的频谱特征,所以需要把连续的频谱信号变换为离散信号,这里使用窗函数来实现,即音频信号使用10ms或20ms为一帧的分析窗,来对每个通道对应的音频信号进行分帧处理,得到离散的分帧信号。其中,窗函数可以是汉宁窗或汉明窗,汉宁窗的窗函数表示如公式(7):
(7);
上述公式(7)中,为音频信号进行分帧处理后所得到的分帧信号,n为窗函
数加窗的总长度,N为窗函数加窗的最大有效长度,n为整数,取值范围为0到N-1。
在对每个通道对应的音频信号进行分帧处理得到分帧信号后,即可对分帧信号做
快速傅里叶变换(Fast Fourier Transform,FFT),计算出分帧信号中每一帧各频率点的功
率绝对值,表示为,这里的功率绝对值即功率谱特征的特征值。其中,快速傅里叶变
换的计算方法如公式(8):
(8);
上述公式(8)中,为分帧信号,N为每一帧分帧信号的频点总数,k表示频率
点,取值为大于0不大于N的整数,x(n)为分帧信号n个频率点所组成的有限长序列。
计算出分帧信号每一帧各个频率点的功率绝对值(功率谱特征的特征值)后,考虑
到语音信号的音量主要集中在基频,所以只保留频率点在基频范围内的功率谱特征,这里
基频的范围设置为至,其中,为100hz频率点对应的频点值,为4000hz频率点对应
的频点值。总而言之,在分帧信号第i帧的k个频率点的功率绝对值中,只保留k满足至范围内的功率绝对值即可。
在步骤504中,基于多个通道信号特征之间的互相关性来确定同地通道。
提取到各个通道音频信号的功率谱特征后,将功率谱特征缓存到各个通道的特征缓存区,用于后续的互相关性计算。
这里的互相关性即表示两个通道的音频信号之间的相似度,而计算两个通道的音
频信号之间的相似度,可以计算两个通道音频信号的功率谱特征之间的协方差相关系数
(表示为)来实现。这里将不同通道音频信号的功率谱特征进行缓存后,选取其中一个通
道中,然后确定比当前时刻早一定时间间距(例如50ms)内的F(例如F为5)帧功率谱特征,将
这F帧功率谱特征组合,记为A特征。对应的,选取出其他一个通道作为对标通道,然后确定
对标通道从当前时刻到早前一定时间距离(例如0~150ms)范围内的F帧功率谱特征,将这F
帧功率谱特征组合,记为B特征。
此外,为了减少计算量,在确定比当前时刻早一定时间间距(例如50ms)内的F(例如F为5)帧功率谱特征后,需要确定这F帧功率谱特征对应分帧信号的音能量,都是否都大于预设的音量门限值。若F帧分帧信号中没有出现任何一帧的音能量大于预设的音量门限值,则说明这F帧分帧信号不存在有效音频信号,所以也无需计算协方差相关系数,而对应的F帧功率谱特征则被忽略不计。
接下来再基于A特征和B特征计算协方差相关系数。需要说明的是,协方差相关
系数里的j代表对标通道距离比当前时刻早的时间间距,也即帧距离。例如汉宁窗的分
帧处理是以10ms为一帧长度,则j为5则表示A特征和B特征为距离当前时刻之前50ms内的F
帧功率谱特征(F帧组合特征)。
确定每个通道的F帧功率谱特征组合后,即可计算每个通道组合特征之间的协方
差相关系数,具体计算方法如公式(9):
(9);
上述公式(9)中,i为当前帧数,m为功率谱特征组合中的第m个特征,且m取值为1至
功率谱特征组合的最大特征数量。为由第i帧音频信号从第1个至第m个功率谱特
征所组成的功率谱特征组合,也即特征A。为比第i帧音频信号早j10ms帧距
离范围内的第1个至第m个功率谱特征所组成的功率谱特征组合,也即特征B。j为对标通道
(B特征对应的通道)比当前时刻早的时间间距(帧距离),表示
特征A和特征B的卷积处理值,简称为,具体计算方法如公式(10):
(10);
上述公式(10)中,E(A)表示特征A的均值,E(B)表示特征B的均值。
此外,在上述公式(9)中,表示特征A的方差,简称为,表示特征B的方差,简称为,计算方法如公式(11):
(11);
上述公式(11)中,E(A)表示特征A的均值。
由此,根据公式(9)可以计算任意一个通道从当前时刻到早一定时间间距(帧距
离)的特征A与对标通道对应的特征B的协方差相关系数。但由于j是变化的,如果以10ms为
一帧长度,那么在可以在0~150ms范围内j的取值为可以有多个,所以对标通道可以得到不
同的特征B,所以最终可以计算得到多个不同的协方差相关系数。于是可以确定出任意一个
通道在第i帧的特征A与对标通道第i帧的特征B,在帧距离的搜索范围(0-150ms)的最大协
方差相关系数,记作。
在计算出任意一个通道与对标通道的多个协方差相关系数后,所得到的协方
差相关系数不可直接用于衡量两个通道之间的互相关性。此时需要使用的平滑值,
也即使用来平滑处理任意相邻的两个协方差相关系数,这里将多个协方差相关系
数的数量确定为i,任意一个通道与对标通道的第i个协方差相关系数就记作
。然后利用来平滑处理任意相邻的两个协方差相关系数(即、),具
体平滑处理的计算方法如公式(12):
(12);
经过平滑处理后所得到的协方差相关系数即可用于表征两个通道音频信号
的功率谱特征之间的互相关性。协方差相关系数越高,则说明两个通道的音频信号越
相似。在多人实时通话场景中,音频信号相似的两个通道对应的参与方可能是处于同一个
语音环境(即可能处于同一房间),则可称这两个通道为同地通道。
这里可以预设一个互相关性的相似度阈值,当两个通道信号特征(即音频信号的功率谱特征)之间的互相关性(协方差相关系数)大于预设的相似度阈值,则说明这两个通道为同地通道。
在步骤505中,判断是否存在同地通道,若判断结果为是,转入执行步骤506,若判断结果为否,则转入执行步骤507。
在多人实时通话场景中,通过计算任意两个通道信号特征之间的互相关性,来判断所有的通道中是否存在同地通道,也即判断是否存在参与方处于同一语音环境。如果计算出存在两个通道信号特征(即音频信号的功率谱特征)之间的互相关性(协方差相关系数)大于预设的相似度阈值,则说明存在同地通道,即存在至少两个参与方处于同一语音环境,此时转入执行步骤506。如果计算出任意两个通道信号特征(即音频信号的功率谱特征)之间的互相关性(协方差相关系数)都小于预设的相似度阈值,则说明不存在同地通道,即不存在有两个参与方处于同一语音环境,每个参与方都在单独的语音环境中进行通话,此时转入执行步骤507。
在步骤506中,选取参考通道,对同地通道信号进行自适应滤波处理。
在多人实时通话场景中,通过计算任意两个通道信号特征之间的互相关性,来判断所有的通道中是否存在同地通道,若存在同地通道,则将属于同地通道的多个通道组成通道组(同地通道组),其余的通道都是未处于同一语音场景的单独通道,无需组成通道组,也可以将每个单独通道作为一个通道组,但单独通道的音频信号所解码得到的声音一般不存在重叠音或混响杂音,所以单独通道所在的通道组的音频信号不作处理。
示例的,在多人实时通话场景中,例如通道A(对应参与方A)与通道B(对应参与方B)的互相关性(协方差相关系数)大于预设阈值(例如可以是0.85),则判断通道A和通道B是处于同地通道,则将通道A和通道组成同地组。类似地也可判断并找出参与方当中属于同地的各个通道并成立相应的通道组,例如通道C和通道D。而通道E是单独通道,也可以作为一个通道组,但通道E所在通道组的音频信号不作处理。
考虑到同地通道组中的各个通道的音频信号组成混音信号发出语音时,在多人实时通话场景中会出现重叠音,导致接收方接收混音信号收听语音时出现声音浑浊不清的情况,则需要去除同地通道组中混音信号的重叠音。当确定出至少一个同地通道组后,针对每个同地通道组,从中选取一个参考通道作为主通道,而同地通道组中的其余通道即为次通道,然后对多个次通道的音频信号进行自适应滤波处理,在对所有的同地通道组中次通道的音频信号进行自适应滤波处理后,即可转入执行步骤507。
一般而言,在多人实时通话场景,如果处于同地通道的两个参与方同时都发出语音,一般语音声音最大的参与方为通话发出的正常语音,而其余的声音则可能是背景声音或者同地通道的其余参与方发出的非正常语音。在同地通道组的多个同地通道的音频信号中,只需保留其中一个正常的音频信号即可,所以可以从同地通道组中确定出一个音频信号音能量最大的一个通道作为参考通道保留,也即同地通道组中的主通道,而同地通道组中的其余通道即为次通道。然后基于主通道的音频信号,对多个次通道的音频信号通过自适应滤波器进行自适应滤波处理,以去除次通道中与主通道的相似信号成分,如此即消除了同地通道组中的各个通道的音频信号组成混音信号发出语音时所产生的重叠音。
自适应滤波处理可以采用分块频域自适应滤波(Partitioned Block FrequencyDomain Adaptive Filter,PBFDAF)算法来实现。首先将参考通道(主通道)和其余多个通道(次通道)的音频信号利用快速傅里叶变换分别进行变换处理,得到音频信号的各频率点的复数值。接下来采用分块频域自适应滤波算法,将所有音频信号的各频率点的复数值按照频率点进行分块,每个分块即为一个频域。然后基于主通道音频信号在每个频域的复数值,对次通道音频信号在对应频域的复数值进行自适应滤波处理,例如对次通道音频信号在对应频域的复数值进行划分,以区分为正常音频信号和杂音信号,然后过滤次通道音频信号在某个频域与主通道音频信号重复的复数值。在得到滤波后的次通道音频信号在各频率点的复数值(相当于上文的功率值)后,再将各频率点的复数值经过反傅里叶变换得到次通道的音频信号。
示例的,例如参与方A、参与方B与参与方C进行实时通话,其中,参与方A、参与方B在同一语音环境中属于同地通道,此时参与方C发出语音让参与方A、参与方B回答,于是参与方A、参与方B一起发出语音回答,此时参与方C可能会听到重叠音,造成声音浑浊不清。此时从同地通道的参与方A、参与方B中,选择音频信号音能量最大(声音最大)的参与方A对应的通道A作为主通道,而参与方B对应的通道B即为次通道。然后基于通道A的音频信号,对通道B的音频信号进行自适应滤波处理,以去除与通道A的音频信号的相似信号成分,如此即消除了同地通道中的参与方A、参与方B的音频信号组成混音信号发出语音时所产生的重叠音。
在步骤507中,对多通道信号进行混音处理,再进行解码播放。
在多人实时通话场景中,通过计算任意两个通道信号特征之间的互相关性,来判断所有的通道中是否存在同地通道,也即判断是否存在参与方处于同一语音环境。如果确定所有的通道中不存在同地通道,则无需对各通道的音频信号做处理。如果确定所有的通道中存在同地通道,则需要对同地通道中的部分通道(次通道)的音频信号进行自适应滤波处理,滤波处理后最终得到各通道的音频信号,由此完成了混音服务器或者选路服务器对应的客户端的解码过程。
接下来将混音服务器或者选路服务器对应的客户端的解码过程中得到的各通道的音频信号进行混音处理,再进行解码播放。具体的,若是混音服务器解码得到的各通道的音频信号,则由混音服务器再执行二次混音处理,即将各通道的音频信息进行第二次音频编码,得到编码数据(多个通道码流),再进行解码输出最终的语音,再发送到对应的客户端进行语音播放。若是选路服务器发送到对应的客户端解码得到各通道的音频信号,则客户端再执行二次混音处理,即将各通道的音频信号进行第二次音频编码,得到编码数据(多个通道码流),再进行解码输出最终的语音,直接在客户端进行语音播放。
通过本申请实施例提供的语音数据处理方法,在语音信号的解码过程后,通过实时检测不同通道的音频信号之间的互相关性来确定是否存在同地通道,然后从同地同地中识别出主次通道,并将主通道的音频信号作为参考通道的信号,对次通道的音频信号进行自适应滤波处理。由此去除了次通道的音频信号对主通道音频信号的干扰,也即消除了同一语音环境下不同通道对应音频信号的相似信号成分,在多人实时通话场景中则消除了多人发音所产生的重叠音。对多通道的音频信号进行处理后再进入后续的转发和混音处理过程,最终输出对应的语音,从而解决了接收方接收音频信号播放语音时出现重叠音、声音浑浊不清的问题。
下面继续说明本申请实施例提供的音频处理装置453的实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器450的音频处理装置453中的软件模块可以包括:获取模块4531,用于响应于音频通话中存在多个通道的音频数据,获取多个通道的音频数据,其中,一个通道的音频数据来源于一个录音设备;确定模块4532,用于确定音频数据之间的相似度;确定模块4532,还用于基于相似度,从多个通道中确定出至少一个通道组,其中,每个通道组包括至少两个通道的音频数据,每个通道组包括的音频数据对应的录音设备位于同一空间;滤波模块4533,用于对每个通道组包括的至少一个通道的音频数据进行滤波处理,得到滤波后的音频数据,其中,滤波后的音频数据用于音频通话。
在一些实施例中,确定模块4532,还用于确定音频数据的频谱特征;针对多个通道的音频数据中的任意两个音频数据执行以下处理:确定两个音频数据的频谱特征之间的多个相似系数;基于多个相似系数,确定两个音频数据之间的相似度。
在一些实施例中,确定模块4532,还用于对音频数据进行分帧处理,得到音频数据的多个分帧数据;对每个分帧数据进行基于多个频率的变换处理,得到每个分帧数据在多个频率的功率值;从每个分帧数据在多个频率的功率值中,获取处于频率阈值范围的目标功率值,并将目标功率值作为音频数据的频谱特征。
在一些实施例中,确定模块4532,还用于对每个分帧数据进行采样处理,得到每个分帧数据在多个频率的采样点;将多个频率的采样点进行拼接处理,得到分帧数据的音频序列;基于音频序列,对采样点进行频域变换处理,得到采样点的功率值;将多个频率的采样点的功率值,作为分帧数据在多个频率的功率值。
在一些实施例中,确定模块4532,还用于从两个音频数据中选取一个音频数据作为目标音频数据,并将另一个音频数据作为对标音频数据;获取目标音频数据的目标特征,并获取对标音频数据的多个对标特征;确定目标特征与每个对标特征之间的相关系数,并将相关系数作为两个音频数据的频谱特征之间的多个相似系数。
在一些实施例中,确定模块4532,还用于确定目标音频数据在帧数阈值范围内的多个分帧数据;将多个分帧数据的频谱特征进行合并,得到目标音频数据的目标特征。
在一些实施例中,确定模块4532,还用于确定对标音频数据的多个对标帧数阈值范围;确定对标音频数据在每个对标帧数阈值范围内的多个分帧数据,并对多个分帧数据的频谱特征进行合并,得到对标音频数据在每个对标帧数阈值范围内的频谱特征;将对标音频数据在多个对标帧数阈值范围内的频谱特征,作为对标音频数据的对标特征。
在一些实施例中,确定模块4532,还用于从多个相似系数中确定出最大相似系数;基于最大相似系数对每个相似系数进行平滑处理,得到每个相似系数的平滑值;将最大平滑值作为两个音频数据之间的相似度。
在一些实施例中,确定模块4532,还用于针对每个相似度执行以下处理:响应于相似度大于相似度阈值,确定相似度的两个音频数据对应的两个录音设备位于同一空间;将录音设备位于同一空间的音频数据加入至同一通道组。
在一些实施例中,滤波模块4533,还用于针对每个通道组执行以下处理:确定通道组中的每个通道的音频数据的音量;将最大音量的音频数据所对应的通道确定为主通道,并将其他通道作为次通道,其中,其他通道是通道组中除主通道之外的通道;基于主通道的音频数据,对次通道的音频数据进行滤波处理,得到滤波后的音频数据。
在一些实施例中,滤波模块4533,还用于确定次通道的音频数据在多个频率的功率值以及主通道的音频数据在多个频率的功率值;基于主通道的音频数据在每个频率的功率值,确定每个频率的滤波参数;基于每个频率的滤波参数,对次通道的音频数据在每个频率的功率值进行滤波处理,得到次通道的音频数据在每个频率的滤波功率值;对次通道的音频数据在每个频率的滤波功率值进行基于频率的反变换处理,得到滤波后的音频数据。
本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序或计算机可执行指令,该计算机程序或计算机可执行指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机可执行指令,处理器执行该计算机可执行指令,使得该电子设备执行本申请实施例上述的音频处理方法。
本申请实施例提供一种存储有计算机可执行指令的计算机可读存储介质,其中存储有计算机可执行指令或者计算机程序,当计算机可执行指令或者计算机程序被处理器执行时,将引起处理器执行本申请实施例提供的音频处理方法,例如,如图3A至图3J示出的音频处理方法。
在一些实施例中,计算机可读存储介质可以是RAM、ROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,计算机可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,计算机可执行指令可以但不一定对应于文件***中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(Hyper TextMarkup Language,HTML)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,计算机可执行指令可被部署为在一个电子设备上执行,或者在位于一个地点的多个电子设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个电子设备上执行。
综上所述,通过本申请实施例,在音频通话中获取多个通道的音频数据,在提取音频数据的频谱特征后计算频谱特征之间的相似系数来确定音频数据之间的相似性,继而判断音频数据所来源的录音设备是否存在于同一空间,无需人工干预和判断。由此将多个音频数据的通道组合成至少一个通道组,然后从通道组中确定出主通道,利用主通道的音频数据对其余此通道的音频数据进行滤波处理,以消除不同通道的音频数据之间的差异,从而滤波后的音频数据近似于相同,最终使得通道组中多个音频数据所产生的声音清晰度增强,消除了音频通话中可能存在的重叠音或混响杂音,提高音频通话的质量。
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。
Claims (12)
1.一种音频处理方法,其特征在于,所述方法包括:
响应于音频通话中存在多个通道的音频数据,获取所述多个通道的音频数据,其中,一个通道的音频数据来源于一个录音设备,所述多个通道的音频数据是在不同空间位置采集或回放得到的相互独立的音频数据;
确定所述音频数据之间的相似度;
针对每个所述相似度执行以下处理;响应于所述相似度大于相似度阈值,确定所述相似度的两个音频数据对应的两个录音设备位于同一空间,并将录音设备位于所述同一空间的音频数据加入至同一通道组,其中,所述同一通道组中的各音频数据具有相似成分;
针对每个所述通道组执行以下处理:确定所述通道组中的每个通道的音频数据的音量;将最大音量的音频数据所对应的通道确定为主通道,并将其他通道作为次通道,其中,所述其他通道是所述通道组中除所述主通道之外的通道;基于所述主通道的音频数据,对所述次通道的音频数据进行滤波处理,得到滤波后的音频数据,其中,所述滤波后的音频数据用于所述音频通话。
2.根据权利要求1所述的方法,其特征在于,所述确定所述音频数据之间的相似度,包括:
确定所述音频数据的频谱特征;
针对所述多个通道的音频数据中的任意两个音频数据执行以下处理:
确定所述两个音频数据的频谱特征之间的多个相似系数;
基于所述多个相似系数,确定所述两个音频数据之间的相似度。
3.根据权利要求2所述的方法,其特征在于,所述确定所述音频数据的频谱特征,包括:
对所述音频数据进行分帧处理,得到所述音频数据的多个分帧数据;
对每个所述分帧数据进行基于多个频率的变换处理,得到每个所述分帧数据在多个频率的功率值;
从每个所述分帧数据在多个频率的功率值中,获取处于频率阈值范围的目标功率值,并将所述目标功率值作为所述音频数据的频谱特征。
4.根据权利要求3所述的方法,其特征在于,所述对每个所述分帧数据进行基于多个频率的变换处理,得到每个所述分帧数据在多个频率的功率值,包括:
对每个所述分帧数据进行采样处理,得到每个所述分帧数据在多个频率的采样点;
将所述多个频率的采样点进行拼接处理,得到所述分帧数据的音频序列;
基于所述音频序列,对所述采样点进行频域变换处理,得到所述采样点的功率值;
将所述多个频率的采样点的功率值,作为所述分帧数据在多个频率的功率值。
5.根据权利要求2所述的方法,其特征在于,所述确定所述两个音频数据的频谱特征之间的多个相似系数,包括:
从所述两个音频数据中选取一个音频数据作为目标音频数据,并将另一个音频数据作为对标音频数据;
获取所述目标音频数据的目标特征,并获取所述对标音频数据的多个对标特征;
确定所述目标特征与每个所述对标特征之间的相关系数,并将所述相关系数作为所述两个音频数据的频谱特征之间的多个相似系数。
6.根据权利要求5所述的方法,其特征在于,所述获取所述目标音频数据的目标特征,包括:
确定所述目标音频数据在帧数阈值范围内的多个分帧数据;
将所述多个分帧数据的频谱特征进行合并,得到所述目标音频数据的目标特征。
7.根据权利要求5所述的方法,其特征在于,所述获取所述对标音频数据的多个对标特征,包括:
确定所述对标音频数据的多个对标帧数阈值范围;
确定所述对标音频数据在每个所述对标帧数阈值范围内的多个分帧数据,并对所述多个分帧数据的频谱特征进行合并,得到所述对标音频数据在每个所述对标帧数阈值范围内的频谱特征;
将所述对标音频数据在多个所述对标帧数阈值范围内的频谱特征,作为所述对标音频数据的对标特征。
8.根据权利要求2所述的方法,其特征在于,所述基于所述多个相似系数,确定所述两个音频数据之间的相似度,包括:
从所述多个相似系数中确定出最大相似系数;
基于所述最大相似系数对每个所述相似系数进行平滑处理,得到每个所述相似系数的平滑值;
将最大平滑值作为所述两个音频数据之间的相似度。
9.根据权利要求1所述的方法,其特征在于,所述基于所述主通道的音频数据,对所述次通道的音频数据进行滤波处理,得到滤波后的音频数据,包括:
确定所述次通道的音频数据在多个频率的功率值以及所述主通道的音频数据在多个频率的功率值;
基于所述主通道的音频数据在每个频率的功率值,确定所述每个频率的滤波参数;
基于所述每个频率的滤波参数,对所述次通道的音频数据在所述每个频率的功率值进行滤波处理,得到所述次通道的音频数据在所述每个频率的滤波功率值;
对所述次通道的音频数据在所述每个频率的滤波功率值进行基于频率的反变换处理,得到滤波后的音频数据。
10.一种音频处理装置,其特征在于,所述装置包括:
获取模块,用于响应于音频通话中存在多个通道的音频数据,获取所述多个通道的音频数据,其中,一个通道的音频数据来源于一个录音设备,所述多个通道的音频数据是在不同空间位置采集或回放得到的相互独立的音频数据;
确定模块,用于确定所述音频数据之间的相似度;
所述确定模块,还用于针对每个所述相似度执行以下处理;响应于所述相似度大于相似度阈值,确定所述相似度的两个音频数据对应的两个录音设备位于同一空间,并将录音设备位于所述同一空间的音频数据加入至同一通道组,其中,所述同一通道组中的各音频数据具有相似成分;
滤波模块,用于针对每个所述通道组执行以下处理:确定所述通道组中的每个通道的音频数据的音量;将最大音量的音频数据所对应的通道确定为主通道,并将其他通道作为次通道,其中,所述其他通道是所述通道组中除所述主通道之外的通道;基于所述主通道的音频数据,对所述次通道的音频数据进行滤波处理,得到滤波后的音频数据,其中,所述滤波后的音频数据用于所述音频通话。
11.一种电子设备,其特征在于,所述电子设备包括:
存储器,用于存储计算机可执行指令或计算机程序;
处理器,用于执行所述存储器中存储的计算机可执行指令或者计算机程序时,实现权利要求1至9任一项所述的音频处理方法。
12.一种计算机可读存储介质,存储有计算机可执行指令或者计算机程序,其特征在于,所述计算机可执行指令或者计算机程序被处理器执行时实现权利要求1至9任一项所述的音频处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311390913.4A CN117118956B (zh) | 2023-10-25 | 2023-10-25 | 音频处理方法、装置、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311390913.4A CN117118956B (zh) | 2023-10-25 | 2023-10-25 | 音频处理方法、装置、电子设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117118956A CN117118956A (zh) | 2023-11-24 |
CN117118956B true CN117118956B (zh) | 2024-01-19 |
Family
ID=88809681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311390913.4A Active CN117118956B (zh) | 2023-10-25 | 2023-10-25 | 音频处理方法、装置、电子设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117118956B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107534825A (zh) * | 2015-04-22 | 2018-01-02 | 华为技术有限公司 | 音频信号处理装置和方法 |
CN108597527A (zh) * | 2018-04-19 | 2018-09-28 | 北京微播视界科技有限公司 | 多声道音频处理方法、装置、计算机可读存储介质和终端 |
CN111628992A (zh) * | 2020-05-26 | 2020-09-04 | 腾讯科技(深圳)有限公司 | 一种多人通话控制方法、装置、电子设备及存储介质 |
CN112365895A (zh) * | 2020-10-09 | 2021-02-12 | 深圳前海微众银行股份有限公司 | 音频处理方法、装置及计算设备、存储介质 |
WO2021143599A1 (zh) * | 2020-01-15 | 2021-07-22 | 荣耀终端有限公司 | 基于场景识别的语音处理方法及其装置、介质和*** |
CN113687305A (zh) * | 2021-07-26 | 2021-11-23 | 浙江大华技术股份有限公司 | 声源方位的定位方法、装置、设备及计算机可读存储介质 |
CN114067822A (zh) * | 2020-08-07 | 2022-02-18 | 腾讯科技(深圳)有限公司 | 通话音频处理方法、装置、计算机设备和存储介质 |
CN116524895A (zh) * | 2023-03-31 | 2023-08-01 | 深圳市声扬科技有限公司 | 语音处理方法、装置、设备及计算机可读存储介质 |
CN116564319A (zh) * | 2023-05-10 | 2023-08-08 | 北京达佳互联信息技术有限公司 | 音频处理方法、装置、电子设备及存储介质 |
-
2023
- 2023-10-25 CN CN202311390913.4A patent/CN117118956B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107534825A (zh) * | 2015-04-22 | 2018-01-02 | 华为技术有限公司 | 音频信号处理装置和方法 |
CN108597527A (zh) * | 2018-04-19 | 2018-09-28 | 北京微播视界科技有限公司 | 多声道音频处理方法、装置、计算机可读存储介质和终端 |
WO2021143599A1 (zh) * | 2020-01-15 | 2021-07-22 | 荣耀终端有限公司 | 基于场景识别的语音处理方法及其装置、介质和*** |
CN111628992A (zh) * | 2020-05-26 | 2020-09-04 | 腾讯科技(深圳)有限公司 | 一种多人通话控制方法、装置、电子设备及存储介质 |
CN114067822A (zh) * | 2020-08-07 | 2022-02-18 | 腾讯科技(深圳)有限公司 | 通话音频处理方法、装置、计算机设备和存储介质 |
CN112365895A (zh) * | 2020-10-09 | 2021-02-12 | 深圳前海微众银行股份有限公司 | 音频处理方法、装置及计算设备、存储介质 |
CN113687305A (zh) * | 2021-07-26 | 2021-11-23 | 浙江大华技术股份有限公司 | 声源方位的定位方法、装置、设备及计算机可读存储介质 |
CN116524895A (zh) * | 2023-03-31 | 2023-08-01 | 深圳市声扬科技有限公司 | 语音处理方法、装置、设备及计算机可读存储介质 |
CN116564319A (zh) * | 2023-05-10 | 2023-08-08 | 北京达佳互联信息技术有限公司 | 音频处理方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117118956A (zh) | 2023-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10251009B2 (en) | Audio scene apparatus | |
CN111489760B (zh) | 语音信号去混响处理方法、装置、计算机设备和存储介质 | |
JP6385376B2 (ja) | 音声信号処理のためのマルチチャネル直接・環境分解のための装置及び方法 | |
US11605394B2 (en) | Speech signal cascade processing method, terminal, and computer-readable storage medium | |
CN113140225B (zh) | 语音信号处理方法、装置、电子设备及存储介质 | |
WO2007057879A1 (en) | Personalized voice activity detection | |
US20140329511A1 (en) | Audio conferencing | |
JP5130895B2 (ja) | 音声処理装置、音声処理システム、音声処理プログラム及び音声処理方法 | |
CN110956976B (zh) | 一种回声消除方法、装置、设备及可读存储介质 | |
EP3005362B1 (en) | Apparatus and method for improving a perception of a sound signal | |
CN115482830B (zh) | 语音增强方法及相关设备 | |
CN108335701B (zh) | 一种进行声音降噪的方法及设备 | |
WO2022253003A1 (zh) | 语音增强方法及相关设备 | |
CN111199751B (zh) | 一种麦克风的屏蔽方法、装置和电子设备 | |
CN111863011B (zh) | 音频处理方法及电子设备 | |
CN111710344A (zh) | 一种信号处理方法、装置、设备及计算机可读存储介质 | |
CN112565668B (zh) | 一种网络会议共享声音的方法 | |
CN117079661A (zh) | 一种声源处理方法及相关装置 | |
CN117118956B (zh) | 音频处理方法、装置、电子设备及计算机可读存储介质 | |
KR101597768B1 (ko) | 입체 음향을 이용한 다자간 인터랙티브 통화 시스템 및 방법 | |
CN112489680B (zh) | 声学回声消除算法的评估方法、装置及终端设备 | |
US20080059161A1 (en) | Adaptive Comfort Noise Generation | |
JP2024502287A (ja) | 音声強調方法、音声強調装置、電子機器、及びコンピュータプログラム | |
EP2456184B1 (en) | Method for playback of a telephone signal | |
CN115188394A (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 |