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

合成歌曲音频的方法、终端及存储介质与流程

2021-08-13 19:22:00 来源:中国专利 TAG:互联网 终端 合成 音频 特别
合成歌曲音频的方法、终端及存储介质与流程

本申请涉及互联网技术领域,特别涉及一种合成歌曲音频的方法、终端及存储介质。



背景技术:

近年来,歌曲合成技术一直备受社会各界的关注,该技术最大的便利性在于其可以将歌词和乐谱合成为人声演唱的音频,这使得与歌唱紧密相关的音乐制作、娱乐等领域对歌曲合成技术的进步有着迫切的期待。例如,初音未来、洛天依等虚拟偶像演唱的歌曲音频便是通过歌曲合成技术合成的。

在相关技术中,当某一用户想要合成目标对象尚未演唱的歌曲音频时,用户可以预先选定歌词信息和乐谱信息,并基于歌词信息和乐谱信息,得到音素标识序列以及音素标识序列中每个音素标识的音高值序列和发音特征序列,将音素标识序列中每个音素标识的音高值序列和发音特征序列输入到预先训练的音素频谱估计模型中,获得音素标识序列中每个音素标识的初始频谱数据序列。对于音素标识序列中每个音素标识,在目标对象的参考频谱数据库中,查找出音素标识序列中每个音素标识对应的参考频谱数据。将音素标识序列中每个音素标识对应的初始频谱数据序列和参考频谱数据输入预先训练的歌曲合成模型,得到音素标识序列中每个音素标识对应的合成频谱数据序列,组成合成歌曲音频。其中,形成目标对象的参考频谱数据库的过程为:预先获得目标对象的参考音频,在这些参考音频中,获取参考音频包含的每个音素标识对应的频谱数据序列。对每个音素标识对应的所有频谱数据求平均,得到每个音素标识对应的参考频谱数据,进而将每个音素标识对应的参考频谱数据存储到目标对象的参考频谱数据库。

在上述过程中,对于每个音素标识而言,该音素标识的初始频谱数据序列中的多个初始频谱数据与同一参考频谱数据对应,基于音素标识序列中每个音素标识对应的初始频谱数据序列和参考频谱数据生成的合成歌曲音频忽视了音素标识在发音方面的微妙变化,导致合成歌曲音频中每个音素标识的发音生硬,合成歌曲音频播放效果差。



技术实现要素:

本申请实施例提供了一种合成歌曲音频的方法、终端及存储介质,能够避免合成歌曲音频中每个音素标识的发音生硬的问题,提高了合成歌曲音频的播放效果。该技术方案如下:

一方面,本申请实施例提供了一种合成歌曲音频的方法,所述方法包括:

获取目标歌曲的歌词信息和所述目标歌曲的每个时间帧对应的目标音高值;

基于所述歌词信息,确定所述目标歌曲的每个时间帧对应的发音特征;

将每个时间帧对应的目标音高值和发音特征输入频谱估计模型,得到每个时间帧对应的初始频谱数据;

在预先存储的所述目标对象的多个参考频谱数据中,计算每个时间帧对应的初始频谱数据分别与每个参考频谱数据之间的相似度,进而分别确定与每个时间帧对应的初始频谱数据相似度最高的参考频谱数据,得到每个时间帧对应的参考频谱数据;

将每个时间帧对应的初始频谱数据和参考频谱数据输入预先训练的歌曲合成模型,得到每个时间帧对应的合成频谱数据,生成目标歌曲音频。

可选的,所述获取目标歌曲的每个时间帧对应的目标音高值,包括:

获取所述目标歌曲的乐谱信息中每个音高值对应的起始时间点和终止时间点;

根据每个音高值对应的起始时间点和终止时间点,确定所述目标歌曲的每个时间帧对应的目标音高值。

可选的,所述在预先存储的所述目标对象的多个参考频谱数据中,计算每个时间帧对应的初始频谱数据分别与每个参考频谱数据之间的相似度,进而分别确定与每个时间帧对应的初始频谱数据相似度最高的参考频谱数据,得到每个时间帧对应的参考频谱数据,包括:

对于每个时间帧,计算所述时间帧对应的初始频谱数据分别和所述目标对象的多个参考频谱数据中的每个参考频谱数据的内积,根据所述时间帧对应的初始频谱数据分别和每个参考频谱数据的内积,得到所述时间帧对应的初始频谱数据分别和每个参考频谱数据的相似度,进而确定与所述时间帧对应的初始频谱数据相似度最高的参考频谱数据,得到所述时间帧对应的参考频谱数据。

可选的,所述根据所述时间帧对应的初始频谱数据分别和每个参考频谱数据的内积,得到所述时间帧对应的初始频谱数据分别和每个参考频谱数据的相似度,包括:

根据所述时间帧对应的初始频谱数据分别和每个参考频谱数据的内积和预设公式,得到所述时间帧对应的初始频谱数据分别和每个参考频谱数据的相似度;

