一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

音频数据的处理方法、装置、设备及存储介质与流程

2021-07-09 12:08:00 来源:中国专利 TAG:音频 数据处理 数据传输 装置 实施


1.本公开实施例涉及音频数据传输技术领域,尤其涉及一种音频数据的处理方法、装置、设备及存储介质。


背景技术:

2.在音频传输过程中,为应对可能发生的丢包情况,一般会采用前向纠错(forward error correction,fec)技术,通过在音频包中插入冗余信息,用于恢复丢失的音频帧。当开启前向纠错时,会在当前音频包中插入一段低码率的上一帧音频,当发生音频丢失时,可以在接收到下一个音频包时,恢复出当前音频帧和上一个音频帧。但是由于该方法中前向纠错恢复所使用的信息依然是线性预测编码进行压缩后的信息,当比特率低于6kbit/s时,音质会出现断崖式下降,因此即使是前向纠错,也无法压缩到较低比特率。这样会导致在码率一定的情况下,前向纠错的能力不足,难以应对连续多个音频包发生丢失的场景。当使用极低码率对音频进行编码时,由于大量的细节在编码过程中发生损失,恢复出的音频听感较差。


技术实现要素:

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.图1本公开实施例中的一种音频数据的处理方法的流程图;
37.图2是本公开实施例中的一种音频数据的处理方法;
38.图3是本公开实施例中的拼帧处理后的频谱图;
39.图4是本公开实施例中的一种设定神经网络的结构示意图;
40.图5是本公开实施例中的一种音频数据的处理装置的结构示意图;
41.图6是本公开实施例中的一种音频数据的处理装置的结构示意图;
42.图7是本公开实施例中的一种电子设备的结构示意图。
具体实施方式
43.下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
44.应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
45.本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
46.需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
47.需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
48.本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
49.数据发送端发送音频数据时,待发送的数据是经过采样后的音频数据。一般来说,采用16khz采样率采样后的音频数据,每秒会包含16000个采样数据。对于这些数据,在发送时会进行分帧,比如每一帧音频为20ms,则每秒的数据会被拆分成50帧,每一帧数据中包含320个采样点。这些音频帧在压缩后,会被打包成网络包,通过网络传输出去,每一个网络包可以打包一个或多个音频帧。
50.前向纠错算法在网络包中增加一些冗余信息,用于在发生丢包时恢复之前的音频帧。带有前向纠错的网络包具有如下形式:
51.包信息当前音频帧前向纠错音频帧
52.在包信息中,包含当前包类型,长度等信息。当前音频帧表示当前发送的普通音频帧,一般采取相对较高码率进行编码。前向纠错音频帧包含当前音频帧若干前向帧音频信息,采用较低码率编码。本实施例中主要关注前向纠错音频帧的产生。
53.语音编码比较主流的方法是基于线性预测编码实现的,而线性预测编码由于需要大量的保留激励信息,无法进行低比特率压缩,为了能够恢复多个音频帧,本实施例中使用正弦编码对需要前向纠错的音频帧进行压缩。具体的技术方案参照如下实施例。
54.图1为本公开实施例提供的一种音频数据的处理方法的流程图,该方法由数据发
送端执行。本实施例可适用于对将要传输的音频数据进行处理的情况,该方法可以由音频数据的处理装置来执行,该装置可由硬件和/或软件组成,并一般可集成在具有音频数据的处理功能的设备中,该设备可以是服务器、移动终端或服务器集群等电子设备。如图1所示,该方法具体包括如下步骤:
55.步骤110,获取当前数据包的前向数据包包含的音频数据。
56.其中,数据包中可以包含一个或多个音频帧,当前数据包可以理解为当前待发送的数据包。前向数据包可以理解为当前数据包的上一个数据包或者前几个数据包,即已经发送出去的数据包。获取的音频数据可以包含一个或多个音频帧,例如:可以是两个音频帧,即40ms的音频帧。
57.步骤120,将音频数据转换为频谱信号。
58.其中,音频数据为时域上的信号,频谱信号可以理解为频域上的信号。本实施例中,将音频数据转换为频谱信号的方式可以是对音频数据进行傅里叶变换。
59.具体的,将音频数据转换为频谱信号的过程可以是:采用设定采样频率对音频数据进行采样,获得离散音频数据;对离散音频数据进行加窗处理,并对加窗处理后的离散音频数据进行傅里叶变换,获得频谱信号。
60.其中,设定采样频率可以是8khz。本实施例中,一帧音频中包含有320个采样点,为了进一步减少数据量,需要继续进行采用,采样后一帧音频包含160个采样点。加窗处理可以是加矩形窗或者汉明窗(hanmming)。示例性的,音频数据包含两帧音频,即40ms的音频帧,采样后包含320采样点,对这40ms的音频帧加窗后进行512点的傅里叶变换,获得音频数据对应的频谱信号。
61.步骤130,对频谱信号进行基音分析,获取频谱信号的基音频率。
62.其中,对频谱信号进行基音分析,可以采用现有的基音检测算法实现。基音检测算法可以估计周期性信号的音高或基本频率,此处不再赘述。
63.步骤140,在频谱信号中确定基音频率对应的倍频以及倍频幅值。
64.其中,基音频率对应的倍频可以理解为基音频率的正数倍频率,假设基音频率为f,则倍频为f、2f、3f
……
nf。倍频幅值可以理解为在频谱信号中基音频率对应的各倍频点的幅值。
65.步骤150,对倍频幅值进行编码压缩,获得压缩数据。
66.本实施例中,可以采用矢量量化技术对倍频幅值进行编码压缩,画的压缩后的量化索引值。
67.具体的,对倍频幅值进行编码压缩,获得压缩数据的过程可以是:将倍频幅值均值插值于频谱信号对应的频率范围内的频点上;对均匀插值的倍频幅值进行归一化处理;对归一化处理的倍频幅值进行编码压缩,获得压缩数据。
68.假设基音频率对应有20个倍频点,对于8khz采样频率的音频,频率范围为0

