首页 / 专利库 / 电脑编程 / 计算机程序 / 音高处理方法、装置、设备及存储介质

音高处理方法、装置、设备及存储介质

阅读:1086发布:2020-05-19

专利汇可以提供音高处理方法、装置、设备及存储介质专利检索,专利查询,专利分析的服务。并且本 申请 公开了一种音高处理方法、装置、设备及存储介质,属于音频处理领域。该方法包括:对目标音频 片段 的音高进行时域 采样 ,得到多个时刻的初始音高;从多个时刻的初始音高中确定至少两个连续时刻的备选音高,其中,每个备选音高均处于音高范围内,且确定出的备选音高的个数小于初始音高的个数;对至少两个连续时刻的备选音高进行处理,得到多个时刻中每个时刻的修正音高。由于本申请可以对处于正常音高范围内的备选音高进行处理,得到与初始音高个数相同的多个时刻的修正音高,因此可以在确保最终合成的音频中的音高均处于正常音高范围的同时,确保每个目标音频片段对应的音高的完整性,从而确保最终合成的音频的效果。,下面是音高处理方法、装置、设备及存储介质专利的具体信息内容。

1.一种音高处理方法,其特征在于,所述方法包括:
对目标音频片段的音高进行时域采样,得到多个时刻的初始音高;
从所述多个时刻的初始音高中确定至少两个连续时刻的备选音高,其中,每个所述备选音高均处于音高范围内,且确定出的所述备选音高的个数小于所述初始音高的个数;
对所述至少两个连续时刻的备选音高进行处理,得到所述多个时刻中每个时刻的修正音高。
2.根据权利要求1所述的方法,其特征在于,所述从所述多个时刻的初始音高中确定至少两个连续时刻的备选音高,包括:
从所述多个时刻的初始音高中确定多个音高组,每个所述音高组包括至少两个连续时刻的初始音高,每个所述音高组包括的初始音高的个数小于所述初始音高的个数,且每个所述音高组中的每个所述初始音高均处于音高范围内;
将多个所述音高组中目标音高组包括的至少两个连续时刻的初始音高确定为备选音高,其中,所述目标音高组为多个所述音高组中,最后一个初始音高的时刻与所述多个时刻中最后一个时刻的差值最小的一个所述音高组。
3.根据权利要求1所述的方法,其特征在于,所述对所述至少两个连续时刻的备选音高进行处理,得到所述多个时刻中每个时刻的修正音高,包括:
在所述至少两个连续时刻的备选音高中插入目标数量个差值音高;
基于所述目标数量个差值音高的插值位置,更新每个所述备选音高的时刻,以及每个所述差值音高的时刻,得到所述多个时刻中每个时刻的修正音高;
其中,所述目标数量等于所述初始音高的个数与所述备选音高的个数的差值,每个所述差值音高根据至少一个所述备选音高确定。
4.根据权利要求3所述的方法,其特征在于,
对于每个所述差值音高,所述差值音高等于所述差值音高插入位置处相邻的一个所述备选音高,或者,所述差值音高等于所述差值音高插入位置处相邻的两个所述备选音高的均值。
5.根据权利要求1所述的方法,其特征在于,所述对所述至少两个连续时刻的备选音高进行处理,得到所述多个时刻中每个时刻的修正音高,包括:
依次对所述至少两个连续时刻的备选音高中,相邻第一数量个所述备选音高加权求和,得到第二数量个候选音高,其中,所述第二数量等于所述初始音高的个数;
采用所述第二数量个候选音高替换所述多个时刻的初始音高,得到所述多个时刻中每个时刻的修正音高。
6.根据权利要求1至5任一所述的方法,其特征在于,在从所述多个时刻的初始音高中确定至少两个连续时刻的备选音高之前,所述方法还包括:
从所述多个时刻的初始音高中获取出现次数最多的目标音高;
基于所述目标音高确定音高范围,所述音高范围包含所述目标音高。
7.根据权利要求6所述的方法,其特征在于,所述基于所述目标音高确定音高范围,包括:
将所述目标音高减去音高偏差的差值,确定为音高范围的下限;
将所述目标音高与所述音高偏差之和,确定为音高范围的上限。
8.一种音高处理装置,其特征在于,所述装置包括:
采样模,用于对目标音频片段的音高进行时域采样,得到多个时刻的初始音高;
第一确定模块,用于从所述多个时刻的初始音高中确定至少两个连续时刻的备选音高,其中,每个所述备选音高均处于音高范围内,且确定出的所述备选音高的个数小于所述初始音高的个数;
处理模块,用于对所述至少两个连续时刻的备选音高进行处理,得到所述多个时刻中每个时刻的修正音高。
9.一种音高处理设备,其特征在于,包括:存储器,处理器及存储在所述存储器上的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7任一所述的音高处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述计算机可读存储介质在计算机上运行时,使得计算机执行如权利要求1至7任一所述的音高处理方法。