所述预设公式为其中,s为所述时间帧对应的初始频谱数据与第i个参考频谱数据的相似度,vi为所述时间帧对应的初始频谱数据与第i个参考频谱数据的内积,n为所述目标对象对应的参考频谱数据的数目。

可选的,所述基于所述歌词信息,确定所述目标歌曲的每个时间帧对应的发音特征,包括:

根据所述歌词信息,确定所述歌词信息包括的歌词文本中每个字对应的时间信息;

将每个字符的时间信息输入预先训练的音素识别模型,得到所述歌词文本对应的每个音素标识以及每个音素标识对应的时间信息;

将所述每个音素标识分别输入预先训练的音素发音特征模型,得到每个音素标识对应的初始发音特征序列,其中,所述初始发音特征序列包括多个初始发音特征,每个初始发音特征对应一个时间帧;

基于每个音素标识对应的初始发音特征序列和每个音素标识对应的时间信息,输入到预先训练的歌词发音特征模型,得到每个音素标识对应的发音特征序列,确定所述目标歌曲的每个时间帧对应的发音特征。

可选的,所述方法还包括:

获取所述目标对象的多个参考音频;

对每个参考音频进行分帧处理,得到多个参考频谱数据,并将多个参考频谱数据与所述目标对象对应存储,得到所述目标对象的多个参考频谱数据。

可选的,所述参考频谱数据为连续向量特征。

可选的,所述方法还包括:

获取样本对象演唱的基准歌曲音频和用于生成样本对象的样本合成歌曲音频所使用的样本歌词信息以及每个时间帧对应的样本音高值;

基于所述样本歌词信息,确定所述样本合成歌曲音频的每个时间帧对应的样本发音特征;

将每个时间帧对应的样本音高值和样本发音特征输入频谱估计模型,得到每个时间帧对应的样本初始频谱数据;

在预先存储的所述样本对象的多个样本参考频谱数据中,计算每个时间帧对应的初始频谱数据分别与每个参考频谱数据之间的相似度,进而分别确定与每个时间帧对应的样本初始频谱数据相似度最高的样本参考频谱数据,得到每个时间帧对应的样本参考频谱数据;

将每个时间帧对应的样本初始频谱数据和样本参考频谱数据,输入歌曲合成模型,得到每个时间帧对应的样本合成频谱数据,生成所述样本合成歌曲音频;

基于所述样本合成歌曲音频和基准歌曲音频,对所述频谱估计模型和所述歌曲合成模型进行训练调整。

一方面,本申请实施例提供了一种合成歌曲音频的装置,所述装置包括:

获取模块,被配置为获取目标歌曲的歌词信息和所述目标歌曲的每个时间帧对应的目标音高值;

确定模块,被配置为基于所述歌词信息,确定所述目标歌曲的每个时间帧对应的发音特征;

输入模块,被配置为将每个时间帧对应的目标音高值和发音特征输入频谱估计模型,得到每个时间帧对应的初始频谱数据;

计算模块,被配置为在预先存储的所述目标对象的多个参考频谱数据中,计算每个时间帧对应的初始频谱数据分别与每个参考频谱数据之间的相似度,进而分别确定与每个时间帧对应的初始频谱数据相似度最高的参考频谱数据,得到每个时间帧对应的参考频谱数据;

生成模块,被配置为将每个时间帧对应的初始频谱数据和参考频谱数据输入预先训练的歌曲合成模型,得到每个时间帧对应的合成频谱数据,生成目标歌曲音频。

可选的,所述获取模块,被配置为:

获取所述目标歌曲的乐谱信息中每个音高值对应的起始时间点和终止时间点;

根据每个音高值对应的起始时间点和终止时间点,确定所述目标歌曲的每个时间帧对应的目标音高值。

可选的,所述计算模块,被配置为:

对于每个时间帧,计算所述时间帧对应的初始频谱数据分别和所述目标对象的多个参考频谱数据中的每个参考频谱数据的内积,根据所述时间帧对应的初始频谱数据分别和每个参考频谱数据的内积,得到所述时间帧对应的初始频谱数据分别和每个参考频谱数据的相似度,进而确定与所述时间帧对应的初始频谱数据相似度最高的参考频谱数据,得到所述时间帧对应的参考频谱数据。

可选的,所述计算模块,被配置为:

根据所述时间帧对应的初始频谱数据分别和每个参考频谱数据的内积和预设公式,得到所述时间帧对应的初始频谱数据分别和每个参考频谱数据的相似度;

所述预设公式为其中,s为所述时间帧对应的初始频谱数据与第i个参考频谱数据的相似度,vi为所述时间帧对应的初始频谱数据与第i个参考频谱数据的内积,n为所述目标对象对应的参考频谱数据的数目。

可选的,所述确定模块,被配置为:

根据所述歌词信息,确定所述歌词信息包括的歌词文本中每个字对应的时间信息;

将每个字符的时间信息输入预先训练的音素识别模型,得到所述歌词文本对应的每个音素标识以及每个音素标识对应的时间信息;