4khz。均值插值的过程就是对0

4khz进行20等分。
69.本实施例中,归一化的方式可以是采用基准量对倍频幅值进行归一化处理。
70.本实施例中,对归一化处理的倍频幅值进行编码压缩,获得压缩数据的方式可以是:对归一化处理的倍频幅值进行编码压缩,获得量化索引值;基于量化索引值生成压缩数据。
71.其中,压缩数据还包括基音频率和归一化采用的基准量。其中,矢量量化的过程可以包括密码书设计、密码字搜索和密码索引分配。其中,密码索引与本实施例的量化索引值等同。本实施例中,可以采用矢量量化技术对归一化处理的倍频幅值进行编码压缩。
72.步骤160,将压缩数据添加至当前数据包中,并将当前数据包发送至接收端。
73.具体的,在获得压缩数据后,将压缩数据添加至当前数据包的冗余信息(即前向纠错音频信息)中,并将当前数据包发送至接收端,使得接收到在检测到丢包时,根据该压缩数据对丢失的音频数据进行恢复。
74.本公开实施例的技术方案,获取当前数据包的前向数据包包含的音频数据;将音频数据转换为频谱信号;对频谱信号进行基音分析,获取频谱信号的基音频率;在频谱信号中确定基音频率对应的倍频以及倍频幅值;对倍频幅值进行编码压缩,获得压缩数据;将压缩数据添加至当前数据包中,并将当前数据包发送至接收端。本公开实施例提供的音频数据的处理方法,在数据发送端根据前向音频数据的频谱信号提取出基音频率,并获取基音频率对应的倍频幅值,将倍频幅值编码压缩后添加至当前数据包中,可以节省传输带宽。
75.图2是本公开实施例公开的一种音频数据的处理方法,该方法由数据接收端执行,如图2所示,该方法包括如下步骤:
76.步骤210,检测到数据包丢失时,获取丢失数据包的后向数据包中的压缩数据。
77.其中,后向数据包可以理解为丢失数据包的下一个数据包或者比丢失数据包的序列号大1的数据包。其中,压缩数据存放与数据包中的冗余信息或者前向纠错信息中。压缩数据可以包括基音频率、归一化采用的基准量和量化索引值。
78.步骤220,对压缩数据进行解码处理,获得初始频谱。
79.其中,初始频谱包含n个倍频点的幅度值,如图2所示,离散的竖线构成初始频谱,曲线为需要恢复出的音频。
80.具体的,对压缩数据进行解码处理,获得初始频谱的方式可以是:根据基音频率确定倍频;根据量化索引值确定初始倍频幅值及倍频幅值所在频点;基于归一化采用的基准量对初始倍频幅值进行逆归一化处理,获得目标倍频幅值;基于目标倍频幅值及频点确定初始频谱。
81.其中,可以理解为基音频率的正数倍频率,假设基音频率为f,则倍频为f、2f、3f
……
nf。
82.步骤230,获取丢失数据包的前向数据包中的设定数量的前向频谱。
83.其中,设定数量可以设置为3