说明书全文

音高处理方法、装置、设备及存储介质

技术领域

[0001] 本公开涉及音频处理领域,特别涉及一种音高处理方法、装置、设备及存储介质。

背景技术

[0002] 目前,终端在对用户录制的音频进行合成的过程中,在获取到用户录制的音频中每个字的多个音高后,为了避免最终合成的音频中出现杂音或者突变声,需要去除该多个音高中处于音高范围之外的音高,并基于去除后的音高进行音频合成。其中,音高由声音振动的频率决定。
[0003] 但是,由于终端会将每个字的多个音高中不在音高范围内的部分音高去除,使得有的字的部分音高缺失,进而导致最终合成的音频效果较差。发明内容
[0004] 本公开实施例提供了一种音高处理方法、装置、设备及存储介质,可以解决相关技术中将每个字的多个音高中不在音高范围内的部分音高去除,导致最终合成的音频效果较差的问题。所述技术方案如下:
[0005] 一方面,提供了一种音高处理方法,所述方法包括:
[0006] 对目标音频片段的音高进行时域采样,得到多个时刻的初始音高;
[0007] 从所述多个时刻的初始音高中确定至少两个连续时刻的备选音高,其中,每个所述备选音高均处于音高范围内,且确定出的所述备选音高的个数小于所述初始音高的个数;
[0008] 对所述至少两个连续时刻的备选音高进行处理,得到所述多个时刻中每个时刻的修正音高。
[0009] 可选的,所述从所述多个时刻的初始音高中确定至少两个连续时刻的备选音高,包括:
[0010] 从所述多个时刻的初始音高中确定多个音高组,每个所述音高组包括至少两个连续时刻的初始音高,每个所述音高组包括的初始音高的个数小于所述初始音高的个数,且每个所述音高组中的每个所述初始音高均处于音高范围内;
[0011] 将多个所述音高组中目标音高组包括的至少两个连续时刻的初始音高确定为备选音高,其中,所述目标音高组为多个所述音高组中,最后一个初始音高的时刻与所述多个时刻中最后一个时刻的差值最小的一个所述音高组。
[0012] 可选的,所述对所述至少两个连续时刻的备选音高进行处理,得到所述多个时刻中每个时刻的修正音高,包括:
[0013] 在所述至少两个连续时刻的备选音高中插入目标数量个差值音高;
[0014] 基于所述目标数量个差值音高的插值位置,更新每个所述备选音高的时刻,以及每个所述差值音高的时刻,得到所述多个时刻中每个时刻的修正音高;
[0015] 其中,所述目标数量等于所述初始音高的个数与所述备选音高的个数的差值,每个所述差值音高根据至少一个所述备选音高确定。
[0016] 可选的,对于每个所述差值音高,所述差值音高等于所述差值音高插入位置处相邻的一个所述备选音高,或者,所述差值音高等于所述差值音高插入位置处相邻的两个所述备选音高的均值。
[0017] 可选的,所述对所述至少两个连续时刻的备选音高进行处理,得到所述多个时刻中每个时刻的修正音高,包括:
[0018] 依次对所述至少两个连续时刻的备选音高中,相邻第一数量个所述备选音高加权求和,得到第二数量个候选音高,其中,所述第二数量等于所述初始音高的个数;
[0019] 采用所述第二数量个候选音高替换所述多个时刻的初始音高,得到所述多个时刻中每个时刻的修正音高。
[0020] 可选的,在从所述多个时刻的初始音高中确定至少两个连续时刻的备选音高之前,所述方法还包括:
[0021] 从所述多个时刻的初始音高中获取出现次数最多的目标音高;
[0022] 基于所述目标音高确定音高范围,所述音高范围包含所述目标音高。
[0023] 可选的,所述基于所述目标音高确定音高范围,包括:
[0024] 将所述目标音高减去音高偏差的差值,确定为音高范围的下限;
[0025] 将所述目标音高与所述音高偏差之和,确定为音高范围的上限。
[0026] 另一方面,提供了一种音高处理装置,所述装置包括:
[0027] 采样模,用于对目标音频片段的音高进行时域采样,得到多个时刻的初始音高;
[0028] 第一确定模块,用于从所述多个时刻的初始音高中确定至少两个连续时刻的备选音高,其中,每个所述备选音高均处于音高范围内,且确定出的所述备选音高的个数小于所述初始音高的个数;
[0029] 处理模块,用于对所述至少两个连续时刻的备选音高进行处理,得到所述多个时刻中每个时刻的修正音高。
[0030] 又一方面,提供了一种音高处理设备,包括:存储器,处理器及存储在所述存储器上的计算机程序,所述处理器执行所述计算机程序时实现如上述方面所述的音高处理方法。
[0031] 再一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述计算机可读存储介质在计算机上运行时,使得计算机执行如上述方面所述的音高处理方法。
[0032] 本公开实施例提供的技术方案带来的有益效果至少包括:
[0033] 本公开实施例提供了一种音高处理方法、装置、设备及存储介质,该音高处理方法在对目标音频片段的音高进行时域采样,得到多个时刻的初始音高后,可以从该多个时刻的初始音高中确定处于音高范围内的至少两个连续时刻的备选音高,并对处于音高范围内的至少两个连续时刻的备选音高进行处理,得到该多个时刻中每个时刻的修正音高。由于该音高处理方法是对处于正常音高范围内的备选音高进行处理,得到与初始音高个数相同的多个时刻的修正音高,因此可以在确保最终合成的音频中的音高均处于正常音高范围的同时,确保每个目标音频片段对应的音高的完整性,从而确保最终合成的音频的效果。附图说明
[0034] 为了更清楚地说明本公开实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0035] 图1是本公开实施例提供的一种音高处理方法所涉及的实施环境的示意图;
[0036] 图2是本公开实施例提供的一种音高处理方法的流程图
[0037] 图3是本公开实施例提供的另一种音高处理方法的流程图;
[0038] 图4是本公开实施例提供的一种多个时刻的初始音高的示意图;
[0039] 图5是本公开实施例提供的一种音高处理装置的框图
[0040] 图6是本公开实施例提供的另一种音高处理装置的框图。