将所述每个音素标识分别输入预先训练的音素发音特征模型,得到每个音素标识对应的初始发音特征序列,其中,所述初始发音特征序列包括多个初始发音特征,每个初始发音特征对应一个时间帧;

基于每个音素标识对应的初始发音特征序列和每个音素标识对应的时间信息,输入到预先训练的歌词发音特征模型,得到每个音素标识对应的发音特征序列,确定所述目标歌曲的每个时间帧对应的发音特征。

可选的,所述装置还包括存储模块,所述存储模块,被配置为:

获取所述目标对象的多个参考音频;

对每个参考音频进行分帧处理,得到多个参考频谱数据,并将多个参考频谱数据与所述目标对象对应存储,得到所述目标对象的多个参考频谱数据。

可选的,所述参考频谱数据为连续向量特征。

可选的,所述装置还包括训练调整模块,所述训练调整模块被配置为:

获取样本对象演唱的基准歌曲音频和用于生成样本对象的样本合成歌曲音频所使用的样本歌词信息以及每个时间帧对应的样本音高值;

基于所述样本歌词信息,确定所述样本合成歌曲音频的每个时间帧对应的样本发音特征;

将每个时间帧对应的样本音高值和样本发音特征输入频谱估计模型,得到每个时间帧对应的样本初始频谱数据;

在预先存储的所述样本对象的多个样本参考频谱数据中,计算每个时间帧对应的初始频谱数据分别与每个参考频谱数据之间的相似度,进而分别确定与每个时间帧对应的样本初始频谱数据相似度最高的样本参考频谱数据,得到每个时间帧对应的样本参考频谱数据;

将每个时间帧对应的样本初始频谱数据和样本参考频谱数据,输入歌曲合成模型,得到每个时间帧对应的样本合成频谱数据,组成所述样本合成歌曲音频;

基于所述样本合成歌曲音频和基准歌曲音频,对所述频谱估计模型和所述歌曲合成模型进行训练调整。

一方面,本申请实施例提供了一种终端,该终端包括处理器和存储器,该存储器中存储有至少一条程序代码,该至少一条程序代码由该处理器加载并执行以实现上述的合成歌曲音频的方法。

一方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行以实现上述的合成歌曲音频的方法。

在本申请实施例中,根据每个时间帧的初始频谱数据,来确定出每个时间帧对应的初始频谱数据相似度最高的参考频谱数据,而每个时间帧对应的初始频谱数据是由每个时间帧的音高值和发音特征生成的。通过上述方法确定的相同音素标识对应的参考频谱数据可能不同,考虑到了音素标识的发音方面的微妙变化,这样生成的合成歌曲音频中的每个音素标识的发音较为自然,进而提高了合成歌曲音频的播放效果。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种合成歌曲音频的方法的实施环境示意图;

图2是本申请实施例提供的一种合成歌曲音频的方法的流程图;

图3是本申请实施例提供的一种合成歌曲音频的方法的示意图;

图4是本申请实施例提供的一种合成歌曲音频的方法的示意图;

图5是本申请实施例提供的一种合成歌曲音频的方法的示意图;

图6是本申请实施例提供的一种合成歌曲音频的装置的结构示意图;

图7是本申请实施例提供的一种终端的结构示意图;

图8是本申请实施例提供的一种服务器结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

图1是本申请实施例提供的一种合成歌曲音频的方法的实施环境示意图,如图1所示,该实施环境可以包括:服务器101和终端102。

服务器101可以是一台服务器,也可以是多台服务器组成的服务器集群。服务器101可以是云计算平台和虚拟化中心中的至少一种,本申请实施例对此不做限定。服务器101可以用于接收终端102发送的合成歌曲音频请求,该合成歌曲音频请求携带有歌词标识、乐谱标识和目标对象标识,也可以用于根据播放请求中携带的歌词标识、乐谱标识和目标对象标识,生成目标对象的目标歌曲音频。当然,该服务器101还可以包括其他功能服务器,以便提供更加全面且多样化的服务。

终端102可以是智能手机、游戏主机、台式计算机、平板电脑、mp3(movingpictureexpertsgroupaudiolayeriii,动态影像专家压缩标准音频层面3)播放器、mp4(movingpictureexpertsgroupaudiolayeriv,动态影像专家压缩标准音频层面4)播放器和膝上型便携计算机中的至少一种。终端102通过有线网络或无线网络与服务器101相连,终端102中安装和运行有支持播放音乐的应用程序。终端102可以用于在接收到用户触发的歌曲音频合成指令之后,向服务器101发送携带合成歌曲音频请求,该歌曲音频请求携带有歌词标识、乐谱标识和目标对象标识,还可以用于接收服务器101发送的目标对象的目标歌曲音频。

在本申请实施例中,用户想要播放目标对象演唱的目标歌曲音频,但实际并不存在目标对象演唱的目标歌曲音频,用户可以基于自己的需求生成目标对象演唱的目标歌曲音频。在实际操作过程中,用户可以打开终端上的音乐应用程序,点击音乐应用程序上的主界面上的合成歌曲音频的入口,进入歌曲音频合成页面。用户基于自身的需求,在歌曲音频合成页面上合成歌曲音频。