5之间的任意值。前向频谱可以理解为前向音频帧对应的频谱,前向频谱由256个幅值构成。具体的,首先获取前向数据包中的设定数量前向音频帧,然后对前向音频帧进行傅里叶变换,获得前向频谱。
84.步骤240,将前向频谱和初始频谱进行拼帧处理,并将拼帧处理后的频谱输入设定神经网络进行语音增强,获得目标频谱。
85.其中,拼帧处理可以理解为将前向频谱和初始频谱对应的数据进行组合,假设,获取了4个前向频谱,则拼帧处理后的频谱对应的数据为256*5的矩阵数据。示例性的,图3为本实施例中拼帧处理后的频谱图,如图3所示,颜色深度代表幅值强度。
86.本实施例中,为了使神经网络具有更好的适应性,需要将输入和输出数据取对数,以归一化到0~1之间。
87.其中,设定神经网络可以是带有跳跃

连接(skip

connection)结构的自编码神经网络。图4为本公开实施例的一种设定神经网络的结构示意图。如图4所示,设定神经网络包括至少两个降采样模块、瓶颈块及至少两个升采样模块;其中,降采样模块与升采样模块一一对应。降采样模块包括残差块和池化层;瓶颈块包括至少一个残差块;升采样模块包括残差块和上采样层;其中,残差块包括设定数量的卷积层,且第一个卷积层与最后一个卷积层通过加法连接;升采样模块的输入包括上一层的输出以及对应的降采样模块的输出。
88.步骤250,对目标频谱的相位进行重建,根据重建的相位和目标频谱确定目标音频数据。
89.其中,目标频谱未包含相位信息,为了准确的恢复丢失的音频数据,需要对相位进行重建。
90.具体的,对目标频谱的相位进行重建的过程可以是:确定目标频谱各频点的相位增量;根据相位增量及目标频谱前一帧音频数据的相位确定各频点的初始相位;对初始相位进行优化,获得重建的目标相位。
91.其中,相位增量可以理解为相对于前一帧音频数据的相位的增量。本实施例中,确定目标频谱各频点的相位增量的方式可以是,首先确定峰值频点的相位增量,然后根据峰值频点的相位增量确定其他各频点的相位增量。
92.具体的,确定目标频谱各频点的相位增量的过程可以是:遍历目标频谱的频点值,获得峰值频点;基于峰值频点的上一个频点值和下一个频点值确定峰值频点的偏移量;根据偏移量确定真实峰值频率;根据真实峰值频率确定峰值频点处的相位增量;根据峰值频点处的相位增量确定非峰值频点的相位增量。
93.其中,其中,频点值为频点对应的幅值。本实施例中,对于由设定神经网络输出得包括256*1个频点值的目标频谱,遍历这256*1个频点值,确定出频点值比相邻两侧的频点值都大的频点,作为峰值频点。
94.本实施例中,由于目标频谱是离散的,确定的峰值频点无法准确代表频谱上的峰值位置,因此需求峰值频点的上一个频点值和下一个频点值确定真实的峰值位置。假设峰值频点为i,则真实峰值位置相对于i的偏移量按照如下公式计算:
95.其中,f(i

1)为峰值频点i的上一个频点值,f(i 1)为峰值频点i的下一个频点值,f(i)为峰值频点的幅值。则真实峰值位置为i p,那么真实峰值频率为
96.在获得真实峰值频率后,按照公式计算峰值频点出的相位增量:其中,hop_size为傅里叶变换时每一帧音频数据的偏移量,可以直接获取到。
97.本实施例中,根据峰值频点处的相位增量确定非峰值频点的相位增量的方式可以是:对于当前峰值频点所在周期内的非峰值频点,根据偏移量和非峰值频点与当前峰值频点的位置关系确定相位增量。
98.具体的,若偏移量p大于0,则当前周期内对于大于峰值频点的非峰值频点,相位增
量与峰值频点i的相同,对于小于峰值频点的非峰值频点,相位增量为若偏移量p小于0,则当前周期内对于小于峰值频点的非峰值频点,相位增量与峰值频点i的相同,对于大于峰值频点的非峰值频点,相位增量为
99.在获得各频点的相位增量后,当前音频帧的相位为:其中为上一音频帧的相位。
100.从上述实施例在获得初始相位的过程可以是看出,初始相位不连续,且大量频点具有相同的相位。仅用此方法恢复出的声音机械感较强,不够生动,因此需要对初始相位进行优化。
101.具体的,对初始相位进行优化,获得重建的目标相位的过程可以是:将携带有初始相位的目标频谱与k