具体实施方式

[0041] 为使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开实施方式作进一步地详细描述。
[0042] 图1是本公开实施例提供的一种音高处理方法所涉及的实施环境的示意图。如图1所示,该实施环境可以包括:终端11。该终端11可以为个人电脑、笔记本电脑平板电脑或手机等安装有音频合成软件110的设备,该音高处理方法可以应用于该终端11中。
[0043] 可选的,本公开实施例提供的音高处理方法还可以应用于服务器中,该服务器可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个计算服务中心。本公开实施例以该音高处理方法应用于图1所示的终端11中为例进行说明。
[0044] 在本公开实施例中,由于终端是对处于正常音高范围内的备选音高进行处理,从而得到与初始音高个数相同的多个时刻的修正音高,因此可以在确保最终合成的音频中的音高均处于正常音高范围的同时,确保每个目标音频片段对应的音高的完整性,从而确保最终合成的音频的效果。
[0045] 图2是本公开实施例提供的一种音高处理方法的流程图,该音高处理方法可以应用于图1所示的终端11中,或者该音高处理方法可以应用于服务器中。本公开实施例以该音高处理方法应用于图1所示的终端11中为例进行说明。如图2所示,该方法可以包括:
[0046] 步骤201、对目标音频片段的音高进行时域采样,得到多个时刻的初始音高。
[0047] 在本公开实施例中,终端在采用音频合成软件对待处理的音频进行合成的过程中,需要先从该待处理的音频中获取目标音频片段。之后可以每隔采样间隔从该目标音频片段中采样一个音频,并获取该音频帧对应的初始音高,从而采样得到多个时刻的初始音高,即该每个初始音高对应一个时刻。
[0048] 可选的,若每个音频帧由多个采样时间点组成,则该每个初始音高可以对应一个时间段。
[0049] 其中,该待处理的音频可以是用户采用该音频合成软件录制的音频,或者也可以是用户上传至该音频合成软件的音频。该目标音频片段的时长小于或等于该待处理的音频的时长,该目标音频片段可以是一个文本单元或者多个文本单元所对应的音频片段。该文本单元可以是任一种语言。例如该文本单元可以是单个汉字或者英文单词。该初始音高是由声音振动的频率决定。可选的,该初始音高可以用频率表示。
[0050] 步骤202、从多个时刻的初始音高中确定至少两个连续时刻的备选音高。
[0051] 其中,该每个备选音高均处于音高范围内,且该确定出的备选音高的个数小于初始音高的个数。该处于音高范围内的音高是不会使得最终合成的音频出现杂音或者突变音的音高。
[0052] 可选的,该音高范围可以是终端中预先存储的一个固定音高范围,也可以是终端根据该多个初始音高确定的。
[0053] 可选的,若该多个时刻的初始音高均处于音高范围内,则表明该多个时刻的初始音高均不会使得最终合成的音频出现杂音或者突变音,因此终端无需对该多个时刻的初始音高进行修正,则终端可以直接基于该多个时刻的初始音高进行音频合成。
[0054] 步骤203、对至少两个连续时刻的备选音高进行处理,得到多个时刻中每个时刻的修正音高。
[0055] 该修正高音的个数与初始音高的个数相同。终端在得到多个时刻中每个时刻的修正音高后,可以基于该多个时刻中每个时刻的修正音高进行音频合成。
[0056] 综上所述,本公开实施例提供了一种音高处理方法,该音高处理方法在对目标音频片段的音高进行时域采样,得到多个时刻的初始音高后,可以从该多个时刻的初始音高中确定处于音高范围内的至少两个连续时刻的备选音高,并对处于音高范围内的至少两个连续时刻的备选音高进行处理,得到该多个时刻中每个时刻的修正音高。由于该音高处理方法是对处于正常音高范围内的备选音高进行处理,得到与初始音高个数相同的多个时刻的修正音高,因此可以在确保最终合成的音频中的音高均处于正常音高范围的同时,确保每个目标音频片段对应的音高的完整性,从而确保了最终合成的音频的效果。
[0057] 图3是本公开实施例提供的一种音高处理方法的流程图,该音高处理方法可以应用于图1所示的终端11中,或者该音高处理方法可以应用于服务器中。本公开实施例以该音高处理方法应用于图1所示的终端11中为例进行说明。如图3所示,该方法可以包括:
[0058] 步骤301、对目标音频片段的音高进行时域采样,得到多个时刻的初始音高。
[0059] 在本公开实施例中,终端在采用音频合成软件对待处理的音频进行合成的过程中,需要先从该待处理的音频中获取目标音频片段。之后可以每隔采样间隔从该目标音频片段中采样一个初始音高,从而采样得到多个时刻的初始音高,即每个初始音高对应一个时刻。
[0060] 其中,该待处理的音频可以是用户采用该音频合成软件录制的音频,或者也可以是用户上传至该音频合成软件的音频。该目标音频片段的时长小于该待处理的音频的时长,该目标音频片段可以是一个文本单元或者多个文本单元所对应的音频片段。该文本单元可以是任一种语言。例如该文本单元可以是单个汉字或者英文单词。该初始音高是由声音振动的频率决定。可选的,该初始音高可以用频率表示。
[0061] 示例的,假设该文本单元为单个汉字,该汉字的拼音包括声母和韵母,该声母包括清声声母和非清声声母。其中,该非清声声母和韵母均具有音高,该清声声母没有音高,即该清声声母的音高为0,例如,该清声声母可以为s、sh或者f等。因此终端获取的一个文本单元对应的目标音频片段的音高,也就是该文本单元的非清声声母和韵母对应的音高,即该多个初始音高均不为0。
[0062] 示例的,图4是本公开实施例提供的一种多个时刻的初始音高的示意图。该示意图的横坐标为时间T,纵坐标为音高H。参考图4,终端在将目标音频片段进行时域采样后,可以得到t1至t10共10个时刻的初始音高。
[0063] 步骤302、从多个时刻的初始音高中获取出现次数最多的目标音高。
[0064] 终端在得到多个时刻的初始音高后,可以统计该每个初始音高的出现次数,并将出现次数最多的初始音高确定为目标音高。示例的,如图4所示,10个时刻的初始音高中出现次数最多的是初始音高h0,因此终端可以将初始音高h0确定为目标音高。
[0065] 可选的,终端在得到多个时刻的初始音高后,可以对每个初始音高进行取整,之后统计该取整后的每个初始音高的出现次数,并将取整后的出现次数最多的初始音高确定为目标音高,从而确保确定的目标音高的可靠性。其中,该取整可以为向上取整或者向下取整。
[0066] 步骤303、基于目标音高确定音高范围。
[0067] 在本公开实施例中,终端在获取该目标音高后,可以将该目标音高减去音高偏差的差值,确定为该音高范围的下限。并将该目标音高与音高偏差之和,确定为该音高范围的上限。也即是,该音高范围包含该目标音高。若该目标音高为h0,音高偏差为Δh,则该音高范围可以为[h0-Δh,h0+Δh]。
[0068] 该处于音高范围内的音高是不会使得最终合成的音频出现杂音或者突变音的音高。该音高偏差可以为终端中预先存储的一个固定值。或者该音高偏差可以是终端基于该目标音高得到的。由于一个音频片段的音高不会超过一个八度,因此终端可以将小于该目标音高的两倍的任一数值确定为音高偏差。
[0069] 可选的,该音高范围还可以是终端中预先存储的一个固定音高范围。例如,该固定音高范围可以是80赫兹(HZ)至200HZ,或者也可以是65HZ至2000HZ。
[0070] 步骤304、从多个时刻的初始音高中确定多个音高组。
[0071] 终端在确定音高范围后,可以从该多个时刻的初始音高中确定多个音高组。其中,该每个音高组可以包括至少两个连续时刻的初始音高,该每个音高组包括的初始音高的个数小于初始音高的个数,且该每个音高组中的每个初始音高均处于音高范围内。
[0072] 可选的,该每个音高组包括的初始音高的个数大于个数阈值。该个数阈值可以为终端中预先存储的一个固定值。或者,也可以是终端根据初始音高的个数确定的。例如,该个数阈值可以占该初始音高的个数的20%。
[0073] 在本公开实施例中,终端可以先从该多个时刻的初始音高中获取多个处于音高范围的初始音高,并将该多个处于音高范围的初始音高中时刻连续的至少两个初始音高划分为一个备选音高组,得到多个备选音高组。之后将包括的初始音高的个数大于个数阈值的备选音高组确定为多个音高组。
[0074] 示例的,假设h0-Δh=h1,h0+Δh=h2,则该音高范围为[h1,h2],参考图4,终端从该10个时刻的初始音高可以确定出两个音高组。第一个音高组包括t3至t5三个连续时刻的初始音高。第二个音高组包括t7至t10四个连续时刻的初始音高。
[0075] 步骤305、将多个音高组中目标音高组包括的至少两个连续时刻的初始音高确定为备选音高。
[0076] 其中,该目标音高组为多个音高组中,最后一个初始音高的时刻与多个时刻中最后一个时刻的差值最小的一个音高组,也即是该目标音高组是最靠近多个时刻中最后一个时刻的音高组。由于目标音频片段中后半部分的音高比前半部分的音高更为稳定,通过将更靠近多个时刻中最后一个时刻的音高组确定为目标音高组,使得最终合成的音频的更接近用户的原声,进而使得最终合成的音频的效果更好。
[0077] 示例的,参考图4,第一个音高组中最后一个初始音高的时刻为t5,第二个音高组中最后一个初始音高的时刻为t10。该第二个音高组中最后一个初始音高的时刻t10与该10个时刻中最后一个时刻t10的差值,小于第一个音高组中最后一个初始音高的时刻t5与该10个时刻中最后一个时刻t10的差值。因此终端可以将第二个音高组包括的t7至t10四个连续时刻的初始音高确定为备选音高。
[0078] 可选的,终端在确定多个音高组后,可以获取每个音高组中最后一个初始音高的时刻,并确定该每个音高组中最后一个初始音高的时刻与多个时刻中最后一个时刻的差值,得到多个差值。之后将确定出最小差值的一个音高组确定为目标音高组。
[0079] 需要说明的是,在步骤304中若终端从多个时刻的初始音高中确定出一个音高组,则可以将该一个音高组包括的至少两个连续时刻的初始音高确定为备选音高。
[0080] 步骤306、对至少两个连续时刻的备选音高进行处理,得到多个时刻中每个时刻的修正音高。
[0081] 在本公开实施例中,终端在确定出至少两个连续时刻的备选音高后,可以对该至少两个连续时刻的备选音高进行处理,进而得到多个时刻中每个时刻的修正音高。即该修正音高的个数等于该初始音高的个数。
[0082] 在本公开实施例一种可选的实现方式中,终端可以在该至少两个连续时刻的备选音高中插入目标数量个差值音高,并基于该目标数量个差值音高的插值位置,更新该每个备选音高的时刻以及该每个差值音高的时刻,从而得到多个时刻中每个时刻的修正音高。其中,该目标数量等于初始音高的个数与备选音高的个数的差值,该每个差值音高根据至少一个备选音高确定。示例的,若该初始音高的个数为n,该备选音高的个数为m,则该目标数量可以为n-m,其中,m和n均为大于1的整数,且m小于n。
[0083] 在本公开实施例中,对于每个差值音高,该差值音高等于该差值音高插入位置处相邻的一个备选音高。示例的,对于每个差值音高,该差值音高可以等于该差值音高插入位置处相邻的前一个备选音高。或者可以等于该差值音高插入位置处相邻的后一个备选音高。
[0084] 或者,该差值音高等于该差值音高插入位置处相邻的两个备选音高的均值。可选的,该均值可以为该差值音高插入位置处相邻两个备选音高的算数平均值、几何平均值或者加权平均值。
[0085] 在本申请实施例中,假设每个差值音高均等于该差值音高插入位置处相邻的前一个备选音高。终端得到的该多个时刻中第i个时刻的修正音高等于该至少两个连续时刻的备选音高中的第j个时刻的备选音高。其中,j满足:j=┌i×m/n┐,即该j=Ceiling(i×m/n)。或者,j满足:j=└i×m/n┘,也即是j=Floor(i×m/n)。┌┐和Ceiling均表示向上取整,└┘和Floor均表示向下取整。j为小于或等于m的整数,i为小于或等于n的整数。需要说明的是,当j=0时,终端可以将第1个备选音高确定为第i个修正音高。
[0086] 示例的,假设m为5,n为10,j=Ceiling(i×m/n),则终端需要在5个备选音高中插入5个差值音高。当i为1时,j=1,终端可以将多个备选音高中的第1个备选音高保持不变,并将该第一个备选音高对应的时刻更新为10个时刻中的第一个时刻。
[0087] 当i=2时,j=1,则终端可以在第1个备选音高和第2个备选音高之间插入一个第1个备选音高,该插入的第1个备选音高即为第1个差值音高,并将该第1个差值音高对应的时刻更新为10个时刻中的第二个时刻。当i=3时,j=2,则终端可以在第1个差值音高和第2个备选音高之间插入一个第2个备选音高,该第1个差值音高和第2个备选音高之间插入的音高即为第2个差值音高,并将该第2个差值音高对应的时刻更新为10个时刻中的第三个时刻。
[0088] 当i=4时,j=2,则终端可以将多个备选音高中的第2个备选音高保持不变,并将该第二个备选音高对应的时刻更新为10个时刻中的第四个时刻。依次类推,直至在该5备选音高中插入5个差值音高,得到10个时刻的修正音高。
[0089] 在本公开实施例另一种可选的实现方式中,终端可以依次对至少两个连续时刻的备选音高中,相邻第一数量个备选音高加权求和,得到第二数量个候选音高。之后采用该第二数量个候选音高替换多个时刻的初始音高,得到多个时刻中每个时刻的修正音高。其中,该第二数量等于初始音高的个数。
[0090] 可选的,该第一数量可以为终端中预先存储的固定数值,例如该第一数量可以为2或者3。每相邻第一数量个备选音高的权重均可以为预先存储的固定数值。或者,也可以是根据该相邻第一数量个备选音高的时刻的索引确定。
[0091] 假设第一数量为2,相邻两个备选音高中第一个备选音高的第一权重为w1,第二个备选音高的第二权重为w2,该第二数量为n,则该n个候选音高中的第i个候选音高Fi可以满足:Fi=w1×Hj+w2×Hj+1,Hj表示的是第j个备选音高,Hj+1表示的是第j+1个备选音高。
[0092] 其中,该第一权重w1可以满足:w1=1-(i×m/n-j),该第二权重w2可以满足:w2=i×m/n-j。该j=┌i×m/n┐,即该j=Ceiling(i×m/n)。或者,j=└i×m/n┘,也即是j=Floor(i×m/n)。需要说明的是,当j=0时,该n个候选音高中的第i个候选音高可以为:Fi=w1×H1+w2×H2。当j=n时,由于j+1大于n,因此该n个候选音高中的第i个候选音高可以为:Fi=Hn。
[0093] 示例的,假设m为5,n为10,j=Floor(i×m/n)。则当i为1时,j=0,终端可以确定第1个候选音高F1满足:F1=w1×H1+w2×H2=(1-(1×5/10-0))×H1+(1×5/10-0)×H2。
[0094] 当i为2时,j=1,终端可以确定第2个候选音高F2满足:F2=w1×H1+w2×H2=(1-(2×5/10-1))×H1+(2×5/10-1)×H2。
[0095] 当i为3时,j=1,终端可以确定第3个候选音高F3满足:F3=w1×H1+w2×H2=(1-(3×5/10-1))×H1+(3×5/10-1)×H2。
[0096] 当i为4时,j=2,终端可以确定第4个候选音高F4满足:F4=w1×H2+w2×H3=(1-(4×5/10-2))×H2+(4×5/10-2)×H3。依次类推,直至确定出F5至F10。之后,将采用该确定出的F1至F10共10个候选音高替换最初确定的10个初始音高。
[0097] 在本公开实施例中,终端通过依次对至少两个连续时刻的备选音高中,相邻第一数量个备选音高加权求和,得到第二数量个候选音高。并采用该第二数量个候选音高替换多个时刻的初始音高,得到多个修正音高。该方法降低相邻第二数量个修正音高相同的可能性,使得确定的多个时刻的修正音高更加准确,且使得该多个修正音高中任意相邻两个修正音高的过渡更加平滑,提高了最终合成的音频的效果。
[0098] 需要说明的是,本公开实施例提供的音高处理方法步骤的先后顺序可以进行适当调整,步骤也可以根据情况进行删除。例如,步骤302和步骤303可以根据情况进行删除,或者,步骤304和步骤305可以在步骤302之前执行。任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本公开的保护范围之内,因此不再赘述。
[0099] 综上所述,本公开实施例提供了一种音高处理方法,该音高处理方法在对目标音频片段的音高进行时域采样,得到多个时刻的初始音高后,可以从该多个时刻的初始音高中确定处于音高范围内的至少两个连续时刻的备选音高,并对处于音高范围内的至少两个连续时刻的备选音高进行处理,得到该多个时刻中每个时刻的修正音高。由于该音高处理方法是对处于正常音高范围内的备选音高进行处理,得到与初始音高个数相同的多个时刻的修正音高,因此可以在确保最终合成的音频中的音高均处于正常音高范围的同时,确保每个目标音频片段对应的音高的完整性,从而确保最终合成的音频的效果。
[0100] 图5是本公开实施例提供的一种音高处理装置的框图50。该音高处理装置可以应用于图1所示的终端11中,或者该音高处理装置可以应用于服务器中。如图5所示,该装置可以包括:
[0101] 采样模块501,用于对目标音频片段的音高进行时域采样,得到多个时刻的初始音高。
[0102] 第一确定模块502,用于从多个时刻的初始音高中确定至少两个连续时刻的备选音高,其中,每个备选音高均处于音高范围内,且确定出的备选音高的个数小于初始音高的个数。
[0103] 处理模块503,用于对至少两个连续时刻的备选音高进行处理,得到多个时刻中每个时刻的修正音高。
[0104] 综上所述,本公开实施例提供了一种音高处理装置,该音高处理装置在对目标音频片段的音高进行时域采样,得到多个时刻的初始音高后,可以从该多个时刻的初始音高中确定处于音高范围内的至少两个连续时刻的备选音高,并对处于音高范围内的至少两个连续时刻的备选音高进行处理,得到该多个时刻中每个时刻的修正音高。由于该音高处理装置是对处于正常音高范围内的备选音高进行处理,得到与初始音高个数相同的多个时刻的修正音高,因此可以在确保最终合成的音频中的音高均处于正常音高范围的同时,确保每个目标音频片段对应的音高的完整性,从而确保最终合成的音频的效果。
[0105] 可选的,第一确定模块502,用于:
[0106] 从多个时刻的初始音高中确定多个音高组,每个音高组包括至少两个连续时刻的初始音高,每个音高组包括的初始音高的个数小于初始音高的个数,且每个音高组中的每个初始音高均处于音高范围内。
[0107] 将多个音高组中目标音高组包括的至少两个连续时刻的初始音高确定为备选音高,其中,目标音高组为多个音高组中,最后一个初始音高的时刻与多个时刻中最后一个时刻的差值最小的一个音高组。
[0108] 可选的,该处理模块503,用于:
[0109] 在至少两个连续时刻的备选音高中插入目标数量个差值音高。
[0110] 基于目标数量个差值音高的插值位置,更新每个备选音高的时刻,以及每个差值音高的时刻,得到多个时刻中每个时刻的修正音高。
[0111] 其中,目标数量等于初始音高的个数与备选音高的个数的差值,每个差值音高根据至少一个备选音高确定。
[0112] 可选的,对于每个差值音高,差值音高等于差值音高插入位置处相邻的一个备选音高,或者,差值音高等于差值音高插入位置处相邻的两个备选音高的均值。
[0113] 可选的,该处理模块503,用于:
[0114] 依次对至少两个连续时刻的备选音高中,相邻第一数量个备选音高加权求和,得到第二数量个候选音高,其中,第二数量等于初始音高的个数。
[0115] 采用第二数量个候选音高替换多个时刻的初始音高,得到多个时刻中每个时刻的修正音高。
[0116] 可选的,如图6所示,该装置还可以包括:
[0117] 获取模块504,用于在从多个时刻的初始音高中确定至少两个连续时刻的备选音高之前,从多个时刻的初始音高中获取出现次数最多的目标音高。
[0118] 第二确定模块505,用于基于目标音高确定音高范围,音高范围包含目标音高。
[0119] 可选的,第二确定模块505,用于:
[0120] 将目标音高减去音高偏差的差值,确定为音高范围的下限;
[0121] 将目标音高与音高偏差之和,确定为音高范围的上限。
[0122] 综上所述,本公开实施例提供了一种音高处理装置,该音高处理装置在对目标音频片段的音高进行时域采样,得到多个时刻的初始音高后,可以从该多个时刻的初始音高中确定处于音高范围内的至少两个连续时刻的备选音高,并对处于音高范围内的至少两个连续时刻的备选音高进行处理,得到该多个时刻中每个时刻的修正音高。由于该音高处理装置是对处于正常音高范围内的备选音高进行处理,得到与初始音高个数相同的多个时刻的修正音高,因此可以在确保最终合成的音频中的音高均处于正常音高范围的同时,确保每个目标音频片段对应的音高的完整性,从而确保最终合成的音频的效果。
[0123] 本公开实施例提供了一种音高处理设备,该音高处理设备可以为图1所示的终端11。该音高处理设备可以包括:存储器,处理器及存储在存储器上的计算机程序,该处理器执行计算机程序时实现上述实施例提供的音高处理方法。
[0124] 本公开实施例提供了一种音高处理设备,该音高处理设备可以为服务器。该音高处理设备可以包括:存储器,处理器及存储在存储器上的计算机程序,该处理器执行计算机程序时实现上述实施例提供的音高处理方法。
[0125] 本公开实施例提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当计算机可读存储介质在计算机上运行时,使得计算机执行上述实施例提供的音高处理方法。
[0126] 以上所述仅为本公开的可选实施例,并不用以限制本公开,凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