图2是本申请实施例提供的一种合成歌曲音频的方法的流程图。该实施例以服务器为执行主体进行说明,参见图2,该实施例包括:

步骤201、获取目标歌曲的歌词信息和目标歌曲的每个时间帧对应的目标音高值。

其中,目标歌曲为目标对象对应的待合成的歌曲。

可选的,乐谱信息包括每个音高值对应的时间信息。这样便可以基于每个音高值对应的时间信息,确定每个时间帧对应的音高值。具体步骤包括:获取目标歌曲的乐谱信息中每个音高值对应的起始时间点和终止时间点。根据每个音高值对应的起始时间点和终止时间点,确定目标歌曲的每个时间帧对应的目标音高值。

在实施中,用户可以在歌曲音频合成页面选择出合成歌曲音频所使用的歌词、乐谱以及目标对象。当用户选择完成后,终端响应于用户触发的歌曲音频合成指令,基于歌词确定歌词标识,基于乐谱确定乐谱标识,基于目标对象确定目标对象标识,并向服务器发送歌曲音频合成请求。其中,歌曲合成请求携带有歌词标识、乐谱标识以及目标对象标识。服务器接收到终端发送的歌曲音频合成请求,解析歌曲音频合成请求,并获得歌曲音频合成请求中的歌词标识、乐谱标识以及目标对象标识,根据歌词标识查找到歌词信息,根据乐谱标识查找到乐谱信息。在查找到乐谱信息后,获取乐谱信息中每个音高值对应的起始时间点和终止时间点,并根据预先设置的时间帧时长,对每个音高值对应的起始时间点和终止时间点进行划分,得到每个时间帧对应的目标音高值。其中,每个时间帧对应的时长一般在10ms~20ms之间,具体时长由技术人员设定。

在实际过程中,服务器中还可以直接存储每个时间帧对应的音高值。这样便可以直接得到每个时间帧对应的音高值。

步骤202、基于歌词信息,确定目标歌曲的每个时间帧对应的发音特征。

可选的,如图4所示,根据歌词信息,确定歌词信息包括的歌词文本中每个字对应的时间信息。将每个字符的时间信息输入预先训练的音素识别模型,得到歌词文本对应的每个音素标识以及每个音素标识对应的时间信息。将每个音素标识分别输入预先训练的音素发音特征模型,得到每个音素标识对应的初始发音特征序列。基于每个音素标识对应的初始发音特征序列和每个音素标识对应的时间信息,输入到预先训练的歌词发音特征模型,得到每个音素标识对应的发音特征序列,确定目标歌曲的每个时间帧对应的发音特征。

在上述过程中,歌词信息包括歌词文本和歌词文本中每个字对应的时间信息,而每个字对应的时间信息可以为音乐人员基于目标歌曲对应的乐谱信息为每个歌词文本中的每个字分配的起始时间点和终止时间点。

而上述过程中的初始发音特征序列包括多个初始发音特征,每个初始发音特征与一个时间帧对应。每个音素标识对应的发音特征序列包括发音特征,每个发音特征与一个时间帧。对于每个音素标识而言,音素标识对应的初始发音特征序列所包含的时间帧数目等于或者小于该音素标识对应的发音特征序列所包含的时间帧数目。即对于每个音素标识而言,该音素标识的初始发音特征序列的发音时长小于或者等于该音素标识的发音特征序列的发音时长。这是因为初始发音特征序列的发音时长为该初始发音特征序列对应的音素标识在正常说话情况下的发音时长,发音特征序列的发音时长为该发音特征序列音素标识在唱歌情况下的发音时长。

例如,对于音素标识“a”,音素标识“a”的初始发音特征序列的发音时长只有1.3ms,而在某歌曲音频中,音素标识“a”的发音特征序列的发音时长可以为1s。其中,音素标识“a”对应的初始发音时长为正常说话情况下的发音时长。

步骤203、将每个时间帧对应的目标音高值和发音特征输入频谱估计模型,得到每个时间帧对应的初始频谱数据。

其中,初始频谱数据并不是真正的频谱数据,而是基于某一时间帧的目标音高值和发音特征生成的、且可以表现该时间帧的发音特征的数据。

如图3所示,将每个时间帧对应的目标音高值和发音特征输入预先训练的频谱估计模型,得到每个时间帧对应的初始频谱数据。

需要说明的是,目标音高值对应的时间帧总数目与发音特征对应的时间帧总数目相等,这是由于每个字对应的时间信息是根据目标歌曲的乐谱信息获得的,而目标音高值对应的时间帧总数目,即总时长,也是根据目标歌曲的乐谱信息获得的。