1个前向频谱进行组合,获得组合频谱;对组合频谱进行傅里叶逆变换,获得组合音频;将组合音频与前一帧音频进行交叠相加,获得交叠音频;对交叠音频进行傅里叶变换,并将变换后频谱的相位确定为目标相位。
102.本实施例中,可以创建一个可容纳k帧频谱的缓存队列,以对连续的k帧频谱进行缓存,在获得携带有初始相位的目标频谱后,将该目标频谱也缓存进缓存队列中。将k帧频谱组合获得组合频谱,然后对组合频谱进行傅里叶逆变换,获得组合音频,并对组合音频和与前一帧音频加窗后进行交叠相加,获得交叠音频。继续对交叠音频进行傅里叶变换,并将变换后频谱的相位确定为目标相位。将携带有目标相位的目标频谱进行傅里叶逆变换,获得目标音频。
103.可选的,为了进一步优化目标相位,可以返回执行将携带有目标相位的目标频谱与k

1个前向频谱进行组合,获得组合频谱;对组合频谱进行傅里叶逆变换,获得组合音频;将组合音频与前一帧音频进行交叠相加,获得交叠音频;对交叠音频进行傅里叶变换,并将变换后频谱的相位确定为目标相位。直到达到迭代次数。
104.本实施例中,在获得目标音频后,若直接将目标音频播放会存在不连续而导致爆破音,所以还需要将目标音频与正常音频交叠相加,以避免前向纠错恢复出的音频与正常音频连接处出现爆破音。
105.具体的,在根据重建的相位和目标频谱确定目标音频数据之后,还包括如下步骤:获取目标音频数据的前一帧音频数据;将目标音频数据与前一帧音频数据进行交叠相加,获得最终的音频数据。
106.本实施例中,首先对目标音频和前一帧音频分别进行加窗处理,对加窗处理后的目标音频和前一帧音频进行交叠相加,获得最终的音频数据。
107.本公开实施例的技术方案,获取当前数据包的前向数据包包含的音频数据;将音频数据转换为频谱信号;对频谱信号进行基音分析,获取频谱信号的基音频率;在频谱信号中确定基音频率对应的倍频以及倍频幅值;对倍频幅值进行编码压缩,获得压缩数据;将压缩数据添加至当前数据包中,并将当前数据包发送至接收端。本公开实施例提供的音频数据的处理方法,在数据发送端根据前向音频数据的频谱信号提取出基音频率,并获取基音频率对应的倍频幅值,将倍频幅值编码压缩后添加至当前数据包中,可以节省传输带宽。
108.图5是本公开实施例提供的一种音频数据的处理装置的结构示意图,该装置设置于数据发送端,如图5所示,包括:
109.音频数据获取模块510,用于获取当前数据包的前向数据包包含的音频数据;
110.频谱信号转换模块520,用于将音频数据转换为频谱信号;
111.基音频率获取模块530,用于对频谱信号进行基音分析,获取频谱信号的基音频率;
112.倍频幅值确定模块540,用于在频谱信号中确定基音频率对应的倍频以及倍频幅值;
113.压缩数据获取模块550,用于对倍频幅值进行编码压缩,获得压缩数据;
114.压缩数据添加模块560,用于将压缩数据添加至当前数据包中,并将当前数据包发送至接收端。
115.可选的,频谱信号转换模块520,还用于:
116.采用设定采样频率对音频数据进行采样,获得离散音频数据;
117.对离散音频数据进行加窗处理,并对加窗处理后的离散音频数据进行傅里叶变换,获得频谱信号。
118.可选的,压缩数据获取模块550,还用于:
119.将倍频幅值均值插值于频谱信号对应的频率范围内的频点上;
120.对均匀插值的倍频幅值进行归一化处理;
121.对归一化处理的倍频幅值进行编码压缩,获得压缩数据。
122.可选的,压缩数据获取模块550,还用于:
123.采用矢量量化技术对归一化处理的倍频幅值进行编码压缩,获得量化索引值;
124.基于量化索引值生成压缩数据;其中,压缩数据还包括基音频率和归一化采用的基准量。
125.图6是本公开实施例公开的一种音频数据的处理装置的结构示意图,该装置设置于数据接收端,如图6所示,该装置包括:
126.压缩数据获取模块610,用于检测到数据包丢失时,获取丢失数据包的后向数据包中的压缩数据;
127.初始频谱获取模块620,用于对压缩数据进行解码处理,获得初始频谱;
128.前向频谱获取模块630,用于获取丢失数据包的前向数据包中的设定数量的前向频谱;
129.目标频谱获取模块640,用于将前向频谱和初始频谱进行拼帧处理,并将拼帧处理后的频谱输入设定神经网络进行语音增强,获得目标频谱;
130.相位重建模块650,用于对目标频谱的相位进行重建,根据重建的相位和目标频谱确定目标音频数据。
131.可选的,压缩数据包括基音频率、归一化采用的基准量和量化索引值;初始频谱获取模块620,还用于:
132.根据基音频率确定倍频;
133.根据量化索引值确定初始倍频幅值及倍频幅值所在频点;
134.基于归一化采用的基准量对初始倍频幅值进行逆归一化处理,获得目标倍频幅值;
135.基于目标倍频幅值及频点确定初始频谱。
136.可选的,设定神经网络包括至少两个降采样模块、瓶颈块及至少两个升采样模块;其中,降采样模块与升采样模块一一对应;
137.降采样模块包括残差块和池化层;瓶颈块包括至少一个残差块;升采样模块包括残差块和上采样层;其中,残差块包括设定数量的卷积层,且第一个卷积层与最后一个卷积层通过加法连接;升采样模块的输入包括上一层的输出以及对应的降采样模块的输出。
138.可选的,相位重建模块650,还用于:
139.确定目标频谱各频点的相位增量;根据相位增量及目标频谱前一帧音频数据的相位确定各频点的初始相位;
140.对初始相位进行优化,获得重建的目标相位。
141.可选的,相位重建模块650,还用于:
142.遍历目标频谱的频点值,获得峰值频点;其中,频点值为频点对应的幅值;
143.基于峰值频点的上一个频点值和下一个频点值确定峰值频点的偏移量;
144.根据偏移量确定真实峰值频率;
145.根据真实峰值频率确定峰值频点处的相位增量;
146.根据峰值频点处的相位增量确定非峰值频点的相位增量。
147.可选的,相位重建模块650,还用于:
148.对于当前峰值频点所在周期内的非峰值频点,根据偏移量和非峰值频点与当前峰值频点的位置关系确定相位增量。
149.可选的,相位重建模块650,还用于:
150.将携带有初始相位的目标频谱与k

