音频数据处理方法、装置、计算机设备及存储介质与流程
本公开涉及音频数据处理领域,尤其涉及音频数据数据处理方法、装置、计算机设备及存储介质。
背景技术:
随着移动通信和互联网的发展,音频技术的应用越来越广泛。在音频数据的传输过程中,由于网络环境较差等原因,可能会发生丢帧事件,严重影响音频质量。目前,在音频数据处理过程中,发生丢帧事件时,通常是基于丢失音频帧的前一个音频帧对应的激励参数,来构造丢失音频帧。当出现连续丢帧,即连续多个音频帧丢失时,则需要基于前一个音频帧对应的激励参数,来恢复出多个丢失的音频帧。
但是,在上述过程中,由于该前一个音频帧的激励参数往往与后续丢失的多个音频帧关联性较差,会导致难以准确地预测出丢失音频帧所包含的信息,音频帧恢复效果较差。因此,在进行音频数据处理时,如何准确地恢复出丢失的音频帧,是当前的一个重要研究方向。
技术实现要素:
本公开提供一种音频数据处理方法、装置、计算机设备及计算机可读存储介质,可以在音频数据处理过程中,准确恢复出丢失的音频帧。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种音频数据处理方法,包括:
响应于音频文件中发生丢帧事件,从该音频文件中获取多个音频帧,该多个音频帧为发生该丢帧事件的目标时刻之前的音频帧;
获取该多个音频帧的幅度值序列和相位序列;
基于该幅度值序列,获取该目标时刻的目标幅度值;
基于该多个音频帧的相位序列,确定该目标时刻的目标相位;
基于该目标幅度值以及该目标相位,生成该目标时刻的目标音频帧。
在一种可能实现方式中,该获取该多个音频帧的幅度值序列和相位序列包括:
对该多个音频帧进行短时傅里叶变换,得到该多个音频帧对应的幅度值序列和相位序列。
在一种可能实现方式中,该基于该幅度值序列,获取该目标时刻的目标幅度值包括:
将该幅度值序列输入音频处理模型,由该音频处理模型提取该幅度值序列的幅度特征;
通过该音频处理模型基于该幅度特征,输出该目标时刻的该目标幅度值。
在一种可能实现方式中,该基于该多个音频帧的相位序列,确定该目标时刻的目标相位,包括:
基于该多个音频帧的相位序列,获取该多个音频帧中相邻两个音频帧之间的平均相位差;
将该多个音频帧中最后一个音频帧的相位与该平均相位差相加,得到该目标时刻的该目标相位。
在一种可能实现方式中,该基于该目标幅度值以及该目标相位,生成该目标时刻的目标音频帧,包括:
将该目标幅度值与该目标相位相乘,得到该目标时刻对应的频域数据;
对该频域数据进行逆傅里叶变换,生成该目标音频帧。
在一种可能实现方式中,该响应于音频文件中发生丢帧事件,从该音频文件中获取多个音频帧,包括:
在该音频文件的接收过程中,检测丢帧事件;
响应于在目标时刻检测到发生丢帧事件,从该音频文件中,获取在该目标时刻之前接收到的该多个音频帧。
在一种可能实现方式中,该多个音频帧的数目基于该音频文件中发生连续丢帧事件的持续时长确定。
根据本公开实施例的第二方面,提供一种音频数据处理装置,包括:
第一获取单元,被配置为响应于音频文件中发生丢帧事件,从该音频文件中获取多个音频帧,该多个音频帧为发生该丢帧事件的目标时刻之前的音频帧;
第二获取单元,被配置为获取该多个音频帧的幅度值序列和相位序列;
第三获取单元,被配置为基于该幅度值序列,获取该目标时刻的目标幅度值;
确定单元,被配置为基于该多个音频帧的相位序列,确定该目标时刻的目标相位;
生成单元,被配置为基于该目标幅度值以及该目标相位,生成该目标时刻的目标音频帧。
在一种可能实现方式中,该第二获取单元被配置为:
对该多个音频帧进行短时傅里叶变换,得到该多个音频帧对应的幅度值序列和相位序列。
在一种可能实现方式中,该第三获取单元被配置为:
将该幅度值序列输入音频处理模型,由该音频处理模型提取该幅度值序列的幅度特征;
通过该音频处理模型基于该幅度特征,输出该目标时刻的该目标幅度值。
在一种可能实现方式中,该确定单元被配置为:
基于该多个音频帧的相位序列,获取该多个音频帧中相邻两个音频帧之间的平均相位差;
将该多个音频帧中最后一个音频帧的相位与该平均相位差相加,得到该目标时刻的该目标相位。
在一种可能实现方式中,该生成单元被配置为:
将该目标幅度值与该目标相位相乘,得到该目标时刻对应的频域数据;
对该频域数据进行逆傅里叶变换,生成该目标音频帧。
在一种可能实现方式中,该音频帧获取单元被配置为:
在该音频文件的接收过程中,检测丢帧事件;
响应于在目标时刻检测到发生丢帧事件,从该音频文件中,获取在该目标时刻之前接收到的该多个音频帧。
在一种可能实现方式中,该多个音频帧的数目基于该音频文件中发生连续丢帧事件的持续时长确定。
根据本公开实施例的第三方面,提供一种计算机设备,包括:
处理器;
用于存储该处理器可执行指令的存储器;
其中,该处理器被配置为执行该指令,以实现如上述任一项该的音频数据处理方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,当该计算机可读存储介质中的指令由计算机设备的处理器执行时,使得该计算机设备能够执行如上述任一项该的音频数据处理方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,包括可执行指令,当该计算机程序产品中的指令由计算机设备的处理器执行时,使得该计算机设备能够执行如上述任一项该的音频数据处理方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
通过在音频文件丢帧时,从音频文件中获取丢帧时刻之前的多个音频帧,由于这多个音频帧的音频信息与丢失音频帧具有较强的关联性,则可以根据这些音频帧所包含的信息,来确定丢帧时刻的目标幅度值和目标相位,再基于该目标幅度值和目标相位,也即是,基于幅度和相位两个维度的数据,来构造丢帧时刻对应的目标音频帧,从而可以有效提高音频帧恢复的准确率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种音频数据处理方法的流程图;
图2为根据一示例性实施例示出的一种音频数据处理方法的实施环境示意图;
图3是本公开实施例提供的一种音频数据处理方法的流程图;
图4是根据一示例性实施例示出的一种音频数据处理流程的示意图;
图5是根据一示例性实施例示出的一种音频处理模型训练过程的示意图;
图6是根据一示例性实施例示出的一种音频处理模型训练方法的流程图;
图7是根据一示例性实施例示出的一种音频数据处理装置框图;
图8是根据一示例性实施例示出的一种计算机设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种音频数据处理方法的流程图,如图1所示,该音频数据处理方法用于计算机设备中,包括以下步骤。
在步骤101中,响应于音频文件中发生丢帧事件,从该音频文件中获取多个音频帧,该多个音频帧为发生该丢帧事件的目标时刻之前的音频帧。
在步骤102中,获取该多个音频帧的幅度值序列和相位序列。
在步骤103中,基于该幅度值序列,获取该目标时刻的目标幅度值。
在步骤104中,基于该多个音频帧的相位序列,确定该目标时刻的目标相位。
在步骤105中,基于该目标幅度值以及该目标相位,生成该目标时刻的目标音频帧。
本公开实施例提供的技术方案,通过在音频文件丢帧时,从音频文件中获取丢帧时刻之前的多个音频帧,由于这多个音频帧的音频信息与丢失音频帧具有较强的关联性,则可以根据这些音频帧所包含的信息,来确定丢帧时刻的目标幅度值和目标相位,再基于该目标幅度值和目标相位,也即是,基于幅度和相位两个维度的数据,来构造丢帧时刻对应的目标音频帧,从而可以有效提高音频帧恢复的准确率。
在一种可能实现方式中,该获取该多个音频帧的幅度值序列和相位序列包括:
对该多个音频帧进行短时傅里叶变换,得到该多个音频帧对应的幅度值序列和相位序列。
在一种可能实现方式中,该基于该幅度值序列,获取该目标时刻的目标幅度值包括:
将该幅度值序列输入音频处理模型,由该音频处理模型提取该幅度值序列的幅度特征;
通过该音频处理模型基于该幅度特征,输出该目标时刻的该目标幅度值。
在一种可能实现方式中,该基于该多个音频帧的相位序列,确定该目标时刻的目标相位,包括:
基于该多个音频帧的相位,获取该多个音频帧中相邻两个音频帧之间的平均相位差;
将该多个音频帧中最后一个音频帧的相位与该平均相位差相加,得到该目标时刻的该目标相位。
在一种可能实现方式中,该基于该目标幅度值以及该目标相位,生成该目标时刻的目标音频帧,包括:
将该目标幅度值与该目标相位相乘,得到该目标时刻对应的频域数据;
对该频域数据进行逆傅里叶变换,生成该目标音频帧。
在一种可能实现方式中,该响应于音频文件中发生丢帧事件,从该音频文件中获取多个音频帧,包括:
在该音频文件的接收过程中,检测丢帧事件;
响应于在目标时刻检测到发生丢帧事件,从该音频文件中,获取在该目标时刻之前接收到的该多个音频帧。
在一种可能实现方式中,该多个音频帧的数目基于该音频文件中发生连续丢帧事件的持续时长确定。
上述实施例仅是本公开的实施方式的一个简要介绍以及各种可能实现方式的简要介绍。
图2为根据一示例性实施例示出的一种音频数据处理方法的实施环境示意图,如图2所示,该实施环境可以包括终端201和服务器202。终端201可以是智能手机、游戏主机、台式计算机、平板电脑、电子书阅读器、mp3播放器、mp4播放器和膝上型便携计算机中的至少一种。该终端201可以安装和运行有支持音频数据接收的应用程序,例如,即时通讯类应用程序、音频类应用程序、视频类应用程序等,本公开实施例对此不作限定。示例性的,终端201是用户使用的终端,终端201中运行的应用程序内登录有用户账号。
终端201通过无线网络或有线网络与服务器202相连。
服务器202可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(contentdeliverynetwork,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器等。该服务器202可以为支持音频数据接收的应用程序提供后台服务。可选地,服务器202承担主要音频数据处理工作,终端201承担次要音频数据处理工作;或者,服务器202承担次要音频数据处理工作,终端201承担主要音频数据处理工作;或者,服务器202或终端201分别可以单独承担音频数据处理工作。该服务器202可以搭载有音频处理模型,该音频处理模型可以用于对音频帧进行特征提取,例如,在本公开实施例中,该音频处理模型可以提取多个音频帧的幅度特征。
上述终端201与服务器202可以通过有线或无线通信方式进行直接或间接地连接,本公开实施例对此不作限定。
本领域技术人员可以知晓,上述终端的数量可以更多或更少。比如上述终端可以仅为一个,或者上述终端为几十个或几百个,或者更多数量。本公开实施例对终端的数量和设备类型不加以限定。
本公开实施例提供的技术方案可以与多种应用场景相结合,例如,在实时语音通话过程中,计算机设备可以对实时接收的音频文件进行检测,当检测到某一时刻发生音频帧丢失事件时,可以基于之前接收到的多个音频帧对丢失的音频帧进行恢复。应用本公开实施例提供的技术方案,可以从幅度和相位两个维度来预测丢失音频帧的信息,从而更好地恢复丢失的音频帧。
图3是本公开实施例提供的一种音频数据处理方法的流程图,该方法可以应用于上述终端或者服务器,而终端和服务器均可以视为一种计算机设备,因此,本公开实施例基于计算机设备作为执行主体来进行介绍,参见图3,该实施例可以包括以下步骤:
在步骤301中,计算机设备检测到音频文件中发生丢帧事件,将发生丢帧事件的时刻确定为目标时刻。
其中,该音频文件可以为该计算机设备正在实时接收的音频文件。在一种可能实现方式中,该计算机设备可以在该音频文件的接收过程中,实时检测丢帧事件,响应于在某一时刻检测到发生丢帧事件,即在某一时刻未接收到音频帧,该计算机设备可以将该某一时刻确定为目标时刻,该未接收到的音频帧即为待恢复出的目标音频帧。当然,该音频文件也可以为已存储在计算机设备中的音频文件,该音频文件中丢失了至少一个音频帧,该计算机设备也可以确定出丢失的音频帧的播放时刻,将该播放时刻确定为目标时刻。需要说明的是,本公开实施例对具体采用哪种音频文件不作限定,在本公开实施例中,仅以该音频文件为计算机设备实时接收的音频文件为例进行说明。
需要说明的是,上述对丢帧事件检测方法的说明,仅是一种示例性说明,本公开实施例对具体采用哪种方法检测丢帧事件不作限定。该音频文件中发生丢帧事件的次数可以为一次,也可以为多次,也即是,可以确定出一个目标时刻,也可以确定出多个目标时刻,本公开实施例对此不作限定。在本公开实施例中,仅以一个目标时刻为例进行说明。
在步骤302中,计算机设备从音频文件中获取该目标时刻之前的多个音频帧。
其中,该多个音频帧的数目可以由开发人员进行设置,本公开实施例对此不作限定。在一种可能实现方式中,该多个音频帧的数目也可以基于该音频文件中发生连续丢帧事件的持续时长确定。例如,该音频文件中发生连续丢帧事件的持续时间越长,即丢失数据越多,则在进行数据恢复时,需要获取的音频帧数目越多;该音频文件中发生连续丢帧事件的持续时间越短,即丢失数据越少,则在进行数据恢复时,需要获取的音频帧数目越少。
在本公开实施例中,该计算机设备确定该目标时刻发生丢帧事件后,可以从该音频文件中,获取该目标时刻之前的多个音频帧,基于该多个音频帧构造出丢失的目标音频帧。
上述步骤301和步骤302,是响应于音频文件中发生丢帧事件,从该音频文件中获取多个音频帧,该多个音频帧为发生该丢帧事件的目标时刻之前的音频帧的步骤。在本公开实施例中,基于多个音频帧进行数据恢复,在数据恢复过程中能够获取到更多的音频帧特征,从而可以提高数据恢复的准确率。
在步骤303中,计算机设备获取多个音频帧的幅度值序列和相位序列。
在本公开实施例中,该计算机设备需要将该多个音频帧从时域转换至时频域,以获取到多个音频帧对应的幅度值序列以及相位序列,以便该计算机设备后续基于幅度值和相位来构造丢失的目标音频帧。在一种可能实现方式中,该计算机设备可以对该多个音频帧进行短时傅里叶变换,得到各个音频帧的频域表示,即各个音频帧对应的频域数据,该频域数据可以用来确定该多个音频帧的幅度值序列和相位序列。例如,该计算机设备可以确定各个音频帧对应的时长,将音频帧的时长确定为窗函数的窗长,该计算机设备可以基于该各个音频帧对应的时长,对该多个音频帧进行加窗处理,再对加窗处理后的该多个音频帧进行快速傅里叶变换,得到时频域数据,即得到每个音频帧对应的频域数据。对于t时刻的音频帧x(t),进行短时傅里叶变换可以表示为下述公式(1):
x(n,k)=stft(x(t))(1)
其中,0<t≤t,t为多个音频帧的总时长,t大于0;x(n,k)为x(t)在频域的表示;n表示帧序列,0<n≤n,n为总帧数,n大于0;k表示中心频率序列,0<k≤k,k为总频点数,k大于0;stft()表示短时傅里叶变换。
该计算机设备可以对各个音频帧对应的频域数据x(n,k)取绝对值,得到各个音频帧的幅度值magx(n,k),进而得到该多个音频帧对应的幅度值序列;该计算机设备可以基于该多个音频帧的时频域数据x(n,k),得到该多个音频帧的相位序列pha(n,k)。需要说明的是,上述对幅度值序列和相位序列获取方法的说明,仅是一种示例性说明,本公开实施例对此不作限定。本公开实施例对上述窗函数的具体类型不作限定,上述窗函数中的窗长等参数均可以由开发人员进行设置。
在一种可能实现方式中,该计算机设置在将该多个音频帧由时域转换至时频域之前,还可以对该多个音频帧进行预处理,例如,对该多个音频帧进行预加重、降噪等处理,以降低发声器官、音频采集设备等对音频质量造成的影响,便于后续对多个音频帧进行特征提取。需要说明的是,本公开实施例对该预处理过程不作限定。
在步骤304中,计算机设备基于该幅度值序列,获取该目标时刻的目标幅度值。
在一种可能实现方式中,该计算机设备可以将该幅度值序列输入音频处理模型,由该音频处理模型提取该幅度值序列的幅度特征,通过该音频处理模型基于该幅度特征,输出该目标时刻的该目标幅度值。
在本公开实施例中,上述音频处理模型为已训练完成的模型,可以用于对该多次音频帧进行幅度特征提取,进而基于提取到的幅度特征预测出丢失的目标音频帧的幅度值。该音频处理模型可以为基于神经网络构建的模型,该神经网络可以为rnn(recurrentneuralnetwork,循环神经网络)、dnn(deepneuralnetworks,深度神经网络)等,本公开实施例对此不作限定。在本公开实施例中,以该音频处理模型为基于dnn构建的模型为例,该音频处理模型可以包括输入层、至少一个隐层以及输出层。该计算机设备可以通过该输入层将该多个音频帧对应的幅度值序列输入该音频处理模型。当然,该计算机设备还可以进一步获取该多个音频帧的梅尔频谱信息mel(magx(n,k)),作为该音频处理模型的输入,本公开实施例对该音频处理模型的具体输入数据不作限定。该计算机设备可以通过该至少一个隐层中的各个隐层单元,对该幅度值序列进行特征提取,即对输入数据进行加权运算,得到该多个音频帧的幅度特征,由输出层输出基于该幅度特征预测出目标幅度值,也即是丢失音频帧的幅度值。需要说明的是,上述对获取目标幅度值的方法的说明,仅是一种示例性说明,本公开实施例对具体采用哪种方法获取该目标幅度值不作限定。
在步骤305中,计算机设备基于该多个音频帧的相位序列,确定该目标时刻的目标相位。
在一种可能实现方式中,该计算机设备可以基于该多个音频帧的相位序列,获取该多个音频帧中相邻两个音频帧之间的平均相位差。例如,音频帧的相位可以表示为pha(n,k),则相邻两个音频帧之间的相位差phadiff(n,k)可以表示为下述公式(2):
phadiff(n,k)=pha(n,k)-pha(n-1,k)(2)
其中,phadiff(n,k)可以表示第n个音频帧与第n-1个音频帧之间的相位差。
该平均相位差phadiff_mean可以表示为下述公式(3):
其中,z可以表示音频帧的数目,z为正整数;a表示连续z个音频帧中第一个音频帧的序号;m表示当前参与计算的音频帧的序号,a≤m≤a+z。
在一种可能实现方式中,该计算机设备可以获取该多个音频帧中最后一个音频帧的相位,将该最后一个音频帧的相位与该平均相位差相加,得到该目标时刻的目标相位phaest(n,k)。该目标相位的获取过程方法表示为下述公式(4):
phaest(n,k)=pha(n-1,k)+phadiff_mean(4)
其中,n可以表示丢失的目标音频帧为第n个音频帧;pha(n-1,k)可以表示该多个音频帧中最后一个音频帧,即第n-1个音频帧的相位;phadiff_mean表示平均相位差。
需要说明的是,上述对目标相位预测方法的说明,仅是一种示例性说明,本公开实施例对具体采用哪种方法确定该目标相位不作限定。
在本公开实施例中,以先获取目标幅度值,再获取目标相位序列的执行顺序进行描述,在一些实施例中,也可以先执行获取目标相位序列的步骤,再执行获取目标幅度值的步骤,或者两个步骤同时执行,本公开实施例对此不作限定。
在步骤306中,计算机设备基于该目标幅度值以及该目标相位,生成该目标时刻的目标音频帧。
在本公开实施例中,该计算机设备可以将该目标幅度值与该目标相位相乘,得到该目标时刻对应的频域数据,再对该频域数据进行逆傅里叶变换,生成该目标音频帧。例如,该目标音频帧为t时刻的音频帧,则预测出的该目标音频帧x0(t)可以表示为下述公式(5):
x0(t)=istft(magx0(n,k)*phaest(n,k))(5)
其中,magx0(n,k)可以表示音频处理模型输出的目标幅度值;phaest(n,k)可以表示预测出的目标相位;istft()可以表示短时逆傅里叶变换。
本公开实施例提供的技术方案,通过在音频文件丢帧时,从音频文件中获取丢帧时刻之前的多个音频帧,由于这多个音频帧的音频信息与丢失音频帧具有较强的关联性,则可以根据这些音频帧所包含的信息,来确定丢帧时刻的目标幅度值和目标相位,再基于该目标幅度值和目标相位,也即是,基于幅度和相位两个维度的数据,来构造丢帧时刻对应的目标音频帧,从而可以有效提高音频帧恢复的准确率。
图4是根据一示例性实施例示出的一种音频数据处理流程的示意图,以下结合图4,对上述音频数据处理过程进行说明。对于多个音频帧401,首先,计算机设备可以对该多个音频帧401进行短时傅里叶变换,将该多个音频帧401由时域转换为时频域,进而基于时频域数据得到幅度值序列402以及相位序列403。然后,该计算机设备可以将该幅度值序列402输入音频处理模型404,由音频处理模型基于该幅度值序列402预测出目标幅度值405。该计算机设备可以应用相位补偿技术,基于该多个音频帧401的相位序列403预测出该目标相位406。最后,该计算机设备基于该目标幅度值405以及目标相位406,构造出该目标音频帧。在本公开实施例中,采用基于深度学习的音频丢包补偿方法,即应用训练好的音频处理模型,基于未丢失的多个音频帧的幅度信息,来预测丢失音频帧的目标幅度值,采用相位补偿技术,基于未丢失的多个音频帧的相位,来预测丢失音频帧的目标相位,能够更好地补偿丢失帧的音频信息以及达到更大的丢失帧补充时长,从而消除由于丢包所造成的的音频不连续以及听感较差的问题。
上述实施例介绍了应用音频处理模型对丢失的音频帧的目标幅度值进行预测的过程,而在应用该音频处理模型之前,需对该音频处理模型进行训练,图5是根据一示例性实施例示出的一种音频处理模型训练过程的示意图,参见图5,该计算机设备需从一段音频数据的幅度信息中选取该音频处理模型的学习特征501和学习目标502,作为训练数据,将该学习特征501和学习目标502输入音频处理模型训练模块503,对音频处理模型进行训练,使该音频处理模型可以基于该学习特征501预测出该学习目标502。图6是根据一示例性实施例示出的一种音频处理模型训练方法的流程图,结合图6,对该音频处理模型的训练过程进行具体说明:
在步骤601中,计算机设备初始化该音频处理模型中的各个参数。
该计算机设备可以对该音频处理模型中各个运算层的参数进行随机赋值,来实现参数初始化。在一种可能实现方式中,该计算机设备可以采用方差为0.01,均值为0的高斯分布对该音频处理模型进行参数初始化。
需要说明的是,上述对音频处理模型初始化方法的说明仅是一种示例性说明,本公开实施例对具体采用哪种模型初始化方式不作限定。
在步骤602中,计算机设备将训练数据集输入该音频处理模型训练模块。
其中,音频处理模型训练模块可以包括音频处理模型,还可以包括用于对音频处理模型的输出结果进行评估的至少一个损失函数,本公开实施例对该音频处理模型训练模块的具体结构不作限定。
在一种可能实现方式中,该训练数据集中可以包括多个训练数据,一个训练数据可以由该音频处理模型的学习特征和学习目标构成。在一种可能实现方式中,该计算机设备可以对某一预设音频数据进行短时傅里叶变换,得到该预设音频数据的幅度信息。其中,该预设音频数据中包括多个音频帧。例如,对于预设音频数据对应的时频域数据x(n,k),该计算机设备基于该时频域数据x(n,k)所得到的幅度信息,即幅度值序列magx(n,k)可以表示为下述公式(6):
magx(n,k)=abs(x(n,k))(6)
其中,abs()可以表示取绝对值运算。
该计算机设备可以从该预设音频数据中选取第一音频数据,将该第一音频数据对应的幅度值序列magx(n-m:n-1,k)作为该学习特征。其中,m可以表示该第一音频数据中共包含m个音频帧,预设音频数据中的第n-m帧为该第一音频数据中的第一个音频帧,预设音频数据中的第n-1帧为该第一音频数据中的最后一个音频帧。当然,该计算机设备还可以进一步获取该幅度值序列对应的梅尔频谱信息mel(magx(n-m:n-1,k))作为该学习特征,本公开实施例对此不作限定,在本公开实施例中,仅以将幅度值序列作为学习特征为例进行说明。该计算机设备可以从预设音频数据中,选取位于该第一音频数据之后,紧邻该第一音频数据的第二音频数据,将该第二音频数据对应的幅度值序列作为该学习目标。需要说明的是,上述对获取训练数据的方法的说明,仅是一种示例性说明,本公开实施例对具体采用哪种方法获取该训练数据不作限定。
该计算机设备可以将学习特征和学习目标输入该音频处理模型训练模块,将其中的学习特征输入音频处理模型,由该音频处理模型执行后续的数据处理步骤。
在步骤603中,计算机设备获取该音频处理模型的模型输出结果,计算模型输出结果与学习目标的误差。
在一种可能实现方式中,该计算机设备可以基于至少一个损失函数来确定该模型输出结果与学习目标之间的误差。例如,可以通过损失函数计算模型输出结果与学习目标之间的损失,作为模型输出结果与正确结果之间的误差。当然,该计算机设备还可以通过其他方法确定该误差,本公开实施例对此不作限定。
在步骤604中,该计算机设备基于该模型输出结果与学习目标之间的误差,对该音频处理模型中的各个参数进行调整,至到符合预设条件时,得到训练好的音频处理模型。
在一种可能实现方式中,该计算机设备可以将该误差与预设阈值进行比较,当该误差大于预设阈值时,该计算机设备可以将误差反向传播至该音频处理模型,求解该音频处理模型中的各个参数。其中,该预设阈值可以由开发人员进行设置,本公开实施例对此不作限定。需要说明的是,本公开实施例对该音频处理模型中各个参数的求解过程不作限定。
当该误差小于预设阈值时,则确定该音频处理模型输出了正确结果,该计算机设备可以继续读取下一组训练数据,执行上述步骤603,若该计算机设备获取到的模型输出结果正确的个数到达目标数目,或者遍历该训练数据集达到目标次数时,则可以确定该音频处理模型训练完毕。其中,该目标数目和目标次数均可以由开发人员进行设置。
图7是根据一示例性实施例示出的一种音频数据处理装置框图。参照图7,该装置包括音频帧第一获取单元701、第二获取单元702、第三获取单元703、确定单元704和生成单元705。
第一获取单元701,被配置为响应于音频文件中发生丢帧事件,从该音频文件中获取多个音频帧,该多个音频帧为发生该丢帧事件的目标时刻之前的音频帧;
第二获取单元702,被配置为获取该多个音频帧的幅度值序列和相位序列;
第三获取单元703,被配置为基于该幅度值序列,获取该目标时刻的目标幅度值;
确定单元704,被配置为基于该多个音频帧的相位序列,确定该目标时刻的目标相位;
生成单元705,被配置为基于该目标幅度值以及该目标相位,生成该目标时刻的目标音频帧。
在一种可能实现方式中,该第二获取单元702被配置为:
对该多个音频帧进行短时傅里叶变换,得到该多个音频帧对应的幅度值序列和相位序列。
在一种可能实现方式中,该第三获取单元703被配置为:
将该幅度值序列输入音频处理模型,由该音频处理模型提取该幅度值序列的幅度特征;
通过该音频处理模型基于该幅度特征,输出该目标时刻的该目标幅度值。
在一种可能实现方式中,该确定单元704被配置为:
基于该多个音频帧的相位序列,获取该多个音频帧中相邻两个音频帧之间的平均相位差;
将该多个音频帧中最后一个音频帧的相位与该平均相位差相加,得到该目标时刻的该目标相位。
在一种可能实现方式中,该生成单元705被配置为:
将该目标幅度值与该目标相位相乘,得到该目标时刻对应的频域数据;
对该频域数据进行逆傅里叶变换,生成该目标音频帧。
在一种可能实现方式中,该音频帧获取单元701被配置为:
在该音频文件的接收过程中,检测丢帧事件;
响应于在目标时刻检测到发生丢帧事件,从该音频文件中,获取在该目标时刻之前接收到的该多个音频帧。
在一种可能实现方式中,该多个音频帧的数目基于该音频文件中发生连续丢帧事件的持续时长确定。
本公开实施例提供的装置,通过在音频文件丢帧时,从音频文件中获取丢帧时刻之前的多个音频帧,由于这多个音频帧的音频信息与丢失音频帧具有较强的关联性,则可以根据这些音频帧所包含的信息,来确定丢帧时刻的目标幅度值和目标相位,再基于该目标幅度值和目标相位,也即是,基于幅度和相位两个维度的数据,来构造丢帧时刻对应的目标音频帧,从而可以有效提高音频帧恢复的准确率。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图8是根据一示例性实施例示出的一种计算机设备的框图。该计算机设备800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(centralprocessingunits,cpu)801和一个或一个以上的存储器802,其中,该存储器802中存储有至少一条指令,该至少一条指令由该处理器801加载并执行以实现上述各个方法实施例提供的音频数据处理方法。当然,该计算机设备还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该计算机设备还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器,上述指令可由计算机设备的处理器执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,该非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除