可选的,在本申请实施例中,不仅对频谱估计模型进行调整,还要对上述过程中的音素识别模型、音素发音特征模型和歌词发音特征模型进行训练调整。具体步骤为:在样本集中预先获取样本歌词信息、样本乐谱信息以及除目标对象之外的其他对象使用歌词信息和乐谱信息演唱出的样本歌曲音频。对样本歌曲音频进行分帧处理,获得多个音频帧的基准频谱数据。基于样本歌词信息、样本乐谱信息、音素识别模型、音素发音特征模型、歌词发音特征模型和频谱估计模型,得到每个时间帧对应的初始频谱数据。根据每个时间帧对应的初始频谱数据、每个音频帧的基准频谱数据以及损失函数,得到损失信息。基于损失信息分别对音素识别模型、音素发音特征模型、歌词发音特征模型和频谱估计模型训练调整。在样本集中获得其他的样本歌词信息、样本乐谱信息以及样本歌曲音频对上述模型进行训练调整。在多次训练调整后,获得预先训练的音素识别模型、音素发音特征模型、歌词发音特征模型和频谱估计模型。

需要说明的是,上述训练过程中初始频谱数据对应的时间帧的数目和基准频谱数据对应的时间帧的数目是相等的。

在本申请中,在训练过程中,可以先对音素识别模型、音素发音特征模型、歌词发音特征模型和频谱估计模型进行训练,再将训练后的上述模型应用于单独训练歌曲合成模型的过程中,这样可以在一定程度上减小训练的次数和提高训练结果的准确性。

步骤204、在预先存储的目标对象的多个参考频谱数据中,计算每个时间帧对应的初始频谱数据分别与每个参考频谱数据之间的相似度,进而分别确定与每个时间帧对应的初始频谱数据相似度最高的参考频谱数据,得到每个时间帧对应的参考频谱数据。

其中,本申请实施例中的初始频谱数据与时间帧是一一对应的关系,参考音频数据与音频帧也是一一对应的关系。时间帧和音频帧对应的时长相同,时间帧总数目和音频帧总数目也是相同的。不同的是时间帧只包括时间信息,而音频帧不仅包括时间信息,还包含音频信息。在本申请实施例中,参考频谱数据的维数和初始频谱数据的维数相同。

在步骤201中服务器已经获取到目标对象标识之后,服务器可以根据目标对象标识查找到预先存储的目标对象的多个参考频谱数据,并计算每个时间帧对应的初始频谱数据分别和每个参考频谱数据之间的相似度,进而分别确定与每个时间帧对应的初始频谱数据相似度最高的参考频谱数据,得到每个时间帧对应的参考频谱数据。

可选的,对于每个时间帧,计算该时间帧对应的初始频谱数据分别和目标对象的多个参考频谱数据中的每个参考频谱数据的内积,根据时间帧对应的初始频谱数据分别和每个参考频谱数据的内积,得到时间帧对应的初始频谱数据分别和每个参考频谱数据的相似度,进而确定与时间帧对应的初始频谱数据相似度最高的参考频谱数据,得到时间帧对应的参考频谱数据。

在实施中,对于每个时间帧而言,使用dotproductssu算法计算该时间帧对应的初始频谱数据分别和目标对象的多个参考频谱数据中的每个参考频谱数据的内积,接着使用softmax公式对该时间帧对应的初始频谱数据分别和目标对象的多个参考频谱数据中的每个参考频谱数据的内积进行归一化处理,得到时间帧对应的初始频谱数据分别和每个参考频谱数据的相似度。在多个相似度中,确定与时间帧对应的初始频谱数据相似度最高的参考频谱数据,得到时间帧对应的参考频谱数据。

进一步的,对每个内积进行归一化处理的具体过程为根据时间帧对应的初始频谱数据分别和每个参考频谱数据的内积和预设公式,得到时间帧对应的初始频谱数据分别和每个参考频谱数据的相似度;预设公式为其中,s为时间帧对应的初始频谱数据与第i个参考频谱数据的相似度,vi为时间帧对应的初始频谱数据与第i个参考频谱数据的内积,n为所述目标对象对应的参考频谱数据的数目。其中,i大于0,小于目标对象对应的参考频谱数据的总数目。

本申请实施例可以通过计算初始频谱数据和参考频谱数据的相似度,实质上是计算发音的相似度,进而找到与每个时间帧的发音最相似的参考发音。

上述过程中的参考频谱数据是真正的频谱数据,其获取的具体过程可以是:获取目标对象的多个参考音频。对每个参考音频进行分帧处理,得到多个参考频谱数据,并将多个参考频谱数据与目标对象对应存储,获得目标对象的多个参考频谱数据,并将其存储到目标对象的参考频谱数据库中。

其中,上述过程中的参考频谱数据为连续向量特征。

在相关技术中,需要对目标对象的每个音素标识对应的所有频谱数据求平均,进而得到每个音素标识对应的参考频谱数据,也就是说,纵使拥有目标对象的大量的参考音频,参考频谱数据库中最多存储48个参考频谱数据。而本申请中,对目标对象的所有的参考音频进行分帧处理,得到每个音频帧对应的参考频谱数据。当目标对象的参考音频越多时,目标对象的参考音频数据库中的参考音频数据越多。而在参考音频数据库包括大量参考音频数据的情况下,根据相似度找出的参考频谱数据越接近于初始频谱数据,也就是说参考频谱数据的发音越接近于初始频谱数据的发音,进而使得合成歌曲音频的每个音素标识的发音较为自然,在一定程度上提高了合成歌曲音频的播放效果。

