CN117037808A - 语音信号处理方法、装置、设备及存储介质 - Google Patents
语音信号处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN117037808A CN117037808A CN202310964051.5A CN202310964051A CN117037808A CN 117037808 A CN117037808 A CN 117037808A CN 202310964051 A CN202310964051 A CN 202310964051A CN 117037808 A CN117037808 A CN 117037808A
- Authority
- CN
- China
- Prior art keywords
- signal
- output signal
- voice frame
- pitch period
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title abstract description 8
- 238000000034 method Methods 0.000 claims abstract description 30
- 238000000605 extraction Methods 0.000 claims abstract description 8
- 238000012545 processing Methods 0.000 claims description 13
- 230000000737 periodic effect Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 claims description 8
- 238000004458 analytical method Methods 0.000 claims description 4
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 description 18
- 238000005070 sampling Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 7
- 229920001343 polytetrafluoroethylene Polymers 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 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 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- 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
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/005—Correction of errors induced by the transmission channel, if related to the coding algorithm
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
Abstract
本申请提供语音信号处理方法、装置、设备及存储介质,方法包括:在接收到第一语音帧的情况下,获取目标输出信号的目标基音周期,所述目标基音周期为对所述目标输出信号进行四倍抽取降采样提取和周期估计得到,所述第一语音帧为数据丢失的语音帧,所述目标输出信号为第二语音帧对应的输出信号,所述第二语音帧为距离所述第一语音帧最近的并且数据完整接收的语音帧;根据所述目标基音周期确定所述第一语音帧之前的基音周期信号,所述基音周期信号用于反映所述目标输出信号的信号特征;基于所述基音周期信号生成所述第一语音帧对应的第一输出信号。该技术方案能够在接收端进行丢包补偿。
Description
技术领域
本申请涉及信号处理领域,尤其涉及语音信号处理方法、装置、设备及存储介质。
背景技术
在实时语音通讯中,因网络状况及相关因素的影响,传输数据的丢包问题在所难免,语音丢包处理不佳,会让通话双方体验非常糟糕。这就需要在传输过程中发生丢包时采用数据丢包补偿技术。丢包补偿技术可以分为两类:基于发送端补偿和基于接收端补偿。
当发送端无法做到较好的丢包补偿或发送端不能参与丢包补偿时,需要在接收端进行丢包补偿。
发明内容
本申请提供语音信号处理方法、装置、设备及存储介质,以在接收端进行丢包补偿。
第一方面,提供一种语音信号处理方法,包括:
在接收到第一语音帧的情况下,获取目标输出信号的目标基音周期,所述目标基音周期为对所述目标输出信号进行四倍抽取降采样提取和周期估计得到,所述第一语音帧为数据丢失的语音帧,所述目标输出信号为第二语音帧对应的输出信号,所述第二语音帧为距离所述第一语音帧最近的并且数据完整接收的语音帧;
根据所述目标基音周期确定所述第一语音帧之前的基音周期信号,所述基音周期信号用于反映所述目标输出信号的信号特征;
基于所述基音周期信号生成所述第一语音帧对应的第一输出信号。
在该技术方案中,当接收到数据丢失的第一语音帧时,通过获取第一语音帧之前的数据完整接收的语音帧的目标基音周期,然后根据目标基音周期确定基音周期信号,最后基于基音周期信号生成第一语音帧对应的第一输出信号;由于语音数据具有呈周期变化和短时平稳这两个特性,数据丢失的语音帧与邻近的数据接收完整的语音帧之间具有相似性,基于数据接收完整的语音帧的周期波形来产生与数据丢失的语音帧相似的输出信号,用以代替数据丢失的语音帧进行输出,可实现在接收端进行丢包补偿。
结合第一方面,在一种可能的实现方式中,所述基于所述基音周期信号生成所述第一语音帧对应的第一输出信号之后,还包括:在接收到第三语音帧的情况下,获取第二输出信号的延续信号,所述第三语音帧为所述数据完整接收的语音帧,并且,所述第三语音帧的上一语音帧为数据丢失的语音帧,所述第二输出信号为所述第三语音帧的上一语音帧对应的输出信号,所述第二输出信号的延续信号用于表征所述第二输出信号在所述第三语音帧中的前Q个时刻的信号特征;根据所述第二输出信号的延续信号,生成所述第三语音帧对应的第三输出信号。当接收到数据丢失后的首个数据接收完整的第三语音帧时,通过将该第三语音帧的上一输出信号的延续信号生成第三语音帧的输出信号,能够实现丢失的波形与正确接收的波形之间的平滑过渡。
结合第一方面,在一种可能的实现方式中,所述根据所述第二输出信号的延续信号,生成所述第三语音帧对应的第三输出信号,包括:针对所述第三语音帧中的前Q个时刻,将所述第三语音帧与所述第二输出信号的延续信号进行信号叠加,得到所述前Q个时刻的输出信号。
结合第一方面,在一种可能的实现方式中,所述目标基音周期为在数据完整接收的过程中基于如下步骤计算得到:基于非对称汉明窗函数,对所述目标输出信号进行线性预测编码(Linear Predictive Coding,LPC)分析,得到所述目标输出信号对应的线性预测系数;基于所述线性预测系数,对所述目标输出信号进行预测残差加权,得到所述目标输出信号对应的加权语音信号;对所述加权语音信号进行四倍降采样,得到所述目标输出信号对应的四倍降采样信号;基于所述四倍降采样信号进行基音周期估计,得到初始基音周期;基于所述加权语音信号在所述初始基音周期对应的基音周期范围中进行基音周期估计,得到所述目标基音周期。
结合第一方面,在一种可能的实现方式中,所述基于所述四倍降采样信号进行基音周期估计,得到初始基音周期,包括:计算所述四倍降采样信号在预设周期范围内的归一化互相关系数;根据所述归一化互相关系数,确定所述初始基音周期。
结合第一方面,在一种可能的实现方式中,所述基于所述基音周期信号生成所述第一语音帧对应的第一输出信号,包括:若所述第一语音帧的上一语音帧不为数据完整接收的语音帧,对所述第一语音帧对应的基音周期信号进行幅值调整,得到所述第一语音帧对应的幅值调整信号,根据所述第一语音帧对应的幅值调整信号,确定所述第一输出信号。
结合第一方面,在一种可能的实现方式中,所述根据所述第一语音帧对应的幅值调整信号,确定所述第一输出信号,包括:根据所述第一语音帧对应的丢失持续时间,确定所述第一语音帧对应的信号衰减指数,所述丢失持续时间为所述第一语音帧与所述第二语音帧之间的时间,所述信号衰减指数与所述丢失持续时间负相关;根据所述信号衰减指数,调整所述幅值调整信号中的信号的幅值,得到所述第一输出信号。
结合第一方面,在一种可能的实现方式中,所述基于所述基音周期信号生成所述第一语音帧对应的第一输出信号,包括:若所述第一语音帧的上一语音帧为数据完整接收的语音帧,针对所述第一语音帧中的前L个时刻:获取第四输出信号的延续信号,对所述第四输出信号的延续信号和所述第一语音帧对应的基音周期信号进行叠加,得到所述前L个时刻对应的输出信号,所述第四输出信号为所述第一语音帧的上一语音帧对应的输出信号,所述第四输出信号的延续信号用于表征所述第四输出信号在所述第一语音帧中的前L个时刻的信号特征,L小于N,N为每个语音帧中包含的时刻数;针对所述第一语音帧中的后(N-L+Q)个时刻:对所述第一语音帧对应的基音周期信号进行幅度调整,得到所述后(N-L+Q)个时刻对应的输出信号,Q大于L,所述第一语音帧中的后Q个时刻对应的输出信号为所述第一输出信号的延续信号;
根据所述第一语音帧中的各个时刻对应的输出信号,生成所述第一输出信号。
第二方面,提供一种语音信号处理装置,包括:
基音周期获取模块,用于获取目标输出信号的目标基音周期,所述目标基音周期为对所述目标输出信号进行四倍抽取降采样提取和周期估计得到,所述第一语音帧为数据丢失的语音帧,所述目标输出信号为第二语音帧对应的输出信号,所述第二语音帧为距离所述第一语音帧最近的并且数据完整接收的语音帧;
周期信号确定模块,用于根据所述目标基音周期确定基音周期信号,所述基音周期信号用于反映所述目标输出信号的信号特征;
输出信号生成模块,用于基于所述基音周期信号生成所述第一语音帧对应的第一输出信号,并输出所述第一输出信号。
第三方面,提供一种计算机设备,包括存储器以及一个或多个处理器,所述存储器连接至所述一个或多个处理器,一个或多个处理器用于执行存储在存储器中的一个或多个计算机程序,一个或多个处理器在执行一个或多个计算机程序时,使得该计算机设备实现上述第一方面的语音信号处理方法。
第四方面,提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序包括程序指令,上述程序指令当被处理器执行时使上述处理器执行上述第一方面的语音信号处理方法。
本申请可以实现如下技术效果:由于语音数据具有呈周期变化和短时平稳这两个特性,数据丢失的语音帧与邻近的数据接收完整的语音帧之间具有相似性,基于数据接收完整的语音帧的周期波形来产生与数据丢失的语音帧相似的输出信号,用以代替数据丢失的语音帧进行输出,可实现在接收端进行丢包补偿。
附图说明
图1为本申请实施例提供的一种语音信号处理方法的流程示意图;
图2为本申请实施例提供的一种语音数据补偿前后的波形示意图;
图3是本申请实施例提供的一种语音信号处理装置的结构示意图;
图4是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
本申请的技术方案适用于数据传输场景,尤其适用于语音数据传输场景。本申请的技术方案适用于在语音数据传输场景中对发生丢包的语音数据进行补偿。本申请的技术方案可应用在语音数据接收设备,语音数据接收设备包括但不限于为手机、耳机等接收语音数据的设备。
以下具体介绍本申请的技术方案。
参见图1,图1为本申请实施例提供的一种语音信号处理方法的流程示意图,该方法可以应用于语音数据接收设备,如图1所示,该方法包括如下步骤:
S101,获取语音数据发送设备发送的第t语音帧。
这里,t用于指示语音帧的序号,t可以为任意整数。可以接收语音数据发送设备的第t语音帧,从而获取第t语音帧。在接收到第t语音帧之后,可以对第t语音帧进行完整性校验,如果第t语音帧通过完整性校验,则在第t语音帧中添加标志位,标志位用于指示第t语音帧为数据完整接收的语音帧;如果第t语音帧未通过完整性校验,则不在第t语音帧中添加标志位。
S102,判断第t语音帧是否为数据完整接收的语音帧。
这里,可以判断第t语音帧中是否存在标志位,如果存在标志位,则确定第t语音帧为数据完整接收的语音帧;如果不存在标志位,则确定第t语音帧不为数据完整接收的语音帧。
在第t语音帧为数据完整接收的语音帧的情况下,执行步骤S106。在第t语音帧不为数据完整接收的语音帧的情况下,说明第t语音帧为第一语音帧,即为数据丢失的语音帧,执行步骤S103。
S103,获取目标输出信号的目标基音周期。
这里,目标输出信号为第二语音帧对应的输出信号,第二语音帧为距离第t语音帧最近的并且数据完整接收的语音帧,第二语音帧为在第t语音帧之前的语音帧。
目标基音周期为对目标输出信号进行四倍抽取降采样和周期估计得到。其中,在数据完整接收的过程(即接收到数据完整接收的语音帧的过程)中,可以计算并保存最新的多个数据完整接收的语音帧对应的输出信号的基音周期。在接收到数据丢失的语音帧时,直接根据最新保存的多个基音周期确定目标基音周期。
在数据完整接收的过程中,目标基音周期可以通过如下步骤A1-A5计算得到:
A1、基于非对称汉明窗函数,对目标输出信号进行线性预测编码分析,得到目标输出信号对应的线性预测系数。
这里,非对称汉明窗函数为:
N为每个语音帧对应的采样点数,语音帧中的一个采样点对应语音帧中的一个时刻。
目标输出信号为XoH(j),可以先基于非对称加窗函数对目标输出信号XoH(j)进行加窗,得到加窗后的目标输出信号Xw(j),加窗后的目标输出信号Xw(j)的计算公式参见下述公式(2):
Xw(j)=XoH(j)w(j) j=0,1,…,N-1 (2)
然后计算得到加窗后的目标输出信号Xw(j)的自相关系数r(i),自相关系数r(i)的计算公式参见下述公式(3):
接着对自相关系数r(i)进行频谱平滑和白噪声校正,得到校正后的自相关系数校正后的自相关系数/>的计算公式参见下述公式(4):
其中,fs为对语音帧的采样率,σ=40。
接下来,使用莱文森-德宾(Levinson-Durbin)递归算法将校正后的自相关系数转换为初始的LPC预测系数A(i),i=0,1,2,…,8。如果Levinson-Durbin递归算法在递归完成之前提前退出计算过程(例如,预测残差剩余能量E(i)小于零的情况下),则使用最后一帧的短期预测系数。Levinson-Durbin递归算法的详细计算过程如下:
E(1)=(1-K1)2rE(0)
A(j)=A(j)+Ki·A(i-j) i=2,…,8;j=1,2,…,i-1
更新A(i)和E(i)的值:
A(i)=Ki i=2,…,8
E(i)=(1-Ki·Ki)E(i-1)i=2,…,8
最后对初始的LPC预测系数A(i)进行带宽扩展,得到目标输出信号对应的LPC预测系数ai,目标输出信号对应的LPC预测系数ai的计算公式参见下述公式(5):
ai=(0.96852)iA(i) i=0,1,2,…,8 (5)
A2、基于目标输出信号的线性预测系数,对目标输出信号进行预测残差加权,得到目标输出信号对应的加权语音信号。
这里,可以先基于目标输出信号对应的线性预测系数ai,预测得到短期预测残差信号d(j),短期预测残差信号d(j)的计算公式参见下述公式(6):
然后通过加权短期合成滤波器,对短期残差信号d(j)进行滤波,得到目标输出信号对应的加权语音信号xw(j),目标输出信号对应的加权语音信号xw(j)的计算公式参见下述公式(7)和公式(8):
a'i=ai·(0.75)i i=0,1,2,…,8 (7)
A3、对目标输出信号对应的加权语音信号进行四倍降采样,得到目标输出信号对应的四倍降采样信号。
这里,可以将目标输出信号对应的加权语音信号通过一个M阶最小相位FIR低通滤波器,滤除掉目标输出信号对应的加权语音信号中的高频部分,然后对滤除得到的加权语音信号进行4:1抽取降采样,得到四倍降采样信号xwd(j)。M阶最小相位FIR低通滤波器的阶数M可以为8,M阶最小相位FIR低通滤波器的传递函数为
四倍降采样信号xwd(j)的缓冲区长度为Lc=mapit/4+N/4+1,每次抽取的信号长度为N/4,四倍降采样信号xwd(j)的计算公式参见下述公式(9):
bi,i=1,2,…,M-1为M阶最小相位FIR低通滤波器的滤波系数,mapit为最大基音周期值。
A4、基于目标输出信号对应的四倍降采样信号进行基音周期估计,得到初始基音周期。
这里,可以将初始基音周期的初始值设置为mipit/4,即Tds=mipit/4,Tds为初始基音周期,mipit为最小基音周期值。
然后计算四倍降采样信号xwd(j)在预设周期范围内的归一化互相关系数r1(k),四倍降采样信号xwd(j)在预设周期范围内的归一化互相关系数r1(k)的计算公式参见下述公式(10)-公式(12):
r1(k)=c1(k)/E1(k) (12)
最后根据四倍降采样信号xwd(j)在预设周期范围内的归一化互相关系数r1(k),确定初始基音周期。
其中,可根据如下步骤11-步骤13确定初始基音周期:
步骤11,如果归一化互相关系数r1(k)<0,则更新初始基音周期为:Tds=k,如果归一化互相关系数r1(k)>0,则跳过步骤12和步骤13。
步骤12,确定搜索的下界:
i0=max(k,4)
步骤13,在范围内搜索最大归一化相关系数r1(k)对应的索引k,作为初始基音周期:
A5、基于目标输出信号对应的加权语音信号在初始基音周期对应的基音周期范围中进行基音周期估计,得到目标基音周期。
这里,可先计算目标输出信号对应的加权语音信号xw(j)在初始基音周期对应的基音周期范围的归一化互相关系数r2(k),加权语音信号xw(j)在初始基音周期对应的基音周期范围的归一化互相关系数r2(k)的计算公式参见下述公式(13)-(15):
r2(k)=c2(k)/E2(k) (15)
然后确定最大归一化互相关系数r2(k),将最大互相关系数r2(k)对应的索引k确定为目标基音周期,目标基音周期T0的计算公式参见下述公式(16):
T0=argmax r2(k) k=4Tds-2,…,4Tds+2 (16)
在计算得到目标基音周期后,还可以计算第一比例因子ptfe,第一比例因子ptfe的计算公式参见下述公式(17):
如果为0,则比例因子ptfe=0。
然后计算第二比例因子ppt,ppt=0.7ptfe。
S104,根据目标基音周期确定基音周期信号。
这里,基音周期信号可以表示为:Xot(j)=Xot(j-T0),j=0,1,…,N-1。
S105,基于基音周期信号生成第t语音帧对应的第t输出信号。
这里,步骤S105包括步骤S1051-步骤S1056:
S1051,判断第(t-1)语音帧是否为数据完整接收的语音帧。
这里,第(t-1)语音帧为第t语音帧的上一语音帧。可以通过判断第(t-1)语音帧中是否存在标志位,如果存在标志位,则确定第(t-1)语音帧为数据完整接收的语音帧;如果不存在标志位,则确定第(t-1)语音帧不为数据完整接收的语音帧。
在第(t-1)语音帧为数据完整接收的语音帧的情况下,说明第t语音帧为数据完整接收的语音帧之后的第一个丢失帧,执行步骤S1052;在第(t-1)语音帧不为数据完整接收的语音帧的情况下,说明第t语音帧不为数据完整接收的语音帧之后的第一个丢失帧,执行步骤S1055。
S1052,针对第t语音帧中的前L个时刻:获取第(t-1)输出信号的延续信号,对第(t-1)输出信号的延续信号和第t语音帧对应的基音周期信号进行叠加,得到第t语音帧中的前L个时刻对应的输出信号。
这里的第t语音帧为第一语音帧,第(t-1)输出信号为第(t-1)语音帧对应的输出信号,即第(t-1)输出信号为第t语音帧的上一语音帧对应的输出信号,也即第一语音帧的上一语音帧对应的输出信号。这里的第(t-1)输出信号包括L个延续信号,L个延续信号用于表征第(t-1)输出信号在第t语音帧的前L个时刻的信号特征。
这里的第(t-1)输出信号的延续信号可以表示为Rt(j),j=0,…,L-1。
第(t-1)输出信号的延续信号可以通过如下公式(18)-(20)计算得到:
L2t(j)=ppt·L1t(j) j=0,1,…,L-1 (19)
第t语音帧的前L个时刻对应的输出信号的计算公式参见下述公式(21):
Xot(j)=Xot(j-T0)·wi(j)+Rt(j)·wo(j)j=0,1,…,L-1 (21)
wi(j)和wo(j)分别为向上和向下倾斜的三角形重叠相加窗口;Xot(j-T0)为第t语音帧对应的基音周期信号。
S1053,针对第t语音帧中的后(N-L+Q)个时刻:对第t语音帧对应的基音周期信号进行幅度调整,得到第t语音帧中的后(N-L+Q)个时刻对应的输出信号。
这里,Q大于L。
第t语音帧的后(N-L+Q)个时刻对应的输出信号的计算公式参见下述公式(22):
Xot(j)=ptfe·Xot(j-T0)j=L,L+1,…,N+Q-1 (22)
S1054,根据第t语音帧中的各个时刻对应的输出信号,生成第t输出信号。
这里,第t输出信号包括(N+Q)个输出信号,第t输出信号中的前N个输出信号用于输出,第t输出信号中的后Q个输出信号存储在输出缓冲区中,作为第t输出信号的延续信号,第t输出信号的延续信号可以表示为Rt+1(j),j=0,…,Q-1。Rt+1(j)=Xot(j+N),j=0,…,Q-1。
S1055,对第t语音帧对应的基音周期信号进行幅值调整,得到第t语音帧对应的幅值调整信号。
这里,第t语音帧对应的幅值调整信号的计算公式参见下述公式(23):
Xot(j)=ptfe·Xot(j-T0) j=0,1,…,N+Q-1 (23)
S1056,根据第t语音帧对应的幅值调整信号,确定第t输出信号。
这里,可以根据第t语音帧对应的丢失持续时间,确定第t语音帧对应的信号衰减指数,第t语音帧对应的丢失持续时间为第t语音帧对应的丢失持续时间与前述第二语音帧之间的时间;第t语音帧对应的信号衰减指数与第t语音帧对应的丢失持续时间负相关,即第t语音帧对应的丢失持续时间越长,第t语音帧对应的信号衰减指数越小,第t语音帧对应的丢失持续时间越长,第t语音帧对应的信号衰减指数越大;然后根据第t语音帧对应的信号衰减指数,调整第t语音帧中的各个时刻对应的幅值调整信号,从而得到第t输出信号。
第t输出信号的计算公式参见下述公式(24):
Xot(j)=ST ·Xot(j) j=0,1,…,N+Q-1 (24)
T表示第t语音帧与第二语音帧之间的丢失持续时间,ST为第t语音帧对应的信号衰减指数,T越大,则ST越小。示例性地,当T大于60ms时,ST可以为0,第t输出信号为静音信号。
S106,判断第(t-1)语音帧是否为数据丢失的语音帧。
这里,第(t-1)语音帧为第t语音帧的上一语音帧。可以通过判断第(t-1)语音帧中是否存在标志位,如果存在标志位,则确定第(t-1)语音帧不为数据丢失的语音帧;如果不存在标志位,则确定第(t-1)语音帧为数据丢失的语音帧。
在第(t-1)语音帧不为数据丢失的语音帧的情况下,说明第(t-1)语音帧未发生丢包,执行步骤S107;在第(t-1)语音帧为数据丢失的语音帧的情况下,说明第t语音帧为第三语音帧,即为数据丢失之后的首个数据完整接收的语音帧,执行步骤S108。
S107,将第t语音帧作为第t语音帧对应的第t输出信号。
这里,第t输出信号Xot(j)=Xint(j),j=0,1,…,N-1,Xint(j)为对第t语音帧进行采样得到的采样信号。
S108,获取第(t-1)输出信号的延续信号。
这里,第(t-1)输出信号为第(t-1)语音帧对应的输出信号,此处的第(t-1)语音帧为数据丢失的语音帧,第(t-1)语音帧可以理解为第t语音帧之前最后一帧数据丢失的与语音帧。第t语音帧为第三语音帧,即为数据丢失之后的首个数据完整接收的语音帧。
这里的第(t-1)输出信号包括Q个延续信号,Q个延续信号用于表征第(t-1)输出信号在第t语音帧的前Q个时刻的信号特征。这里的第(t-1)输出信号的延续信号可以表示为Rt(j),j=0,…,Q-1。由于第(t-1)语音帧为第一语音帧,即第(t-1)语音帧为数据丢失的语音帧,在计算第(t-1)输出信号时,会额外计算Q个延续信号,此处的第(t-1)输出信号的延续信号即为该额外计算得到的Q个延续信号。这里的第(t-1)输出信号的延续信号可以表示为Rt(j),j=0,…,Q-1,Rt(j)=Xot-1(j+N),j=0,…,Q-1。
这里的第t语音帧的前Q个时刻为第t语音帧中需处理后才能输出的时刻,即第t语音帧的前Q个时刻的信号需要进行处理。这里的第t语音帧中的后(N-Q)个时刻为第t语音帧中可直接输出的时刻,即第t语音帧中的后(N-Q)个时刻的信号不需要进行处理,第t语音帧中的后(N-Q)个时刻对应的输出信号为第t语音帧中的后(N-Q)个时刻对应的采样信号,Xot(j)=Xint(j),j=Q,Q+1,…,N-1,Xint(j)为对第t语音帧进行采样得到的采样信号。
S109,根据第(t-1)输出信号的延续信号,生成第t语音帧对应的第t输出信号。
这里,可以将第t语音帧与第(t-1)输出信号的延续信号进行信号叠加,得到第t语音帧中的前Q个时刻对应的输出信号。
第t语音帧中的前Q个时刻对应的输出信号的计算公式参见下述公式(25):
Xot(j)=Xint(j)·wi(j)+Rt(j)·wo(j) j=0,1,…,Q-1 (25)
S110,输出第t输出信号。
S111,将t加1,返回执行步骤S101。
在第t语音帧为数据完整接收的语音帧的情况下,在通过上述步骤S107或上述步骤S109生成第t语音帧对应的第t输出信号后,还可以计算第t输出信号的基音周期,即执行步骤S112。
S112,计算第t输出信号的基音周期。
这里,计算第t信号的基音周期的具体实现过程,与前述步骤A1-A5同理,可参考前述步骤A1-A5,此处不再赘述。
在上述图1对应的技术方案中,当接收到数据丢失的第一语音帧时,通过获取第一语音帧之前的数据完整接收的语音帧的目标基音周期,然后根据目标基音周期确定基音周期信号,最后基于基音周期信号生成第一语音帧对应的第一输出信号;由于语音数据具有呈周期变化和短时平稳这两个特性,数据丢失的语音帧与邻近的数据接收完整的语音帧之间具有相似性,基于数据接收完整的语音帧的周期波形来产生与数据丢失的语音帧相似的输出信号,用以代替数据丢失的语音帧进行输出,可实现在接收端进行丢包补偿;当接收到数据丢失后的首个数据接收完整的第三语音帧时,根据第三语音帧的上一输出信号的延续信号生成第三语音帧的输出信号,能够实现丢失的波形与正确接收的波形之间的平滑过渡。
本申请的技术效果可参见图2,图2中的P1为连续有5毫秒(ms)的语音数据丢失的原始波形图,经过本申请的技术方案进行补偿后,可得到图2中的P2所示的波形图。
参见图3,图3是本申请实施例提供的一种语音信号处理装置的结构示意图。该语音信号处理装置可以为语音数据接收设备。如图3所示,该语音信号处理装置20包括:
基音周期获取模块201,用于获取目标输出信号的目标基音周期,所述目标基音周期为对所述目标输出信号进行四倍抽取降采样提取和周期估计得到,所述第一语音帧为数据丢失的语音帧,所述目标输出信号为第二语音帧对应的输出信号,所述第二语音帧为距离所述第一语音帧最近的并且数据完整接收的语音帧;
周期信号确定模块202,用于根据所述目标基音周期确定基音周期信号,所述基音周期信号用于反映所述目标输出信号的信号特征;
输出信号生成模块203,用于基于所述基音周期信号生成所述第一语音帧对应的第一输出信号,并输出所述第一输出信号。
在一种可能的设计中,上述输出信号生成模块203还用于:在接收到第三语音帧的情况下,获取第二输出信号的延续信号,所述第三语音帧为所述数据完整接收的语音帧,并且,所述第三语音帧的上一语音帧为数据丢失的语音帧,所述第二输出信号为所述第三语音帧的上一语音帧对应的输出信号,所述第二输出信号的延续信号用于表征所述第二输出信号在所述第三语音帧中的前Q个时刻的信号特征;根据所述第二输出信号的延续信号,生成所述第三语音帧对应的第三输出信号。
在一种可能的设计中,上述输出信号生成模块203具体用于:针对所述第三语音帧中的前Q个时刻,将所述第三语音帧与所述第二输出信号的延续信号进行信号叠加,得到所述前Q个时刻的输出信号。
在一种可能的设计中,所述目标基音周期为在数据完整接收的过程中基于如下步骤计算得到:基于非对称汉明窗函数,对所述目标输出信号进行线性预测编码分析,得到所述目标输出信号对应的线性预测系数;基于所述线性预测系数,对所述目标输出信号进行预测残差加权,得到所述目标输出信号对应的加权语音信号;对所述加权语音信号进行四倍降采样,得到所述目标输出信号对应的四倍降采样信号;基于所述四倍降采样信号进行基音周期估计,得到初始基音周期;基于所述加权语音信号在所述初始基音周期对应的基音周期范围中进行基音周期估计,得到所述目标基音周期。
在一种可能的设计中,上述基音周期获取模块201具体用于:计算所述四倍降采样信号在预设周期范围内的归一化互相关系数;根据所述归一化互相关系数,确定所述初始基音周期。
在一种可能的设计中,上述输出信号生成模块203具体用于:若所述第一语音帧的上一语音帧不为数据完整接收的语音帧,对所述第一语音帧对应的基音周期信号进行幅值调整,得到所述第一语音帧对应的幅值调整信号,根据所述第一语音帧对应的幅值调整信号,确定所述第一输出信号。
在一种可能的设计中,上述输出信号生成模块203具体用于:根据所述第一语音帧对应的丢失持续时间,确定所述第一语音帧对应的信号衰减指数,所述丢失持续时间为所述第一语音帧与所述第二语音帧之间的时间,所述信号衰减指数与所述丢失持续时间负相关;根据所述信号衰减指数,调整所述幅值调整信号中的信号的幅值,得到所述第一输出信号。
在一种可能的设计中,上述输出信号生成模块203具体用于:若所述第一语音帧的上一语音帧为数据完整接收的语音帧,针对所述第一语音帧中的前L个时刻:获取第四输出信号的延续信号,对所述第四输出信号的延续信号和所述第一语音帧对应的基音周期信号进行叠加,得到所述前L个时刻对应的输出信号,所述第四输出信号为所述第一语音帧的上一语音帧对应的输出信号,所述第四输出信号的延续信号用于表征所述第四输出信号在所述第一语音帧中的前L个时刻的信号特征,L小于N,N为每个语音帧中包含的时刻数;针对所述第一语音帧中的后(N-L+Q)个时刻:对所述第一语音帧对应的基音周期信号进行幅度调整,得到所述后(N-L+Q)个时刻对应的输出信号,Q大于L,所述第一语音帧中的后Q个时刻对应的输出信号为所述第一输出信号的延续信号;根据所述第一语音帧中的各个时刻对应的输出信号,生成所述第一输出信号。
需要说明的是,图3对应的实施例中未提及的内容可参见前述方法实施例的描述,这里不再赘述。
上述装置,当接收到数据丢失的第一语音帧时,通过获取第一语音帧之前的数据完整接收的语音帧的目标基音周期,然后根据目标基音周期确定基音周期信号,最后基于基音周期信号生成第一语音帧对应的第一输出信号;由于语音数据具有呈周期变化和短时平稳这两个特性,数据丢失的语音帧与邻近的数据接收完整的语音帧之间具有相似性,基于数据接收完整的语音帧的周期波形来产生与数据丢失的语音帧相似的输出信号,用以代替数据丢失的语音帧进行输出,可实现在接收端进行丢包补偿。
参见图4,图4是本申请实施例提供的一种计算机设备的结构示意图,该计算机设备30包括处理器301、存储器302。存储器302连接至处理器301,例如通过总线连接至处理器301。
处理器301被配置为支持该计算机设备30执行上述方法实施例中的方法中相应的功能。该处理器301可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP),硬件芯片或者其任意组合。上述硬件芯片可以是专用集成电路(application specific integrated circuit,ASIC),可编程逻辑器件(programmablelogic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complexprogrammable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gatearray,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
存储器302用于存储程序代码等。存储器302可以包括易失性存储器(volatilememory,VM),例如随机存取存储器(random access memory,RAM);存储器302也可以包括非易失性存储器(non-volatile memory,NVM),例如只读存储器(read-only memory,ROM),快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器302还可以包括上述种类的存储器的组合。
处理器301可以调用所述程序代码以执行以下操作:
在接收到第一语音帧的情况下,获取目标输出信号的目标基音周期,所述目标基音周期为对所述目标输出信号进行四倍抽取降采样提取和周期估计得到,所述第一语音帧为数据丢失的语音帧,所述目标输出信号为第二语音帧对应的输出信号,所述第二语音帧为距离所述第一语音帧最近的并且数据完整接收的语音帧;
根据所述目标基音周期确定所述第一语音帧之前的基音周期信号,所述基音周期信号用于反映所述目标输出信号的信号特征;
基于所述基音周期信号生成所述第一语音帧对应的第一输出信号。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被计算机执行时使所述计算机执行如前述实施例所述的方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only memory,ROM)或随机存储记忆体(Random Accessmemory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (11)
1.一种语音信号处理方法,其特征在于,包括:
在接收到第一语音帧的情况下,获取目标输出信号的目标基音周期,所述目标基音周期为对所述目标输出信号进行四倍抽取降采样提取和周期估计得到,所述第一语音帧为数据丢失的语音帧,所述目标输出信号为第二语音帧对应的输出信号,所述第二语音帧为距离所述第一语音帧最近的并且数据完整接收的语音帧;
根据所述目标基音周期确定所述第一语音帧之前的基音周期信号,所述基音周期信号用于反映所述目标输出信号的信号特征;
基于所述基音周期信号生成所述第一语音帧对应的第一输出信号。
2.根据权利要求1所述的方法,其特征在于,所述基于所述基音周期信号生成所述第一语音帧对应的第一输出信号之后,还包括:
在接收到第三语音帧的情况下,获取第二输出信号的延续信号,所述第三语音帧为所述数据完整接收的语音帧,并且,所述第三语音帧的上一语音帧为数据丢失的语音帧,所述第二输出信号为所述第三语音帧的上一语音帧对应的输出信号,所述第二输出信号的延续信号用于表征所述第二输出信号在所述第三语音帧中的前Q个时刻的信号特征;
根据所述第二输出信号的延续信号,生成所述第三语音帧对应的第三输出信号。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第二输出信号的延续信号,生成所述第三语音帧对应的第三输出信号,包括:
针对所述第三语音帧中的前Q个时刻,将所述第三语音帧与所述第二输出信号的延续信号进行信号叠加,得到所述前Q个时刻的输出信号。
4.根据权利要求1所述的方法,其特征在于,所述目标基音周期为在数据完整接收的过程中基于如下步骤计算得到:
基于非对称汉明窗函数,对所述目标输出信号进行线性预测编码分析,得到所述目标输出信号对应的线性预测系数;
基于所述线性预测系数,对所述目标输出信号进行预测残差加权,得到所述目标输出信号对应的加权语音信号;
对所述加权语音信号进行四倍降采样,得到所述目标输出信号对应的四倍降采样信号;
基于所述四倍降采样信号进行基音周期估计,得到初始基音周期;
基于所述加权语音信号在所述初始基音周期对应的基音周期范围中进行基音周期估计,得到所述目标基音周期。
5.根据权利要求4所述的方法,其特征在于,所述基于所述四倍降采样信号进行基音周期估计,得到初始基音周期,包括:
计算所述四倍降采样信号在预设周期范围内的归一化互相关系数;
根据所述归一化互相关系数,确定所述初始基音周期。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述基于所述基音周期信号生成所述第一语音帧对应的第一输出信号,包括:
若所述第一语音帧的上一语音帧不为数据完整接收的语音帧,对所述第一语音帧对应的基音周期信号进行幅值调整,得到所述第一语音帧对应的幅值调整信号,根据所述第一语音帧对应的幅值调整信号,确定所述第一输出信号。
7.根据权利要求6所述的方法,其特征在于,所述根据所述第一语音帧对应的幅值调整信号,确定所述第一输出信号,包括:
根据所述第一语音帧对应的丢失持续时间,确定所述第一语音帧对应的信号衰减指数,所述丢失持续时间为所述第一语音帧与所述第二语音帧之间的时间,所述信号衰减指数与所述丢失持续时间负相关;
根据所述信号衰减指数,调整所述幅值调整信号中的信号的幅值,得到所述第一输出信号。
8.根据权利要求1-5任一项所述的方法,其特征在于,所述基于所述基音周期信号生成所述第一语音帧对应的第一输出信号,包括:
若所述第一语音帧的上一语音帧为数据完整接收的语音帧,针对所述第一语音帧中的前L个时刻:获取第四输出信号的延续信号,对所述第四输出信号的延续信号和所述第一语音帧对应的基音周期信号进行叠加,得到所述前L个时刻对应的输出信号,所述第四输出信号为所述第一语音帧的上一语音帧对应的输出信号,所述第四输出信号的延续信号用于表征所述第四输出信号在所述第一语音帧中的前L个时刻的信号特征,L小于N,N为每个语音帧中包含的时刻数;
针对所述第一语音帧中的后(N-L+Q)个时刻:对所述第一语音帧对应的基音周期信号进行幅度调整,得到所述后(N-L+Q)个时刻对应的输出信号,Q大于L,所述第一语音帧中的后Q个时刻对应的输出信号为所述第一输出信号的延续信号;
根据所述第一语音帧中的各个时刻对应的输出信号,生成所述第一输出信号。
9.一种语音信号处理装置,其特征在于,包括:
基音周期获取模块,用于获取目标输出信号的目标基音周期,所述目标基音周期为对所述目标输出信号进行四倍抽取降采样提取和周期估计得到,所述第一语音帧为数据丢失的语音帧,所述目标输出信号为第二语音帧对应的输出信号,所述第二语音帧为距离所述第一语音帧最近的并且数据完整接收的语音帧;
周期信号确定模块,用于根据所述目标基音周期确定基音周期信号,所述基音周期信号用于反映所述目标输出信号的信号特征;
输出信号生成模块,用于基于所述基音周期信号生成所述第一语音帧对应的第一输出信号,并输出所述第一输出信号。
10.一种计算机设备,其特征在于,包括存储器、处理器,所述存储器和连接至所述处理器,所述处理器用于执行存储在所述存储器中的一个或多个计算机程序,所述处理器在执行所述一个或多个计算机程序时,使得所述计算机设备实现如权利要求1-8任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310964051.5A CN117037808A (zh) | 2023-08-01 | 2023-08-01 | 语音信号处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310964051.5A CN117037808A (zh) | 2023-08-01 | 2023-08-01 | 语音信号处理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117037808A true CN117037808A (zh) | 2023-11-10 |
Family
ID=88623743
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310964051.5A Pending CN117037808A (zh) | 2023-08-01 | 2023-08-01 | 语音信号处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117037808A (zh) |
-
2023
- 2023-08-01 CN CN202310964051.5A patent/CN117037808A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6752255B2 (ja) | オーディオ信号分類方法及び装置 | |
US10360927B2 (en) | Method and apparatus for frame loss concealment in transform domain | |
JP3591068B2 (ja) | 音声信号の雑音低減方法 | |
CN103854649B (zh) | 一种变换域的丢帧补偿方法及装置 | |
CN1983909B (zh) | 一种丢帧隐藏装置和方法 | |
US8856049B2 (en) | Audio signal classification by shape parameter estimation for a plurality of audio signal samples | |
US8484020B2 (en) | Determining an upperband signal from a narrowband signal | |
JP3936139B2 (ja) | オーバーサンプリングされた合成広帯域信号の高周波数成分回復の方法および装置 | |
JP6271531B2 (ja) | デジタル音声信号における効果的なプレエコー減衰 | |
JP2017526950A (ja) | 低遅延符号化/復号のための補間による音声信号のリサンプリング | |
WO2013060223A1 (zh) | 语音频信号的丢帧补偿方法和装置 | |
JP2002149200A (ja) | 音声処理装置及び音声処理方法 | |
WO2017166800A1 (zh) | 丢帧补偿处理方法和装置 | |
WO2011047578A1 (zh) | 频带扩展方法及装置 | |
JP6301368B2 (ja) | 増強信号の整形を用いて周波数増強信号を生成する装置および方法 | |
US10170126B2 (en) | Effective attenuation of pre-echoes in a digital audio signal | |
US11437054B2 (en) | Sample-accurate delay identification in a frequency domain | |
KR102000227B1 (ko) | 디지털 오디오 신호의 프리에코 판별 및 감쇠 | |
JP4445460B2 (ja) | 音声処理装置及び音声処理方法 | |
KR20230129581A (ko) | 음성 정보를 갖는 개선된 프레임 손실 보정 | |
JP6626123B2 (ja) | オーディオ信号を符号化するためのオーディオエンコーダー及び方法 | |
JP2006126859A5 (zh) | ||
CN117037808A (zh) | 语音信号处理方法、装置、设备及存储介质 | |
CN106847299A (zh) | 延时的估计方法及装置 | |
RU2317595C1 (ru) | Способ обнаружения пауз в речевых сигналах и устройство его реализующее |
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 |