1个前向频谱进行组合,获得组合频谱;
151.对组合频谱进行傅里叶逆变换,获得组合音频;
152.将组合音频与前一帧音频进行交叠相加,获得交叠音频;
153.对交叠音频进行傅里叶变换,并将变换后频谱的相位确定为目标相位。
154.可选的,还包括,交叠相加模块,用于:
155.获取目标音频数据的前一帧音频数据;
156.将目标音频数据与前一帧音频数据进行交叠相加,获得最终的音频数据。
157.上述装置可执行本公开前述所有实施例所提供的方法,具备执行上述方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本公开前述所有实施例所提供的方法。
158.下面参考图7,其示出了适于用来实现本公开实施例的电子设备300的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端,或者各种形式的服务器,如独立服务器或者服务器集群。图7示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
159.如图7所示,电子设备300可以包括处理装置(例如中央处理器、图形处理器等)301,其可以根据存储在只读存储装置(rom)302中的程序或者从存储装置305加载到随机访问存储装置(ram)303中的程序而执行各种适当的动作和处理。在ram 303中,还存储有电子设备300操作所需的各种程序和数据。处理装置301、rom 302以及ram 303通过总线304彼此
相连。输入/输出(i/o)接口305也连接至总线304。
160.通常,以下装置可以连接至i/o接口305:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置306;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置307;包括例如磁带、硬盘等的存储装置308;以及通信装置309。通信装置309可以允许电子设备300与其他设备进行无线或有线通信以交换数据。虽然图7示出了具有各种装置的电子设备300,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
161.特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行词语的推荐方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置309从网络上被下载和安装,或者从存储装置305被安装,或者从rom 302被安装。在该计算机程序被处理装置301执行时,执行本公开实施例的方法中限定的上述功能。
162.需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd

rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
163.在一些实施方式中,客户端、服务器可以利用诸如http(hypertext transfer protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“lan”),广域网(“wan”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
164.上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
165.上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取当前数据包的前向数据包包含的音频数据;将所述音频数据转换为频谱信号;对所述频谱信号进行基音分析,获取所述频谱信号的基音频率;在所述频谱信号中确定所述基音频率对应的倍频以及倍频幅值;对所述倍频幅值进行编码压
缩,获得压缩数据;将所述压缩数据添加至所述当前数据包中,并将所述当前数据包发送至接收端。或者,检测到数据包丢失时,获取丢失数据包的后向数据包中的压缩数据;对所述压缩数据进行解码处理,获得初始频谱;获取所述丢失数据包的前向数据包中的设定数量的前向频谱;将所述前向频谱和所述初始频谱进行拼帧处理,并将拼帧处理后的频谱输入设定神经网络进行语音增强,获得目标频谱;对所述目标频谱的相位进行重建,根据重建的相位和目标频谱确定目标音频数据。
166.可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如java、smalltalk、c ,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
167.附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
168.描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
169.本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑设备(cpld)等等。
170.在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd

rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
171.根据本公开实施例的一个或多个实施例,本公开实施例公开了一种音频数据的处理方法,所述方法由数据发送端执行,包括:
172.获取当前数据包的前向数据包包含的音频数据;
173.将所述音频数据转换为频谱信号;
174.对所述频谱信号进行基音分析,获取所述频谱信号的基音频率;
175.在所述频谱信号中确定所述基音频率对应的倍频以及倍频幅值;
176.对所述倍频幅值进行编码压缩,获得压缩数据;
177.将所述压缩数据添加至所述当前数据包中,并将所述当前数据包发送至接收端。
178.进一步地,将所述音频数据转换为频谱信号,包括:
179.采用设定采样频率对所述音频数据进行采样,获得离散音频数据;
180.对所述离散音频数据进行加窗处理,并对加窗处理后的离散音频数据进行傅里叶变换,获得频谱信号。
181.进一步地,对所述倍频幅值进行编码压缩,获得压缩数据,包括:
182.将所述倍频幅值均值插值于所述频谱信号对应的频率范围内的频点上;
183.对均匀插值的倍频幅值进行归一化处理;
184.对归一化处理的倍频幅值进行编码压缩,获得压缩数据。
185.进一步地,对归一化处理的倍频幅值进行编码压缩,获得压缩数据,包括:
186.采用矢量量化技术对归一化处理的倍频幅值进行编码压缩,获得量化索引值;
187.基于所述量化索引值生成压缩数据;其中,压缩数据还包括所述基音频率和归一化采用的基准量。
188.本公开实施例还公开一种音频数据的处理方法,所述方法由数据接收端执行,包括:
189.检测到数据包丢失时,获取丢失数据包的后向数据包中的压缩数据;
190.对所述压缩数据进行解码处理,获得初始频谱;
191.获取所述丢失数据包的前向数据包中的设定数量的前向频谱;
192.将所述前向频谱和所述初始频谱进行拼帧处理,并将拼帧处理后的频谱输入设定神经网络进行语音增强,获得目标频谱;
193.对所述目标频谱的相位进行重建,根据重建的相位和目标频谱确定目标音频数据。
194.进一步地,所述压缩数据包括基音频率、归一化采用的基准量和量化索引值;对所述压缩数据进行解码处理,获得初始频谱,包括:
195.根据所述基音频率确定倍频;
196.根据所述量化索引值确定初始倍频幅值及所述倍频幅值所在频点;
197.基于所述归一化采用的基准量对所述初始倍频幅值进行逆归一化处理,获得目标倍频幅值;
198.基于所述目标倍频幅值及所述频点确定初始频谱。
199.进一步地,所述设定神经网络包括至少两个降采样模块、瓶颈块及至少两个升采样模块;其中,所述降采样模块与升采样模块一一对应;
200.所述降采样模块包括残差块和池化层;所述瓶颈块包括至少一个残差块;所述升采样模块包括残差块和上采样层;其中,所述残差块包括设定数量的卷积层,且第一个卷积层与最后一个卷积层通过加法连接;所述升采样模块的输入包括上一层的输出以及对应的
降采样模块的输出。
201.进一步地,对所述目标频谱的相位进行重建,包括:
202.确定所述目标频谱各频点的相位增量;根据所述相位增量及所述目标频谱前一帧音频数据的相位确定各频点的初始相位;
203.对所述初始相位进行优化,获得重建的目标相位。
204.进一步地,确定所述目标频谱各频点的相位增量,包括:
205.遍历所述目标频谱的频点值,获得峰值频点;其中,所述频点值为频点对应的幅值;
206.基于所述峰值频点的上一个频点值和下一个频点值确定所述峰值频点的偏移量;
207.根据所述偏移量确定真实峰值频率;
208.根据所述真实峰值频率确定峰值频点处的相位增量;
209.根据所述峰值频点处的相位增量确定非峰值频点的相位增量。
210.进一步地,根据所述峰值频点处的相位增量确定非峰值频点的相位增量,包括:
211.对于当前峰值频点所在周期内的非峰值频点,根据所述偏移量和所述非峰值频点与所述当前峰值频点的位置关系确定相位增量。
212.进一步地,对所述初始相位进行优化,获得重建的目标相位,包括:
213.将携带有所述初始相位的目标频谱与k

1个前向频谱进行组合,获得组合频谱;
214.对所述组合频谱进行傅里叶逆变换,获得组合音频;
215.将所述组合音频与前一帧音频进行交叠相加,获得交叠音频;
216.对所述交叠音频进行傅里叶变换,并将变换后频谱的相位确定为目标相位。
217.进一步地,根据重建的相位和目标频谱确定目标音频数据之后,还包括:
218.获取目标音频数据的前一帧音频数据;
219.将所述目标音频数据与所述前一帧音频数据进行交叠相加,获得最终的音频数据。
220.注意,上述仅为本公开的较佳实施例及所运用技术原理。本领域技术人员会理解,本公开不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本公开的保护范围。因此,虽然通过以上实施例对本公开进行了较为详细的说明,但是本公开不仅仅限于以上实施例,在不脱离本公开构思的情况下,还可以包括更多其他等效实施例,而本公开的范围由所附的权利要求范围决定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文章

  • 日榜
  • 周榜
  • 月榜