步骤205、将每个时间帧对应的初始频谱数据和参考频谱数据输入预先训练的歌曲合成模型,得到每个时间帧对应的合成频谱数据,生成目标歌曲音频。

其中,目标歌曲音频为合成歌曲音频。合成歌曲音频可以为整首歌曲音频,也可以为整首歌曲音频中的部分歌曲音频。当合成歌曲音频为整首歌曲音频中的部分歌曲音频时,获得部分歌曲音频的方法为获取整个歌词信息中的部分歌词信息和整个乐谱信息中的部分乐谱信息,基于部分歌词信息和部分乐谱信息,生成合成歌曲音频。或者,获取整个歌词信息和整个乐谱信息,在生成整首合成歌曲音频后,提取整首合成歌曲音频中的部分歌曲音频。

在实施中,如图3所示,将每个时间帧对应的初始频谱数据和参考频谱数据输入预先训练的歌曲合成模型,得到每个时间帧对应的合成频谱数据,生成目标歌曲音频。

本申请实施例提供的技术方案,每个时间帧对应的参考频谱数据是根据每个时间帧对应的初始频谱数据确定的,而非根据每个时间帧对应的音素标识确定,这样充分考虑到每个时间帧发音的特征,生成的合成歌曲音频中的每个音素发音较为自然,提高了合成歌曲音频的播放效果。

在本申请实施例中,根据每个时间帧的初始频谱数据,来确定出与每个时间帧对应的初始频谱数据相似度最高的参考频谱数据,而每个时间帧对应的初始频谱数据是由每个时间帧的音高值和发音特征生成的,这样考虑到音高值对发音的影响和相同音素标识在不同时间帧的微妙变化,生成的合成歌曲音频中的每个音素标识的发音较为自然,进而提高了合成歌曲音频的播放效果。

在相关技术中,如果参考频谱数据库存储的参考频谱数据的个数小于48,则说明某些音素标识并没有对应的参考频谱数据,在这种情况下,只能将参考频谱库中的所有参考频谱数据的平均频谱数据作为没有参考频谱数据的音频标识的参考频谱数据,而这样生成的合成歌曲音频的播放效果差。而在本申请中,在参考频谱数据库中一定会确定与初始频谱数据最相似的参考频谱数据,进而避免相关技术中存在的问题,进一步提高了合成歌曲音频的播放效果。

可选的,如图5所示,获取样本对象演唱的基准歌曲音频和用于生成样本对象的样本合成歌曲音频所使用的样本歌词信息和样本乐谱信息,其中,样本乐谱信息包括每个时间帧对应的样本音高值。基于样本歌词信息,确定样本合成歌曲音频的每个时间帧对应的样本发音特征。将每个时间帧对应的样本音高值和样本发音特征输入频谱估计模型,得到每个时间帧对应的样本初始频谱数据;在预先存储的样本对象的多个样本参考频谱数据中,分别确定与每个时间帧对应的样本初始频谱数据相似度最高的样本参考频谱数据,得到每个时间帧对应的样本参考频谱数据。将每个时间帧对应的样本初始频谱数据和样本参考频谱数据,输入歌曲合成模型,得到每个时间帧对应的样本合成频谱数据,组成样本合成歌曲音频。基于样本合成歌曲音频和基准歌曲音频,对频谱估计模型和歌曲合成模型进行训练调整。

需要说明的是,在基于样本合成歌曲和基准歌曲音频进行训练调整的过程中,还可以对音素识别模型、音素发音特征模型以及歌词音素发音特征模型进行训练调整。

图6是本申请实施例提供的一种合成歌曲音频的装置的结构示意图,参见图6,该装置包括:

获取模块601,被配置为获取目标歌曲的歌词信息和所述目标歌曲的每个时间帧对应的目标音高值;

确定模块602,被配置为基于所述歌词信息,确定所述目标歌曲的每个时间帧对应的发音特征;

输入模块603,被配置为将每个时间帧对应的目标音高值和发音特征输入频谱估计模型,得到每个时间帧对应的初始频谱数据;

计算模块604,被配置为在预先存储的所述目标对象的多个参考频谱数据中,计算每个时间帧对应的初始频谱数据分别与每个参考频谱数据之间的相似度,进而分别确定与每个时间帧对应的初始频谱数据相似度最高的参考频谱数据,得到每个时间帧对应的参考频谱数据;

生成模块605,被配置为将每个时间帧对应的初始频谱数据和参考频谱数据输入预先训练的歌曲合成模型,得到每个时间帧对应的合成频谱数据,生成目标歌曲音频。

可选的,所述获取模块601,被配置为:

获取所述目标歌曲的乐谱信息中每个音高值对应的起始时间点和终止时间点;

