音频数据处理方法和装置、通话方法、音频处理芯片、电子设备以及计算机可读存储介质与流程

文档序号:29616083发布日期:2022-04-13 11:38阅读:91来源:国知局
音频数据处理方法和装置、通话方法、音频处理芯片、电子设备以及计算机可读存储介质与流程

1.本技术涉及音频数据处理技术领域,尤其涉及一种音频数据处理方法和装置、通话方法、音频处理芯片、电子设备以及计算机可读存储介质。


背景技术:

2.随着音频通话技术的应用场景越来越广泛,人们对通话质量的要求也越来越高。在通常的通话过程中,当通话的一方说出语音之后,由该一方的通话设备采集并传输到通话的另一方并且由该另一方的通话设备的语音播放装置播放出来,从而通话的另一方能够收听到。在该过程中,当通话的一方的语音音频在通话的另一方的通话设备的语音播放装置播放时,会在该另一方所在的空间中产生回音,即,所播放的语音音频被空间中的各种墙壁或物体的表面反射,并且进而在该另一方响应于通话的一方的语音而做出语音应答时,被该另一方的通话设备的语音采集装置采集到,从而被当做通话的另一方的语音而回传给通话的乙方。因此,通话一方会在说话的同时接收到自己的声音在传输到通话另一方被再次传回的音频声音,即,产生了通话回声,这样的通话回声严重影响了通话方的通话体验。
3.现有技术中,通常根据音频数据的时延估计结果以及线性滤波器的输出等信息,来估计回声残余的能量,从而对线性回声处理后的信号进行频谱增益调整。但是,现有的回声处理方案仅考虑了通话中音频数据中的回声的残余能量,但是随着音频通话技术的应用场景的日益多样化,不同场景和环境下回声会呈现不同的特点,因此使用统一的残余能量为基准来抑制回声,难以满足多变复杂的场景下人们对音频通话质量的要求。


技术实现要素:

4.本技术实施例提供一种音频数据处理方法和装置、通话方法、音频处理芯片、电子设备以及计算机可读存储介质,以解决现有技术中回声残余消除效果不佳的缺陷。
5.为达到上述目的,本技术实施例提供了一种音频数据处理方法,包括:
6.对第一通话方发送的第一音频数据和第二通话方采集到的第二音频数据进行线性滤波处理,得到线性回声数据,其中,所述第一通话方与所述第二通话方处于同一通话活动中;
7.根据第二通话方采集到的第二音频数据与所述线性回声数据确定线性输出数据;
8.根据所述第一音频数据和所述第二音频数据,确定用于标识在所述第一通话方与所述第二通话方之间进行的音频通话状态的第一状态数据和第二状态数据,其中,所述第一状态数据是所述第一音频数据与所述第二音频数据在各个子频带的相关系数的平均值,并且所述第一状态数据是所述线性回声数据与所述第二音频数据在各个子频带的比值的平均值;
9.根据所述第一状态数据和所述第二状态数据,确定与所述通话状态相关的权重因子,以对所述线性输出数据进行加权滤波处理,得到发送给所述第一通话方的第三音频数
据。
10.本技术实施例还提供了一种音频数据处理方法,包括:
11.对第一通话方发送的第一音频数据和第二通话方采集到的第二音频数据进行线性滤波处理,得到线性回声数据,其中,所述第一通话方与所述第二通话方处于同一通话活动中;
12.根据第二通话方采集到的第二音频数据与所述线性回声数据确定线性输出数据;
13.根据所述第一音频数据和所述第二音频数据,确定用于标识在所述第一通话方与所述第二通话方之间进行的音频通话状态的第一状态数据和第二状态数据,其中,所述第一状态数据是所述第一音频数据与所述第二音频数据在各个子频带的相关系数的平均值,并且所述第一状态数据是所述线性回声数据与所述第二音频数据在各个子频带的比值的平均值;
14.根据所述第一状态数据和所述第二状态数据,选择与所述第一状态数据和所述第二状态数据对应的信号降低幅度值;
15.根据所述信号降低幅度值对所述线性输出音频数据进行降低信号幅度的操作,得到发送给所述第一通话方的音频数据。
16.本技术实施例还提供了一种通话方法,包括:
17.接收第一音频数据;
18.播放所述第一音频数据;
19.执行音频采集处理以生成第二音频数据,其中,所述第二音频数据至少包括在播放所述第一音频数据时采集到的音频数据;
20.对所述第二音频数据进行线性滤波处理,得到线性回声数据;
21.根据所述第二音频数据与所述线性回声数据确定线性输出数据;
22.根据所述第一音频数据和所述第二音频数据,确定用于标识音频通话状态的第一状态数据和第二状态数据,其中,所述第一状态数据是所述第一音频数据与所述第二音频数据在各个子频带的相关系数的平均值,并且所述第一状态数据是所述线性回声数据与所述第二音频数据在各个子频带的比值的平均值;
23.根据所述第一状态数据和所述第二状态数据,确定与所述通话状态相关的权重因子,以对所述线性输出数据进行加权滤波处理,得到第三音频数据;
24.将所述第三音频数据输出给进行通话的通话方。
25.本技术实施例还提供了一种音频处理芯片,包括:
26.音频接收模块,用于接收第一音频数据;
27.音频输出,用于播放所述第一音频数据;
28.拾音模块,用于执行音频采集处理以生成第二音频数据,其中,所述第二音频数据至少包括在播放所述第一音频数据时由所述拾音模块采集到的音频数据;
29.滤波模块,用于对所述第二音频数据进行线性滤波处理,得到线性回声数据;
30.处理模块,用于根据所述第二音频数据与所述线性回声数据确定线性输出数据,根据所述第一音频数据和所述第二音频数据,确定用于标识音频通话状态的第一状态数据和第二状态数据,其中,所述第一状态数据是所述第一音频数据与所述第二音频数据在各个子频带的相关系数的平均值,并且所述第一状态数据是所述线性回声数据与所述第二音
频数据在各个子频带的比值的平均值;以及根据所述第一状态数据和所述第二状态数据,确定与所述通话状态相关的权重因子,
31.其中,所述滤波模块用于对所述线性输出数据进行加权滤波处理,得到第三音频数据,并且
32.所述音频输出模块用于将所述第三音频数据输出给进行通话的通话方。
33.本技术实施例还提供了一种音频数据处理装置,包括:
34.滤波模块,用于对第一通话方发送的第一音频数据和第二通话方采集到的第二音频数据进行线性滤波处理,得到线性回声数据,其中,所述第一通话方与所述第二通话方处于同一通话活动中;
35.线性输出模块,用于根据第二通话方采集到的第二音频数据与所述线性回声数据确定线性输出数据;
36.状态确定模块,用于根据所述第一音频数据和所述第二音频数据,确定用于标识在所述第一通话方与所述第二通话方之间进行的音频通话状态的第一状态数据和第二状态数据,其中,所述第一状态数据是所述第一音频数据与所述第二音频数据在各个子频带的相关系数的平均值,并且所述第一状态数据是所述线性回声数据与所述第二音频数据在各个子频带的比值的平均值;
37.抑制模块,用于根据所述第一状态数据和所述第二状态数据,确定与所述通话状态相关的权重因子,以对所述线性输出数据进行加权滤波处理,得到发送给所述第一通话方的第三音频数据。
38.本技术实施例还提供了一种电子设备,包括:
39.存储器,用于存储程序;
40.处理器,用于运行所述存储器中存储的所述程序,所述程序运行时执行本技术实施例提供的音频数据处理方法。
41.本技术实施例还提供了一种计算机可读存储介质,其上存储有可被处理器执行的计算机程序,其中,该程序被处理器执行时实现如本技术实施例提供的音频数据处理方法。
42.本技术实施例提供的音频数据处理方法和装置、通话方法、音频处理芯片、电子设备以及计算机可读存储介质,能够根据第一通话方发送的音频数据和第二通话方的采集数据,来确定用于标识当前的音频通话状态的第一状态数据和第二状态数据;进而,根据第一状态数据和第二状态数据所确定的与当前的音频通话状态相关的加权系数或者对应的抑制方案来对经过线性滤波后的麦克风采集数据进行针对性的抑制处理。从而能够基于当前通话状态来进行加权滤波或者采取对应的抑制方案来进行处理,从而能够考虑不同通话状态下回声残余的成分特性来进行回声残余抑制处理,能够提高回声残余抑制效果,有效提高通话质量。
43.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
附图说明
44.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通
技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
45.图1为本技术实施例提供的音频数据处理方法的应用场景示意图;
46.图2为本技术提供的音频数据处理方法一个实施例的流程图;
47.图3为本技术提供的音频数据处理方法另一个实施例的流程图;
48.图4为本技术提供的音频数据处理装置实施例的结构示意图;
49.图5为本技术提供的电子设备实施例的结构示意图。
具体实施方式
50.下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
51.实施例一
52.本技术实施例提供的方案可应用于任何具有音频处理能力的通信系统,例如安装有音频处理模块的通信设备等等。图1为本技术实施例提供的音频数据处理方法的应用场景示意图,图1所示的场景仅仅是本技术的技术方案可以应用的场景的示例之一。
53.随着音频技术的发展,音频通话技术的应用场景越来越广泛,不仅仅是日常的音频通话,而且也在商务领域中得到了广泛的应用。尤其是近来远程办公的兴起,越来越多的用户采用视频会议或音频会议来进行沟通。因此,用户对通话质量的要求也越来越高。
54.在通常的两端通话过程中,当通话的一端,例如与本地方相对的另一端,也称为远端,说出语音之后,由该另一方或者说远端的通话设备采集并进而传输到通话的本地方,例如近端,并且由近端的通话设备的音频播放装置播放出来,从而近端能够收听到远端发出的语音音频。
55.在该过程中,当远端发出的语音音频在近端端的通话设备的语音播放装置播放时,会在该近端所在的空间中产生回音,即,所播放的语音音频被近端所在的空间中传播,并且进而在被该近端的通话设备的语音采集装置采集到,从而被当做近端的语音音频而回传给远端,在该情况下,通常远端这时还在说话,即持续发出语音,而近端这时实际处在倾听状态下而没有说话,但是由于远端发出的音频在近端产生的回声回传到远端的通话设备,因此会在远端说话的同时将回传的远端自己的声音播放出来,从而远端在说话时还会听到自己的声音,即之前说过的话的回声,即,在远端处产生了通话回声,这样的通话回声严重影响了通话方的通话体验。
56.为此,现有技术中已经提出了根据传输的音频数据的时延估计结果以及线性滤波器的输出等信息,来估计回声残余的能量,从而对线性回声处理后的信号进行频谱增益调整,以实现对于通话音频中回声残余量的抑制。具体地,在现有技术中,例如如图1中所示,来自远端的下行数据,即已经包含有远端发出的音频数据在近端处通过近端的通话设备中的例如扬声器的播放装置播放后,可以沿着例如图1中所示的回声路径由近端的通话设备的例如麦克风的音频采集装置采集到,从而采集到的数据可以与远端的下行数据一起经过延迟估计模块来与近端的通话设备中的例如麦克风的音频采集设备采集到的包括有远端
的音频数据的回声的信号进行延迟对齐,从而获得远端的下行数据在近端处的时延估计结果,之后将延迟调整的信号和音频采集设备采集到的信号输入到线性滤波器中进行线性回声的估计处理,从而最终基于时延估计结果和线性回声估计结果来估计近端的上行数据中回声残余的能量,从而对上行数据中的回声进行抑制。
57.但是在实际使用中,通话双方的情况存在着很多变化。例如,一方可能使用耳机,另一方可能使用扬声器,或者双方都在讲话等等,在这些情况下采集到的音频信号也是存在着很大差异。例如,在图1中所示的场景中,在近端使用耳机的情况下麦克风采集到的回声残余就非常小,因此,在现有技术的技术方案中,仍然通过延迟估计和线型滤波估计来估计回声能量就有可能将近端发出的语音错误地识别为回声,在该情况下,可能会错误地对近端的语音进行了抑制,从而反而影响了远端收听近端的语音音频。
58.因此,在音频通话技术的应用场景的日益多样化的情况下,在不同场景和环境下回声成分会呈现不同的特点,因此使用统一的残余能量为基准来抑制回声,难以满足多变复杂的场景下人们对音频通话质量的要求。
59.为此,如图1中所示,示出了为远端,即,作为通话的本地方的另一方,消除其收听到的通话回声的场景。在现有技术中,作为远端的第一通话方可以将发出的语音数据作为下行数据以有线或无线的方式传输给近端的通话设备,例如,在图1中,下行数据x(t)被传输到作为近端的第二通话方的通话设备中的扬声器和延迟估计模块,从而在由近端的通话设备的扬声器播放远端的语音音频的同时,由延迟估计模块对下行数据x(t)以及由近端的通话设备的麦克风采集到的音频数据d(t)一起进行延迟对齐处理,以获得延迟估计结果x(t’),接下来,可以进一步将该延迟估计结果x(t’)与麦克风采集到的音频数据d(t)一起输入到现有的线性回声消除滤波器中进行线性回声估计计算,从而获得线性回声估计结果y(t)和对应的线性输出。
60.与现有技术中不同的是,在本技术中,在作为近端的第二通话方的通话设备中或者通话设备中的音频处理芯片中可以设置有处理模块,从而在如现有技术的方案中那样获得了延迟估计结果x(t’)和线性回声估计结果y(t)之后,在处理模块中可以基于作为下行数据的第一音频数据x(t)、线性回声数据y(t)和麦克风采集到的第二音频数据d(t)来进一步确定第二通话方当前的通话状态。例如,在本技术实施例中,在处理模块中,可以根据第一通话方传输来的第一音频数据x(t)和近端的通话设备的麦克风采集到的音频数据d(t)确定第一状态数据并且根据第二通话方传输来的第二音频数据d(t)和线性回声数据y(t)来确定第二状态数据。
61.例如,在本技术实施例中,图1中所示的方案中,,第一状态数据可以是第一音频数据与第二音频数据在各个子频带的相关系数的平均值,并且第二状态数据是线性回声数据与第二音频数据在各个子频带的比值的平均值,因此,根据本技术实施例,与现有技术相比,能够根据现有技术原有的输出进一步确定当前的通话状态,并且根据通话状态来确定与通话状态的权重因子,并且在现有技术中的回声抑制处理中引入该权重因子来考虑第二通话方的通话状态,即,根据第二通话方的通话状态的不同能够更加明确地确定线性输出结果中可能存在的回声残余分量,从而可以进一步对于现有技术的方案的线性输出结果进行进一步的回声残余分量的抑制,或者在本技术实施例中,也可以根据历史经验数据来建立通话状态与线性输出的增益调整方案的映射表,从而当确定了第一状态数据和第二状态
数据时,可以直接根据所确定的第一状态数据和第二状态数据查询预先建立的映射表来选择对应的调整方案或者增益调整因子来直接对线性输出结果进行回声残余处理。
62.因此,根据本申能够根据第一通话方发送的音频数据和第二通话方的采集数据,来确定用于标识当前的音频通话状态的第一状态数据和第二状态数据;进而,根据第一状态数据和第二状态数据所确定的与当前的音频通话状态相关的加权系数或者对应的抑制方案来对经过线性滤波后的麦克风采集数据进行针对性的抑制处理。从而能够基于当前通话状态来进行加权滤波或者采取对应的抑制方案来进行处理,从而能够考虑不同通话状态下回声残余的成分特性来进行回声残余抑制处理,能够提高回声残余抑制效果,有效提高通话质量。
63.上述实施例是对本技术实施例的技术原理和示例性的应用框架的说明,下面通过多个实施例来进一步对本技术实施例具体技术方案进行详细描述。
64.实施例二
65.图2为本技术提供的音频数据处理方法一个实施例的流程图,该方法的执行主体可以为具有音频处理能力的各种物联网终端或设备,也可以为集成在这些设备上的装置或芯片。如图2所示,该音频数据处理方法包括如下步骤:
66.s201,对第一通话方发送的第一音频数据和第二通话方采集到的第二音频数据进行线性滤波处理,得到线性回声数据。
67.在本技术实施例中,当处于本地方相对的远端的远端一方的第一通话方向近端的第二通话方在同一通话活动中发出语音作为第一音频数据时,如图1中所示,在本地方一端,即第二通话方可以在接收到该第一音频数据时,可以对该第一音频数据进行播放,例如通过近端的通话设备的扬声器进行播放,并且通过通过麦克风进行采集来获得第二音频数据,从而可以对第一音频数据和第二音频数据进行线性滤波处理。例如,可以将接收到的第一通话方的第一音频数据与本地方的通话设备所采集到的第二音频数据一起输入到例如线性aec(acoustic echo cancellation,声学回声消除)滤波模块来获得线性回声数据。即,通过线性滤波器的处理来分离线性回声数据。
68.s202,根据第二通话方采集到的第二音频数据与线性回声数据确定线性输出数据。
69.在步骤s201中获得了线性回声数据之后,由于线性回声数据可以反映本地方的通信装置所采集到的第二音频数据中与远端的第一通话方发送的第一音频数据相关的回声成分,因此可以进一步根据由作为本地方的近端的第二通话方采集到的第二音频数据和s201中获得的线性回声数据来确定线性输出数据。
70.s203,根据第一音频数据和第二音频数据,确定用于标识在第一通话方与第二通话方之间进行的音频通话状态的第一状态数据和第二状态数据。
71.在本技术实施例中,由于第一音频数据是远端的第一通话方发送的语音数据,并且第二音频数据是本地方的第二通话方的通信设备的例如麦克风所采集到的数据。在通常情况下,作为近端的本地方可能有三种通话状态:正在使用耳机说话、正在使用扬声器外放远端方的通话并且近端没有说话以及正在使用扬声器外放远端方的通话并且近端正在说话。
72.例如,在上述三种状态下,由近端的通信设备采集到的第二音频数据中可以包含
有第一音频数据的回声数据的情况存在着差异。例如,在近端使用耳机收听远端的通话或使用耳机说话的情况下,近端的通信装置的麦克风采集到的第二音频数据中几乎不包含有远端发送的第一音频数据。在近端使用扬声器外放远端方的通话并且近端没有说话的情况下,由于近端使用扬声器播放远端的第一音频数据,因此在近端所在的空间中传播的第一音频数据会被近端的通信装置采集到并且因此包含在近端的通信装置采集到的第二音频数据中,特别是在该状态下由于近端没有说话,因此近端的通信装置采集到的第二音频数据几乎都是第一音频数据。在近端使用扬声器外放远端的第一音频数据并且近端同时在说话的情况下,在近端所在的空间中传播的不仅仅是远端的第一音频数据,而且还有近端在该空间中发出的语音数据,因此,近端的通信装置能够采集到的第二音频数据能够既包含有远端的第一音频数据的成分,即回声数据,并且还包含有近端正在说的话。
73.因此,在本技术实施例中,可以在步骤s203中基于第一音频数据和第二音频数据来确定近端的通话状态,即,确定标识近端的通话状态的第一状态数据和第二状态数据。例如,在本技术实施例中,第一状态数据可以是通过对第一音频信号和第二音频信号在各个自频带的相关系数进行频带平均来获得。例如,在本技术实施例中,第二状态数据可以是通过经过线性滤波器处理分离的线性回声数据和第二音频数据在各个自频带的比值进行频带平均得到。即,第一状态数据是第一音频数据与第二音频数据在各个子频带的相关系数的平均值,并且第二状态数据是线性回声数据与第二音频数据在各个子频带的比值的平均值。因此,这样确定的第一状态数据和第二状态数据能够很好地区分第二通话方的上述三种通话状态,以便于在后续处理中可以基于根据通话状态而进行加权滤波。
74.s204,根据第一状态数据和第二状态数据,确定与通话状态相关的权重因子,以对线性输出数据进行加权滤波处理,得到发送给第一通话方的第三音频数据。
75.因此,可以根据在步骤s203中确定的第一状态数据和第二状态数据来确定与第二通话方的当前通话状态相关的加权因子,能够在步骤s204直接使用步骤s201和s202的输出来进一步根据当前的通话状态,即与通话状态的权重因子来进行加权滤波处理。
76.换言之,本技术实施例可以在现有技术中的回声抑制处理中引入该权重因子来考虑第二通话方的通话状态,即,根据第二通话方的通话状态的不同能够更加明确地确定线性输出结果中可能存在的回声残余分量,从而可以进一步对于现有技术的方案的线性输出结果进行进一步的回声残余分量的抑制,或者在本技术实施例中,也可以根据历史经验数据来建立通话状态与线性输出的增益调整方案的映射表,从而当确定了第一状态数据和第二状态数据时,可以直接根据所确定的第一状态数据和第二状态数据查询预先建立的映射表来选择对应的调整方案或者增益调整因子来直接对线性输出结果进行回声残余处理。
77.因此,根据本申能够根据第一通话方发送的音频数据和第二通话方的采集数据,来确定用于标识当前的音频通话状态的第一状态数据和第二状态数据;进而,根据第一状态数据和第二状态数据所确定的与当前的音频通话状态相关的加权系数或者对应的抑制方案来对经过线性滤波后的麦克风采集数据进行针对性的抑制处理。从而能够基于当前通话状态来进行加权滤波或者采取对应的抑制方案来进行处理,从而能够考虑不同通话状态下回声残余的成分特性来进行回声残余抑制处理,能够提高回声残余抑制效果,有效提高通话质量。
78.实施例三
79.图3为本技术提供的音频数据处理方法另一个实施例的流程图,该方法的执行主体可以为具有音频处理能力的各种通信终端或设备,也可以为集成在这些设备上的装置或芯片。如图3所示,该音频数据处理方法包括如下步骤:
80.s301,对第一音频数据进行音频活动检测,以确定第一音频数据中是否包含有语音音频。
81.在本技术实施例中,由于通信终端中用于进行音频处理的各个模块消耗的功率较大,而通话过程中通常双方不会一直说话,因此,在作为本地方的近端在进行通话时可以对接收到的远端的第一音频数据进行音频活动检测处理(voice activity detection,vad),以在确定第一音频数据中包含有语音数据时才启动相关的音频处理模块,并且在其他时候都使得相关的音频处理模块都处于待机或休眠状态,并且直到本步骤中的vad处理确定第一音频数据中包含有语音数据时,即确定远端的第一通信方正在说话时,才向相关的音频处理模块发送唤醒信号或者向通信装置的中央处理器或控制器等等发送通知信号以便于远端的通信装置能够唤醒相关的音频处理模块来对包含有远端的语音的第一音频数据进行处理。
82.s302,根据第二音频数据对第一音频数据进行延迟对齐处理。
83.在步骤s301确定接收到的第一音频数据中包含有远端的音频数据的情况下,可以在步骤s302中根据近端的通信装置所采集到的第二音频数据对接收到的第一音频数据例如通过延迟估计模块进行延迟对齐,从而对接收到的第一音频进行延迟调整。在通常情况下,由于作为本地方的近端在通过通信装置的例如麦克风的播放装置来播放第一音频数据并且通过例如扬声器的采集模块采集空间中传播的音频数据,即获得第二音频数据时,第二音频数据需要经过近端所在的空间中的传播才能够被近端的通信装置采集到,因此,即使在上述近端没有说话的情况下,近端的通信装置采集到的第二音频数据中包含的远端的说话成分会与第一音频数据存在着时间差,即第一音频数据由近端的通信装置的扬声器播放出来并经过空间传播而被麦克风接收到需要花费一段时间,从而与第一音频数据再时间线上是没有对齐的。因此,在步骤s302中可以使用第一音频数据来对近端的通信装置采集到的第二音频数据进行时间线上的对齐,从而能够有利于后续的回声识别和比对处理的准确性和效率。
84.s303,对第一通话方发送的第一音频数据和第二通话方采集到的第二音频数据进行线性滤波处理,得到线性回声数据。
85.在本技术实施例中,当处于本地方相对的远端的远端一方向近端发出语音作为第一音频数据时,如图1中所示,在本地方一端,即近端可以在接收到该第一音频数据时,可以对该第一音频数据进行播放,例如通过近端的通话设备的扬声器进行播放,并且通过通过麦克风进行采集来获得第二音频数据,从而可以对第一音频数据和第二音频数据进行线性滤波处理。即,第一音频数据是第一通话方在通话活动中发送给第二通话方的语音数据,并且第二音频数据是第二通话方在播放第一音频数据时采集到的音频数据。例如,可以将接收到的第一通话方的第一音频数据与本地方的通话设备所采集到的第二音频数据一起输入到例如线性aec(acoustic echo cancellation)滤波模块来获得线性回声数据。即,通过线性滤波器的处理来分离线性回声数据。
86.s304,根据第二通话方采集到的第二音频数据与线性回声数据确定线性输出数
据。
87.在步骤s301中获得了线性回声数据之后,由于线性回声数据可以反映本地方的通信装置所采集到的第二音频数据中与远端的第一通话方发送的第一音频数据相关的回声成分,因此可以进一步根据由作为本地方的近端的第二通话方采集到的第二音频数据和s301中获得的线性回声数据来确定线性输出数据。
88.s305,确定第一音频数据与第二音频数据在各个子频带的相关系数,并确定各相关系数的平均值作为第一状态数据。
89.s306,确定线性回声数据与第二音频数据在各个子频带的比值,并确定各比值的平均值作为第二状态数据。
90.在本技术实施例中,由于第一音频数据是远端的第一通话方发送的语音数据,并且第二音频数据是本地方的第二通话方的通信设备的例如麦克风所采集到的数据。在通常情况下,作为近端的本地方可能有三种通话状态:正在使用耳机说话、正在使用扬声器外放远端方的通话并且近端没有说话以及正在使用扬声器外放远端方的通话并且近端正在说话。
91.例如,在上述三种状态下,由近端的通信设备采集到的第二音频数据中包含的第一音频数据,即回声数据的情况存在着差异。例如,在近端使用耳机收听远端的通话或使用耳机说话的情况下,近端的通信装置的麦克风采集到的第二音频数据中几乎不包含有远端发送的第一音频数据。在近端使用扬声器外放远端方的通话并且近端没有说话的情况下,由于近端使用扬声器播放远端的第一音频数据,因此在近端所在的空间中传播的第一音频数据会被近端的通信装置采集到并且因此包含在近端的通信装置采集到的第二音频数据中,特别是在该状态下由于近端没有说话,因此近端的通信装置采集到的第二音频数据几乎都是第一音频数据。在近端使用扬声器外放远端的第一音频数据并且近端同时在说话的情况下,在近端所在的空间中传播的不仅仅是远端的第一音频数据,而且还有近端在该空间中发出的语音数据,因此,近端的通信装置能够采集到的第二音频数据能够既包含有远端的第一音频数据的成分,即回声数据,并且还包含有近端正在说的话。
92.因此,在本技术实施例中,可以在步骤s303和s304中基于第一音频数据和第二音频数据来确定近端的通话状态,即,在步骤s303中可以通过对第一音频信号和第二音频信号在各个子频带的相关系数进行频带平均来获得第一状态数据coh
xd
,并且可以在步骤s304中通过经过线性滤波器处理分离的线性回声数据和第二音频数据在各个子频带的比值进行频带平均得到第二状态数据ydr。因此,在该情况下,步骤s303获得的第一状态数据以及步骤s304中获得的第二状态数据可以用来标识第一通话方和第二通话方之间进行的音频通话的状态。因此,这样确定的第一状态数据和第二状态数据能够很好地区分第二通话方的上述三种通话状态,以便于在后续处理中可以基于根据通话状态而进行加权滤波。
93.s307,根据第一状态数据和第二状态数据确定用于控制语音失真的权衡因子。
94.在本技术实施例中,在步骤s303获得的第一状态数据和步骤s304获得的第二状态数据来确定权衡因子。在本技术实施例中,可以使用下述公式来确定该权衡因子。
[0095][0096]
其中,φ
yy
和φee是利用不同帧信号计算的协方差矩阵。因此,在本技术实施例中,可以通过第一状态数据和第二状态数据来获得能够用于确定回声残余成分的权衡因子。
[0097]
s308,根据权衡因子、线性回声数据和线性输出数据,确定帧间维纳滤波器系数。
[0098]
在步骤s307中获得了权衡因子之后,可以进一步在步骤s308中根据步骤s307中的权衡因子以及步骤s303和s304中获得的线性回声数据以及线性输出数据来确定帧间维纳滤波器系数。例如,可以采用下述公式来确定帧间维纳滤波器系数。
[0099][0100]
其中,t为时间,并且f表示声音频率,e1表示计算参数。
[0101]
s309,根据维纳滤波器系数对线性输出数据进行滤波处理,得到第一输出音频数据。
[0102]
在步骤s309中可以利用步骤s308中确定的维纳滤波器系数来使用维纳滤波器对步骤s304获得的线性输出数据进行滤波处理,以便于获得第一输出音频数据。本技术实施例可以在现有技术中的回声抑制处理中引入该权衡因子来考虑第二通话方的通话状态,即,根据第二通话方的通话状态的不同能够更加明确地确定线性输出结果中可能存在的回声残余分量,从而可以进一步对于现有技术的方案的线性输出结果进行进一步的回声残余分量的抑制。
[0103]
因此,在本技术实施例中,能够考虑近端的通话状态来在确定滤波器系数时引入对于当前近端的通话状态的判断结果作为参数,从而使得对回声抑制处理的效果的提升。
[0104]
s310,确定第一输出音频数据的频带平均增益。
[0105]
s311,选择与频带平均增益对应的信号降低幅度值。
[0106]
s312,根据信号降低幅度值对第一输出音频数据进行降低信号幅度的操作。
[0107]
在步骤s309获得了第一输出音频数据之后,可以进一步在步骤s310中确定步骤s309中获得的第一输出音频数据的频带平均增益,并且在步骤s311中根据步骤s309中获得的频带平均增益来选择对应的信号降低幅度值,从而在步骤s312中利用所选择的信号降低幅度值来对步骤s309中获得的第一输出音频数据进行降低信号幅度的操作,从而实现对第一输出音频数据中包含的回声残留的进一步的抑制。
[0108]
此外,在本技术实施例中,也可以根据历史经验数据来建立通话状态与线性输出的增益调整方案的映射表,从而当确定了第一状态数据和第二状态数据时,可以直接根据所确定的第一状态数据和第二状态数据查询预先建立的映射表来选择对应的调整方案或者增益调整因子来直接对线性输出结果进行回声残余处理。
[0109]
例如,在本技术实施例中,替代确定权衡因子,可以选择与第一状态数据和第二状态数据对应的信号降低幅度值,并且根据信号降低幅度值对线性输出音频数据进行降低信号幅度的操作,从而能够根据历史经验数据来快速地确定用于去除回声残余的增量调整方案。
[0110]
因此,根据本申能够根据第一通话方发送的音频数据和第二通话方的采集数据,来确定用于标识当前的音频通话状态的第一状态数据和第二状态数据;进而,根据第一状态数据和第二状态数据所确定的与当前的音频通话状态相关的加权系数或者对应的抑制方案来对经过线性滤波后的麦克风采集数据进行针对性的抑制处理。从而能够基于当前通话状态来进行加权滤波或者采取对应的抑制方案来进行处理,从而能够考虑不同通话状态
下回声残余的成分特性来进行回声残余抑制处理,能够提高回声残余抑制效果,有效提高通话质量。
[0111]
实施例四
[0112]
图4为本技术提供的音频数据处理装置实施例的结构示意图,可用于执行如图2和图3所示的方法步骤。如图4所示,该音频数据处理装置可以包括:滤波模块41、线性输出模块42、状态确定模块43和抑制模块44。
[0113]
滤波模块41可以用于对第一通话方发送的第一音频数据和第二通话方采集到的第二音频数据进行线性滤波处理,得到线性回声数据。
[0114]
在本技术实施例中,当处于本地方相对的远端的远端一方的第一通话方向近端的第二通话方在同一通话活动中发出语音作为第一音频数据时,如图1中所示,在本地方一端,即第二通话方可以在接收到该第一音频数据时,可以对该第一音频数据进行播放,例如通过近端的通话设备的扬声器进行播放,并且通过通过麦克风进行采集来获得第二音频数据,从而可以对第一音频数据和第二音频数据进行线性滤波处理。例如,可以将接收到的第一通话方的第一音频数据与本地方的通话设备所采集到的第二音频数据一起输入到例如线性aec(acoustic echo cancellation,声学回声消除)滤波模块来获得线性回声数据。即,通过线性滤波器的处理来分离线性回声数据。
[0115]
线性输出模块42用于根据第二通话方采集到的第二音频数据与线性回声数据进行确定线性输出数据。
[0116]
在滤波模块41获得了线性回声数据之后,由于线性回声数据可以反映本地方的通信装置所采集到的第二音频数据中与远端的第一通话方发送的第一音频数据相关的回声成分,因此可以进一步利用线性输出模块42来根据由作为本地方的近端的第二通话方采集到的第二音频数据和滤波模块41获得的线性回声数据来确定线性输出数据。
[0117]
状态确定模块43,用于根据第一音频数据和第二音频数据,确定用于标识在第一通话方与第二通话方之间进行的音频通话状态的第一状态数据和第二状态数据。
[0118]
在本技术实施例中,由于第一音频数据是远端的第一通话方发送的语音数据,并且第二音频数据是本地方的第二通话方的通信设备的例如麦克风所采集到的数据。在通常情况下,作为近端的本地方可能有三种通话状态:正在使用耳机说话、正在使用扬声器外放远端方的通话并且近端没有说话以及正在使用扬声器外放远端方的通话并且近端正在说话。
[0119]
因此,在本技术实施例中,状态确定模块43可以基于第一音频数据和第二音频数据来确定近端的通话状态,即,确定标识近端的通话状态的第一状态数据和第二状态数据。例如,在本技术实施例中,可以通过状态确定模块43的第一确定单元431来通过对第一音频信号和第二音频信号在各个自频带的相关系数进行频带平均来获得第一状态数据。例如,在本技术实施例中,可以通过状态确定模块43的第二确定单元432来通过经过线性滤波器处理分离的线性回声数据和第二音频数据在各个自频带的比值进行频带平均得到第二状态数据。
[0120]
抑制模块44,可以用于根据第一状态数据和第二状态数据,确定与通话状态相关的权重因子,以对线性输出数据进行加权滤波处理,得到发送给第一通话方的第三音频数据。
[0121]
因此,可以根据状态确定模块43确定的第一状态数据和第二状态数据来确定与第二通话方的当前通话状态相关的加权因子,抑制模块44能够直接使用滤波模块41和线性输出模块42的输出来进一步根据当前的通话状态,即与通话状态的权重因子来进行加权滤波处理。
[0122]
换言之,本技术实施例可以在现有技术中的回声抑制处理中引入该权重因子来考虑第二通话方的通话状态,即,根据第二通话方的通话状态的不同能够更加明确地确定线性输出结果中可能存在的回声残余分量,从而可以进一步对于现有技术的方案的线性输出结果进行进一步的回声残余分量的抑制,或者在本技术实施例中,也可以根据历史经验数据来建立通话状态与线性输出的增益调整方案的映射表,从而当确定了第一状态数据和第二状态数据时,可以直接根据所确定的第一状态数据和第二状态数据查询预先建立的映射表来选择对应的调整方案或者增益调整因子来直接对线性输出结果进行回声残余处理。
[0123]
例如,在本技术实施例中,抑制模块44可以包括:第三确定单元441、第四确定单元442和滤波单元443。
[0124]
第三确定单元441可以用于根据第一状态数据和所述第二状态数据确定用于控制语音失真的权衡因子。
[0125]
在本技术实施例中,利用第一确定单元431获得的第一状态数据和第二确定单元432获得的第二状态数据来确定权衡因子。在本技术实施例中,可以使用下述公式来确定该权衡因子μ。
[0126][0127]
其中,φ
yy
和φ
ee
是利用不同帧信号确定的协方差矩阵。因此,在本技术实施例中,可以通过第一状态数据和第二状态数据来获得这样的能够用于确定回声残余成分的权衡因子。
[0128]
第四确定单元442可以用于根据权衡因子、线性回声数据和线性输出数据,确定帧间维纳滤波器系数。
[0129]
在第三确定单元441获得了权衡因子之后,可以进一步利用第四确定单元442根据第三确定单元441确定出的权衡因子以及滤波模块41获得的线性回声数据以及线性输出模块42获得的线性输出数据来确定帧间维纳滤波器系数。例如,可以采用下述公式来确定帧间维纳滤波器系数w(t,f)。
[0130][0131]
其中,t为时间,并且f表示声音频率,e1表示计算参数。
[0132]
滤波单元443可以用于根据维纳滤波器系数对所述线性输出数据进行滤波处理,得到第一输出音频数据
[0133]
在本技术实施例中,滤波单元443可以利用第三确定单元441确定获得的维纳滤波器系数来使用维纳滤波器对线性输出模块42获得的线性输出数据进行滤波处理,以便于获得第一输出音频数据。因此,在本技术实施例中,可以在现有技术中的回声抑制处理中引入该权衡因子来考虑第二通话方的通话状态,即,根据第二通话方的通话状态的不同能够更加明确地确定线性输出结果中可能存在的回声残余分量,从而可以进一步对于现有技术的
方案的线性输出结果进行进一步的回声残余分量的抑制。
[0134]
此外,本技术实施例的音频处理装置可以进一步包括:增益确定模块47、选择模块48和信号幅度调整模块49。
[0135]
增益确定模块47可以用于确定所述第一输出音频数据的频带平均增益;
[0136]
选择模块48可以用于选择与所频带平均增益对应的信号降低幅度值;
[0137]
信号幅度调整模块49可以用于根据所述信号降低幅度值对所述第一输出音频数据进行降低信号幅度的操作。
[0138]
在滤波单元443获得了第一输出音频数据之后,可以进一步利用增益确定模块47确定滤波单元443获得的第一输出音频数据的频带平均增益,并且利用选择模块48来根据增益确定模块47获得的频带平均增益来选择对应的信号降低幅度值,从而使用信号幅度调整模块49来利用所选择的信号降低幅度值来对滤波单元443获得的第一输出音频数据进行降低信号幅度的操作,从而实现对第一输出音频数据中包含的回声残留的进一步的抑制。
[0139]
此外,抑制模块44可以进一步包括:选择单元444和信号幅度调整单元445。
[0140]
选择单元444可以用于选择与第一状态数据和第二状态数据对应的信号降低幅度值。
[0141]
信号幅度调整单元445可以用于根据信号降低幅度值对线性输出音频数据进行降低信号幅度的操作。
[0142]
此外,本技术实施例中已经获得了第一状态数据和第二状态数据之后,也可以通过选择单元444直接根据标识第一状态数据和第二状态数据所标识的近端的当前的通话状态来从例如预先设置的表中查询与状态数据对应的信号降低幅度值,并且利用信号幅度调整单元445使用步骤选择单元444选择的信号降低幅度值来对线性输出模块42获得的线性输出音频进行降低信号幅度的操作。
[0143]
语音检测模块45可以用于对第一音频数据进行音频活动检测,以确定第一音频数据中是否包含有语音音频。
[0144]
在本技术实施例中,由于通信终端中用于进行音频处理的各个模块消耗的功率较大,而通话过程中通常双方不会一直说话,因此,在作为本地方的近端在进行通话时可以利用语音检测模块45对接收到的远端的第一音频数据进行音频活动检测处理(voice activity detection,vad),以在确定第一音频数据中包含有语音数据时才启动相关的音频处理模块,并且在其他时候都使得相关的音频处理模块都处于待机或休眠状态,并且直到本步骤中的vad处理确定第一音频数据中包含有语音数据时,即确定远端的第一通信方正在说话时,才向相关的音频处理模块发送唤醒信号或者向通信装置的中央处理器或控制器等等发送通知信号以便于远端的通信装置能够唤醒相关的音频处理模块来对包含有远端的语音的第一音频数据进行处理。
[0145]
延迟对齐模块46可以用于根据第二音频数据对第一音频数据进行延迟对齐处理。
[0146]
在语音检测模块45确定接收到的第一音频数据中包含有远端的音频数据的情况下,可以利用延迟对齐模块46根据近端的通信装置所采集到的第二音频数据对接收到的第一音频数据例如通过延迟估计模块进行延迟对齐,从而对接收到的第一音频进行延迟调整。在通常情况下,由于作为本地方的近端在通过通信装置的例如麦克风的播放装置来播放第一音频数据并且通过例如扬声器的采集模块采集空间中传播的音频数据,即获得第二
音频数据时,第二音频数据需要经过近端所在的空间中的传播才能够被近端的通信装置采集到,因此,即使在上述近端没有说话的情况下,近端的通信装置采集到的第二音频数据中包含的远端的说话成分会与第一音频数据存在着时间差,即第一音频数据由近端的通信装置的扬声器播放出来并经过空间传播而被麦克风接收到需要花费一段时间,从而与第一音频数据再时间线上是没有对齐的。因此,可以通过例如近端的通信装置的延迟对齐模块46来可以使用第一音频数据来对近端的通信装置采集到的第二音频数据进行时间线上的对齐,从而能够有利于后续的回声识别和比对处理的准确性和效率。
[0147]
因此,根据本技术实施例的音频数据处理装置,因此,根据本申能够根据第一通话方发送的音频数据和第二通话方的采集数据,来确定用于标识当前的音频通话状态的第一状态数据和第二状态数据;进而,根据第一状态数据和第二状态数据所确定的与当前的音频通话状态相关的加权系数或者对应的抑制方案来对经过线性滤波后的麦克风采集数据进行针对性的抑制处理。从而能够基于当前通话状态来进行加权滤波或者采取对应的抑制方案来进行处理,从而能够考虑不同通话状态下回声残余的成分特性来进行回声残余抑制处理,能够提高回声残余抑制效果,有效提高通话质量。
[0148]
实施例五
[0149]
以上描述了音频数据处理装置的内部功能和结构,该装置可实现为一种电子设备。图5为本技术提供的电子设备实施例的结构示意图。如图5所示,该电子设备包括存储器51和处理器52。
[0150]
存储器51,用于存储程序。除上述程序之外,存储器51还可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
[0151]
存储器51可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
[0152]
处理器52,不仅仅局限于中央处理器(cpu),还可能为图形处理器(gpu)、现场可编辑门阵列(fpga)、嵌入式神经网络处理器(npu)或人工智能(ai)芯片等处理芯片。处理器52,与存储器51耦合,执行存储器51所存储的程序,该程序运行时执行上述实施例二和三的音频数据处理方法。
[0153]
进一步,如图5所示,电子设备还可以包括:通信组件53、电源组件54、音频组件55、显示器56等其它组件。图5中仅示意性给出部分组件,并不意味着电子设备只包括图5所示组件。
[0154]
通信组件53被配置为便于电子设备和其他设备之间有线或无线方式的通信。电子设备可以接入基于通信标准的无线网络,如wifi,3g、4g或5g,或它们的组合。在一个示例性实施例中,通信组件53经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件53还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。
[0155]
电源组件54,为电子设备的各种组件提供电力。电源组件54可以包括电源管理系
统,一个或多个电源,及其他与为电子设备生成、管理和分配电力相关联的组件。
[0156]
音频组件55被配置为输出和/或输入音频信号。例如,音频组件55包括一个麦克风(mic),当电子设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器51或经由通信组件53发送。在一些实施例中,音频组件55还包括一个扬声器,用于输出音频信号。
[0157]
显示器56包括屏幕,其屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
[0158]
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
[0159]
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1