根据每个音高值对应的起始时间点和终止时间点,确定所述目标歌曲的每个时间帧对应的目标音高值。

可选的,所述计算模块604,被配置为:

对于每个时间帧,计算所述时间帧对应的初始频谱数据分别和所述目标对象的多个参考频谱数据中的每个参考频谱数据的内积,根据所述时间帧对应的初始频谱数据分别和每个参考频谱数据的内积,得到所述时间帧对应的初始频谱数据分别和每个参考频谱数据的相似度,进而分别确定与每个时间帧对应的初始频谱数据相似度最高的参考频谱数据,得到每个时间帧对应的参考频谱数据。

可选的,所述计算模块604,被配置为:

根据所述时间帧对应的初始频谱数据分别和每个参考频谱数据的内积和预设公式,得到所述时间帧对应的初始频谱数据分别和每个参考频谱数据的相似度;

所述预设公式为其中,s为所述时间帧对应的初始频谱数据与第i个参考频谱数据的相似度,vi为所述时间帧对应的初始频谱数据与第i个参考频谱数据的内积,n为所述目标对象对应的参考频谱数据的数目。

可选的,所述确定模块602,被配置为:

根据所述歌词信息,确定所述歌词信息包括的歌词文本中每个字对应的时间信息;

将每个字符的时间信息输入预先训练的音素识别模型,得到所述歌词文本对应的每个音素标识以及每个音素标识对应的时间信息;

将所述每个音素标识分别输入预先训练的音素发音特征模型,得到每个音素标识对应的初始发音特征序列,其中,所述初始发音特征序列包括多个初始发音特征,每个初始发音特征对应一个时间帧;

基于每个音素标识对应的初始发音特征序列和每个音素标识对应的时间信息,输入到预先训练的歌词发音特征模型,得到每个音素标识对应的发音特征序列,确定所述目标歌曲的每个时间帧对应的发音特征。

可选的,所述装置还包括存储模块,所述存储模块,被配置为:

获取所述目标对象的多个参考音频;

对每个参考音频进行分帧处理,得到多个参考频谱数据,并将多个参考频谱数据与所述目标对象对应存储,得到所述目标对象的多个参考频谱数据。

可选的,所述参考频谱数据为连续向量特征。

可选的,所述装置还包括训练调整模块,所述训练调整模块被配置为:

获取样本对象演唱的基准歌曲音频和用于生成样本对象的样本合成歌曲音频所使用的样本歌词信息以及每个时间帧对应的样本音高值;

基于所述样本歌词信息,确定所述样本合成歌曲音频的每个时间帧对应的样本发音特征;

将每个时间帧对应的样本音高值和样本发音特征输入频谱估计模型,得到每个时间帧对应的样本初始频谱数据;

在预先存储的所述样本对象的多个样本参考频谱数据中,计算每个时间帧对应的初始频谱数据分别与每个参考频谱数据之间的相似度,进而分别确定与每个时间帧对应的样本初始频谱数据相似度最高的样本参考频谱数据,得到每个时间帧对应的样本参考频谱数据;

将每个时间帧对应的样本初始频谱数据和样本参考频谱数据,输入歌曲合成模型,得到每个时间帧对应的样本合成频谱数据,组成所述样本合成歌曲音频;

基于所述样本合成歌曲音频和基准歌曲音频,对所述频谱估计模型和所述歌曲合成模型进行训练调整。

需要说明的是:上述实施例提供的合成歌曲音频的装置在合成歌曲音频时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的合成歌曲音频的装置与合成歌曲音频的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

图7示出了本申请一个示例性实施例提供的终端700的结构框图。该终端700可以是:智能手机、平板电脑、mp3播放器(movingpictureexpertsgroupaudiolayeriii,动态影像专家压缩标准音频层面3)、mp4(movingpictureexpertsgroupaudiolayeriv,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端700还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。

通常,终端700包括有:处理器701和存储器702。

处理器701可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器701可以采用dsp(digitalsignalprocessing,数字信号处理)、fpga(field-programmablegatearray,现场可编程门阵列)、pla(programmablelogicarray,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器701也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(centralprocessingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器701可以集成有gpu(graphicsprocessingunit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器701还可以包括ai(artificialintelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。

存储器702可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器702还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器702中的非暂态的计算机可读存储介质用于存储至少一个程序代码,该至少一个程序代码用于被处理器701所执行以实现本申请中方法实施例提供的合成歌曲音频的方法。

在一些实施例中,终端700还可选包括有:外围设备接口703和至少一个外围设备。处理器701、存储器702和外围设备接口703之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口703相连。具体地,外围设备包括:射频电路704、显示屏705、摄像头组件706、音频电路707、定位组件708和电源709中的至少一种。

外围设备接口703可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器701和存储器702。在一些实施例中,处理器701、存储器702和外围设备接口703被集成在同一芯片或电路板上;在一些其他实施例中,处理器701、存储器702和外围设备接口703中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。

射频电路704用于接收和发射rf(radiofrequency,射频)信号,也称电磁信号。射频电路704通过电磁信号与通信网络以及其他通信设备进行通信。射频电路704将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路704包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路704可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2g、3g、4g及5g)、无线局域网和/或wifi(wirelessfidelity,无线保真)网络。在一些实施例中,射频电路704还可以包括nfc(nearfieldcommunication,近距离无线通信)有关的电路,本申请对此不加以限定。

显示屏705用于显示ui(userinterface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏705是触摸显示屏时,显示屏705还具有采集在显示屏705的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器701进行处理。此时,显示屏705还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏705可以为一个,设置在终端700的前面板;在另一些实施例中,显示屏705可以为至少两个,分别设置在终端700的不同表面或呈折叠设计;在另一些实施例中,显示屏705可以是柔性显示屏,设置在终端700的弯曲表面上或折叠面上。甚至,显示屏705还可以设置成非矩形的不规则图形,也即异形屏。显示屏705可以采用lcd(liquidcrystaldisplay,液晶显示屏)、oled(organiclight-emittingdiode,有机发光二极管)等材质制备。

摄像头组件706用于采集图像或视频。可选地,摄像头组件706包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及vr(virtualreality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件706还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。

音频电路707可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器701进行处理,或者输入至射频电路704以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端700的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器701或射频电路704的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路707还可以包括耳机插孔。

定位组件708用于定位终端700的当前地理位置,以实现导航或lbs(locationbasedservice,基于位置的服务)。定位组件708可以是基于美国的gps(globalpositioningsystem,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。

电源709用于为终端700中的各个组件进行供电。电源709可以是交流电、直流电、一次性电池或可充电电池。当电源709包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。

在一些实施例中,终端700还包括有一个或多个传感器710。该一个或多个传感器710包括但不限于:加速度传感器711、陀螺仪传感器712、压力传感器713、指纹传感器714、光学传感器715以及接近传感器716。

加速度传感器711可以检测以终端700建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器711可以用于检测重力加速度在三个坐标轴上的分量。处理器701可以根据加速度传感器711采集的重力加速度信号,控制显示屏705以横向视图或纵向视图进行用户界面的显示。加速度传感器711还可以用于游戏或者用户的运动数据的采集。

陀螺仪传感器712可以检测终端700的机体方向及转动角度,陀螺仪传感器712可以与加速度传感器711协同采集用户对终端700的3d动作。处理器701根据陀螺仪传感器712采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变ui)、拍摄时的图像稳定、游戏控制以及惯性导航。

压力传感器713可以设置在终端700的侧边框和/或显示屏705的下层。当压力传感器713设置在终端700的侧边框时,可以检测用户对终端700的握持信号,由处理器701根据压力传感器713采集的握持信号进行左右手识别或快捷操作。当压力传感器713设置在显示屏705的下层时,由处理器701根据用户对显示屏705的压力操作,实现对ui界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。

指纹传感器714用于采集用户的指纹,由处理器701根据指纹传感器714采集到的指纹识别用户的身份,或者,由指纹传感器714根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器701授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器714可以被设置在终端700的正面、背面或侧面。当终端700上设置有物理按键或厂商logo时,指纹传感器714可以与物理按键或厂商logo集成在一起。

光学传感器715用于采集环境光强度。在一个实施例中,处理器701可以根据光学传感器715采集的环境光强度,控制显示屏705的显示亮度。具体地,当环境光强度较高时,调高显示屏705的显示亮度;当环境光强度较低时,调低显示屏705的显示亮度。在另一个实施例中,处理器701还可以根据光学传感器715采集的环境光强度,动态调整摄像头组件706的拍摄参数。

接近传感器716,也称距离传感器,通常设置在终端700的前面板。接近传感器716用于采集用户与终端700的正面之间的距离。在一个实施例中,当接近传感器716检测到用户与终端700的正面之间的距离逐渐变小时,由处理器701控制显示屏705从亮屏状态切换为息屏状态;当接近传感器716检测到用户与终端700的正面之间的距离逐渐变大时,由处理器701控制显示屏705从息屏状态切换为亮屏状态。

本领域技术人员可以理解,图7中示出的结构并不构成对终端700的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。

本申请实施例提供的计算机设备可提供为一种服务器。图8是本申请实施例提供的一种服务器的结构示意图,该服务器800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(centralprocessingunits,cpu)801和一个或一个以上的存储器802,其中,该存储器802中存储有至少一条程序代码,该至少一条程序代码由该处理器801加载并执行以实现上述各个方法实施例提供的合成歌曲音频的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。

在示例性实施例中,还提供了一种计算机可读存储介质,例如包括程序代码的存储器,上述程序代码可由终端或服务器中的处理器执行以完成上述实施例中的媒体资源播放方法。例如,所述计算机可读存储介质可以是只读内存(read-onlymemory,rom)、随机存取存储器(randomaccessmemory),ram)、只读光盘(compact-discread-onlymemory)、磁带、软盘和光数据存储设备等。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来程序代码相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

再多了解一些

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

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

相关文章

  • 日榜
  • 周榜
  • 月榜