音频数据的生成方法、装置、服务器和智能音箱

文档序号:116968 发布日期:2021-10-19 浏览:23次 >En<

阅读说明:本技术 音频数据的生成方法、装置、服务器和智能音箱 (Audio data generation method and device, server and intelligent loudspeaker box ) 是由 曹元斌 盖于涛 张斌 吴佳伦 于 2020-04-09 设计创作,主要内容包括:本说明书提供了音频数据的生成方法、装置、服务器和智能音箱。在一个实施例中,上述音频数据的生成方法通过利用韵律短语作为划分粒度,将目标文本拆分成与保存有多个预设韵律短语的预设的韵律短语缓存匹配的第一文本数据,以及与预设的韵律短语缓存不匹配的第二文本数据;通过检索预设的音频数据缓存,快速地找到与第一文本数据匹配的第一音频数据,同时针对第二文本数据,单独合成对应的第二音频数据;再拼接上述第一音频数据和第二音频数据,得到完整的目标文本的音频数据,从而可以高效地生成质量相对较高、用户使用体验相对较好的音频数据。(The specification provides an audio data generation method, an audio data generation device, a server and an intelligent loudspeaker box. In one embodiment, the audio data generating method splits the target text into first text data matching a preset prosodic phrase cache storing a plurality of preset prosodic phrases and second text data not matching the preset prosodic phrase cache by using the prosodic phrases as a division granularity; searching preset audio data cache, quickly finding out first audio data matched with the first text data, and simultaneously independently synthesizing corresponding second audio data aiming at the second text data; and splicing the first audio data and the second audio data to obtain the audio data of the complete target text, so that the audio data with relatively high quality and relatively good user experience can be efficiently generated.)

音频数据的生成方法、装置、服务器和智能音箱

技术领域

本说明书属于互联网技术领域,尤其涉及音频数据的生成方法、装置、服务器和智能音箱。

背景技术

在许多交互场景中,常常需要合成相应的音频数据,播放给用户。随着技术的发展,用户对于音频数据的合成有了越来越高的要求。

目前,亟需一种能够高效地生成质量相对较高、用户使用体验相对较好的音频数据的方法。

发明内容

本说明书提供了一种音频数据的生成方法、装置、服务器和智能音箱,以便能高效地生成质量相对较高、用户使用体验相对较好的音频数据。

本说明书提供的一种音频数据的生成方法、装置、服务器和智能音箱是这样实现的:

一种音频数据的生成方法,包括:获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息;确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据;其中,所述预设的韵律短语缓存中保存有多个预设韵律短语;在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设的韵律短语缓存不匹配的文本数据;从所述预设的音频数据缓存中检索到与第一文本数据匹配的预设音频数据作为第一音频数据,其中,所述预设的音频数据缓存中保存有与预设韵律短语对应的预设音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据;拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据。

一种音频数据的生成方法,包括:获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息;根据所述标签信息,确定所述预处理后的目标文本中是否存在与预设韵律短语匹配的第一文本数据;在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设韵律短语不匹配的文本数据;从多个预设音频数据中检索出与第一文本数据匹配的预设音频数据作为第一音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据;拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据。

一种音频数据的生成方法,包括:获取目标文本;将所述目标文本拆分成多个韵律短语;检索预设的音频数据库,确定出与多个韵律短语分别匹配的多个预设音频数据,其中,所述预设的音频数据库中保存有与韵律短语对应的预设音频数据;根据所述多个预设音频数据,得到所述目标文本的音频数据。

一种音频数据的生成装置,包括:获取模块,用于获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息;第一确定模块,用于确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据;其中,所述预设的韵律短语缓存中保存有多个预设韵律短语;拆分模块,用于在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设的韵律短语缓存不匹配的文本数据;第二确定模块,用于从所述预设的音频数据缓存中检索到与第一文本数据匹配的预设音频数据作为第一音频数据,其中,所述预设的音频数据缓存中保存有与预设韵律短语对应的预设音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据;拼接模块,用于拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据。

一种服务器,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息;确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据;其中,所述预设的韵律短语缓存中保存有多个预设韵律短语;在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设的韵律短语缓存不匹配的文本数据;从所述预设的音频数据缓存中检索到与第一文本数据匹配的预设音频数据作为第一音频数据,其中,所述预设的音频数据缓存中保存有与预设韵律短语对应的预设音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据;拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据。

一种智能音箱,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息;确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据;其中,所述预设的韵律短语缓存中保存有多个预设韵律短语;在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设的韵律短语缓存不匹配的文本数据;从所述预设的音频数据缓存中检索到与第一文本数据匹配的预设音频数据作为第一音频数据,其中,所述预设的音频数据缓存中保存有与预设韵律短语对应的预设音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据;拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据。

一种终端设备,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息;确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据;其中,所述预设的韵律短语缓存中保存有多个预设韵律短语;在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设的韵律短语缓存不匹配的文本数据;从所述预设的音频数据缓存中检索到与第一文本数据匹配的预设音频数据作为第一音频数据,其中,所述预设的音频数据缓存中保存有与预设韵律短语对应的预设音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据;拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据,其中,所述终端设备包括:客服机器人、语音助理设备、影视配音设备。

一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息;确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据;其中,所述预设的韵律短语缓存中保存有多个预设韵律短语;在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设的韵律短语缓存不匹配的文本数据;从所述预设的音频数据缓存中检索到与第一文本数据匹配的预设音频数据作为第一音频数据,其中,所述预设的音频数据缓存中保存有与预设韵律短语对应的预设音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据;拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据。

本说明书提供的音频数据的生成方法、装置、服务器和智能音箱,通过利用韵律短语作为划分粒度,将目标文本拆分成与保存有多个预设韵律短语的预设的韵律短语缓存匹配的第一文本数据,以及与预设的韵律短语缓存不匹配的第二文本数据;通过检索保存有与预设韵律短语对应的音频数据的预设的音频数据缓存,快速地找到与第一文本数据匹配的第一音频数据,同时针对第二文本数据,单独合成对应的第二音频数据;再拼接上述第一音频数据和第二音频数据,得到完整的目标文本的音频数据,从而可以高效地生成质量相对较高、用户使用体验相对较好的音频数据。

附图说明

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

图1是应用本说明书实施例提供的音频数据的生成方法的系统结构组成的一个实施例的示意图;

图2是在一个场景示例中,应用本说明书实施例提供的音频数据的生成方法的一种实施例的示意图;

图3是在一个场景示例中,应用本说明书实施例提供的音频数据的生成方法的一种实施例的示意图;

图4是在一个场景示例中,应用本说明书实施例提供的音频数据的生成方法的一种实施例的示意图;

图5是在一个场景示例中,应用本说明书实施例提供的音频数据的生成方法的一种实施例的示意图;

图6是本说明书的一个实施例提供的音频数据的生成方法的流程示意图;

图7是本说明书的一个实施例提供的音频数据的生成方法的流程示意图;

图8是本说明书的一个实施例提供的音频数据的生成方法的流程示意图;

图9是本说明书的一个实施例提供的服务器的结构组成示意图;

图10是本说明书的一个实施例提供的音频数据的生成装置的结构组成示意图。

具体实施方式

为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。

本说明书实施例提供一种音频数据的生成方法,所述音频数据的生成方法具体可以应用于包含有服务器和终端设备的系统中。可以参阅图1所示。服务器和终端设备可以通过有线或无线的方式相连。

具体的,终端设备具体可以用于响应用户请求,获取待生成音频数据的目标文本;向服务器发送音频数据生成请求,其中,所述音频数据生成请求中携带有目标文本。服务器具体可以用于接收音频数据生成请求,获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息;确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据;其中,所述预设的韵律短语缓存中保存有多个预设韵律短语;在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设的韵律短语缓存不匹配的文本数据;从所述预设的音频数据缓存中检索到与第一文本数据匹配的预设音频数据作为第一音频数据,其中,所述预设的音频数据缓存中保存有与预设韵律短语对应的预设音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据;拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据;将所述目标文本的音频数据发送至终端设备。终端设备具体还可以用于接收服务器反馈的目标文本的音频数据,并向用户播放目标文本的音频数据。

在本实施例中,所述服务器具体可以包括一种应用于数据处理平台一侧,能够实现数据传输、数据处理等功能的后台负责数据处理的服务器。具体的,所述服务器例如可以为一个具有数据运算、存储功能以及网络交互功能的电子设备。或者,所述服务器也可以为运行于该电子设备中,为数据处理、存储和网络交互提供支持的软件程序。在本实施例中,并不具体限定所述服务器的数量。所述服务器具体可以为一个服务器,也可以为几个服务器,或者,由若干服务器形成的服务器集群。

在本实施例中,所述终端设备具体可以包括一种应用于用户一侧,能够实现数据采集、数据传输等功能的前端设备。具体的,所述客户端例如可以为台式电脑、平板电脑、笔记本电脑、智能手机、数字助理、智能可穿戴设备、智能音箱、智能电视、客服机器人、影视配音设备等。或者,所述客户端也可以为能够运行于上述电子设备中的软件应用。例如,可以是在手机上运行的某APP等。

在一个具体的场景示例中,参阅图2所示,用户A可以使用应用了本说明书实施例提供的音频数据的生成方法的智能音箱,获得更好的交互体验。

在本场景示例中,用户A的家中布设有智能音箱,该智能音箱通过网络与系统服务平台的负责音频数据合成的服务器相连。

当用户A想要查询今天的天气时,可以通过向智能音箱提问,发出以下语音指令:“天猫精灵,今天天气?”。智能音箱接收并响应上述语音指令,并对上述语音指令进行语义识别,确定出用户A的提出的问题是今天天气。进一步,智能音箱可以根据上述问题,通过在线查询,获取今天的天气数据。再根据上述天气数据,生成要反馈给用户的文本数据,例如:“今天天气晴主人适合外出享受阳光”,作为目标文本。

在确定出上述目标文本后,智能音箱可以根据目标文本,获取对应的音频数据,再通过播放音频数据的方式答复用户A的提问。

在本场景示例中,上述智能音箱可以针对该目标文本生成音频数据生成请求,并将该音频数据生成请求,连同目标文本一同发送至服务器,以请求服务器生成该目标文本的音频数据。

参阅图3所示,服务器在接收该音频数据生成请求,以及对应的目标文本后,可以先对目标文本进行预处理(也可以称为前端处理)。具体的,服务器可以对该目标文本进行初步的分析处理,初步确定出目标文本中文本数据的属性特征;并进行标记,设置对应的标签(例如,label等)。

例如,服务器可以根据预设的韵律短语标记规则,对目标文本中的各个具体的文本数据分别进行分析,粗略地识别并确定出目标文本中的韵律短语,并设置对应的韵律短语标记。

其中,上述韵律短语具体可以理解为一种基于人们的说话习惯,以及说话时发音的韵律特点划分得到的数据结构。具体的,上述韵律短语是一种介于韵律词和语调短语之间的中等节奏组合的数据结构。

可以参阅图4所示,一个韵律短语通常可以包含有韵律词,以及语气词等相对更小的数据结构。以语调短语“使用程序节省了时间且提高了数据的准确性”为例,根据人们的说话习惯,以及说话时发音的韵律特点可以拆分成两个韵律短语分别为“使用程序节省了时间”、“且提高了数据的准确性”。但韵律短语本身并不是最小数据结构。韵律短语又包含了多个韵律词等相对更小的数据结构。以韵律短语“使用程序接受了时间”为例,该韵律短语进一步又可以分别拆分成多个韵律词,分别为:“使”、“用”、“程序”、“节省了”、“时间”。其中,一些韵律词还可以进一步拆分成相对韵律词更小的数据结构。例如,上述韵律词“节省了”进一步可以拆分成多个字节,分别为:“节”、“省”、“了”。

需要指出的是,在本场景示例中,以韵律短语作为划分粒度单位,除了能够更符合人们的说话习惯,把握住人们说话时发音的韵律、节奏特点外;相对于其他的数据结构,后续具体应用时还具有较好的覆盖率和较高的命中率,后续使用时具有相对更好的效果。

在对目标文本进行预处理时,服务器还可以根据预设的音频规则对目标文本中的各个具体的文本数据的音频特征进行粗略的识别确定,并设置对应的标记。例如,根据预设的音频规则,确定目标文本中各个字符所对应的音素数据,进而在目标文本中标记出各个字符所对应的音素信息标记。又例如,根据预设的音频规则,检索目标文本找到人们说话发音时需要停顿的位置,标记上停顿标记。类似的,还可以根据预设的音频规则,检索目标文本找到人们说话发音时需要读重音的位置,标记上重音标记;找到需要读轻音的位置,标记上轻音标记,从而完成对目标文本轻重音标记的设置等。

当然,需要说明的是,上述所列举的对目标文本的预处理方式只是一种示意性说明。具体实施时,根据具体的应用场景和处理需要,还可以引入其他类型的处理方式,对目标文本进行相应的预处理。对此,本说明书不作限定。

通过上述预处理,可以得到对应的预处理后的目标文本。其中,上述预处理后的目标文本也可以称为一种结构化文本,并且还携带有相应的标签信息。具体的,上述标签信息可以包括:韵律短语标记、音素信息标记、停顿标记、轻重音标记等等。当然,上述所列举的标签信息只是一种示意性说明。具体实施时,根据所采用的预处理方式,上述标签信息中还可以包含有其他与所采用的预处理方式对应的标记。对此,本说明书不作限定。

在本场景示例中,服务器在按照上述方式得到了预处理后的目标文本后,参阅图3所示,可以根据标签信息,检索预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据。

其中,上述预设的韵律短语缓存具体可以包括一种用于保存预设韵律短语的数据缓存。上述预设韵律短语具体可以包括在一段时间内服务器在合成音频数据的过程中出现频率较高的韵律短语。例如,最近一周服务器合成音频数据过程中出现频率排序前十的十个韵律短语。需要说明的是,这里将预设韵律短语保存在缓存中,可以方便后续进行查询、检索等处理操作,有助于提高整体的数据处理效率。

上述与预设的韵律短语缓存匹配具体可以理解为与预设的韵律短语缓存所保存的某个预设韵律短语相同或相近。上述第一文本数据具体可以理解为目标文本中的包含有与预设的韵律短语缓存匹配的韵律短语的那部分文本数据。

具体实施时,服务器可以根据预处理后的目标文本所携带的标签信息,例如,韵律短语标记,将预处理后的目标文本拆分成多个目标韵律短语。例如,可以根据标签信息,将预处理后的目标文本“今天天气晴主人适合外出享受阳光”拆分成以下三个目标韵律短语“今天天气晴”、“主人”、“适合外出享受阳光”。

在将预处理后的目标文本拆分成多个目标韵律短语的过程中,考虑到所确定的韵律短语标记是通过相对较为粗略方式识别确定出的。为了进一步提高拆分目标韵律短语的准确度,具体实施时,服务器还可以以所述标签信息作为参考,采用其他更加精细的确定方式重新确定出预处理后的目标文本中的韵律短语,并作拆分。

具体的,服务器可以先对预处理后的目标文本进行分词处理,将预处理后的目标文本拆分成多个分词;再对上述多个分词进行韵律预测,得到多个分词中的各个分词的韵律预测结果;进一步可以根据各个分词的韵律预测结果,利用上述多个分词,构建得到相应的多个韵律短语,作为从预处理后的目标文本中拆分出的多个目标韵律短语。

在构建得到相应的多个韵律短语后,进一步,服务器还可以结合之前确定出标签信息,再对上述构建得到的多个韵律短语进行校验和调整,将调整后的多个韵律短语确定为从预处理后的目标文本中拆分出的多个目标韵律短语,从而可以进一步提高所确定出的目标韵律短语的准确度。

进一步,服务器分别计算上述多个目标韵律短语中的各个目标韵律短语与预设的韵律短语缓存中的预设韵律短语之间的近似度。再通过比较所确定出的目标韵律短语与预设韵律短语之间的近似度,和预设的近似度阈值之间的数值大小,确定多个目标韵律短语中是否存在目标韵律短语与预设韵律短语之间的近似度大于或等于预设的近似度阈值的目标韵律短语,即,确定出所述多个目标韵律短语中是否存在近似度符合预设要求的目标韵律短语。在确定多个目标韵律短语中至少存在一个目标韵律短语与预设的韵律短语缓存中的预设韵律短语的近似度符合预设要求的情况下,可以确定上述预处理后的目标文本中存在目标韵律短语与预设的韵律短语缓存匹配,并将预处理后的目标文本中的与预设韵律短语的近似度符合预设要求的目标韵律短语所对应的那部分文本数据,确定为所述第一文本数据。相对的,服务器可以将预处理后的目标文本中的与预设韵律短语的近似度不符合预设要求的目标韵律短语所对应的那部分文本数据,确定为第二文本数据。其中,上述第二文本数据具体可以理解为目标文本中的包含有与预设的韵律短语缓存不匹配的韵律短语的那部分文本数据。

在本场景示例中,服务器根据近似度,确定出目标短语“今天天气晴”、“主人”与预设的韵律短语缓存匹配,而目标短语“适合外出享受阳光”与预设的韵律短语缓存不匹配。进而可以将预处理后的目标文本中的“今天天气晴主人”这部分文本数据确定为第一文本数据,将预处理后的目标文本中的“适合外出享受阳光”这部分文本数据确定为第二文本数据。从而可以将预处理后的目标文本拆分成第一文本数据和第二文本数据两部分。

针对上述两种不同的文本数据,服务器可以采用不同的方式生成对应的音频数据。

具体的,针对第一文本数据,参阅图3所示,由于第一文本数据所包含的是预设的韵律短语缓存匹配的目标韵律短语,因此,可以根据第一文本数据中的韵律短语检索预设的音频数据缓存,直接从预设的音频数据缓存中找到匹配的预设音频数据,得到针对第一文本数据的第一音频数据。

其中,上述预设的音频数据缓存具体可以包括一种用于保存预设音频数据的数据缓存。上述预设音频数据分别与预设的韵律短语缓存中所保存的预设韵律短语对应。例如,预设的音频数据缓存中所保存的一个预设音频数据为预设的韵律短语缓存中所保存的某一个预设韵律短语的音频数据。需要说明的是,在这里将预设音频数据保存在缓存中,可以方便后续进行查询、检索等处理操作,有助于提高整体的数据处理效率。

上述预设音频数据具体可以包括预先利用预设的语音生成模型根据所对应的预设韵律短语所生成的音频数据。其中,上述预设的语音生成模型具体可以包括端到端的语音生成模型。例如,基于tacotron的端到端模型。通过使用上述基于端到端的语音生成模型来根据韵律短语生成对应的预设音频数据,可以使得所生成的音频数据相对更加自然,更符合人们正常说话时的韵律和节奏,具有相对更高的音频质量。

在本场景示例中,具体实施时,服务器可以通过检索预设的音频数据缓存找到与第一文本数据所包含的两个韵律短语分别匹配对应的音频数据a和音频数据b,进而可以组合并拼接上述音频数据a和音频数据b,得到了针对第一文本数据的第一音频数据。

针对第二文本数据,由于第二文本数据所包含的是预设的韵律短语缓存不匹配的目标韵律短语,无法直接地从预设的音频数据缓存找到预先就已经生成好的音频数据直接使用,因此只能另外进行重新合成与第二文本数据对应的音频数据。

为了提高生成第二文本数据的音频数据的效率,减少处理时间,服务器可以不采用基于端到端的语音生成模型来生成对应的音频数据,而是选择采用基于声学模型来更高效地生成第二文本数据的音频数据。

具体的,参阅图5所示。服务器可以先根据预处理后的目标文本中所携带的标签信息,例如,音素信息标记,检索预设的音库,以从预设的音库中筛选第二文本数据中各个单位文本数据(例如,文本数据中的各个字节)所匹配对应的音素数据。其中,上述预设的音库中包含了多个单位音频数据,以及单位音频数据与单位文本数据之间的对应关系。

同时,服务器还将预处理后的目标文本中的第二文本数据作为模型输入,输入至事先训练好的预设的声学模型中;并运行该预设的声学模型,对预第二文本数据进行相应处理,得到对应模型输出,从而获得与音频数据合成相关的参数数据。

其中,上述预设的声学模型具体包括一种用于确定文本数据中与音频数据合成相关的音频特征的模型。相应的,上述与音频数据合成相关的参数数据具体可以包括频谱特征参数、基频特征参数等等。

进而服务器可以根据上述参数数据,组合并拼接所筛选出的多个音素数据,从而得到了针对第二文本数据的第二音频数据。

在本场景示例中,服务器可以根据标签信息,从预设的音库中找到分别与“适合外出享受阳光”中的各个字节分别匹配的音素数据。并且利用预设的声学模型对上述第二文本数据进行处理,确定出包括基频特征参数、频谱特征参数等的与音频数据合成相关的参数数据。进而可以根据上述参数数据,确定出较优的音素组合方案,再根据所确定出的音素组合方案组合多个音素数据,并作拼接,从而可以得到对应的第二音频数据。

在通过上述方式分别得到第一音频数据和第二音频数据后,服务器可以对上述第一音频数据和第二音频数据进行拼接处理,从而得到了针对目标文本的完整的音频数据。

在完成拼接处理,得到拼接后的音频数据后,为了进一步提高音频数据质量,进一步改善用户在收听音频数据时的用户体验,服务器还可以再对拼接后的音频数据进行平滑处理,将平滑处理后的音频数据作为最终要反馈给智能音箱的目标文本的音频数据。

服务器在得到了目标文本的音频数据后,可以通过网络将该目标文本的音频数据发送给智能音箱。智能音箱接收并向用户A播放该目标文本的音频数据“今天天气晴。主人,适合外出享受阳光!”

通过上述方式生成并向用户A播放的音频数据,效率相对会更高,用户A的等候延迟时间也会相对更短。同时,上述音频数据的生成过程中是以韵律短语作为匹配单位实施的,此外音频数据中的部分音频数据又是通过基于端到端的预设的语音生成模型来生成得到的。因此,通过上述方式得到的音频数据相对的,更符合人们的说话习惯,以及说话时的韵律、节奏等特点,从而使得收听该音频数据的用户A可以获得相对较好的使用体验,感觉智能音箱播放出的语音跟真人说话一样自然,而不是呆板的机器声。

在另一个具体的场景示例中,参阅图3所示,服务器还可以每隔预设的时间间隔(例如,每隔一天)获取该时间间隔内系统的语音合成记录。其中,上述语音合成记录例如可以是用于记录系统在该时间间隔所对应的时间段内合成的音频数据情况的日志文件,具体的,上述语音合成记录中可以记录了有在该时间间隔所对应的时间段内合成的音频数据,以及与该音频数据对应的文本数据。此外,根据上述语音合成记录,还可以统计得到在该时间间隔所对应的时间段内合成各种音频数据的次数,以及其他相关信息。

具体的,服务器可以根据上述语音合成记录,提取得到该时间间隔所对应的时间段内在合成音频数据过程中出现的韵律短语,以及韵律短语的出现频率。进一步,可以找到该时间间隔所对应的时间段内出现频率较高的韵律短语,并利用上述韵律短语对原有的预设的韵律短语缓存进行更新。例如,利用上述韵律短语替换掉预设的韵律短语缓存中所保存在该时间间隔所对应的时间段内出现频率较低的预设韵律短语,得到更新后的预设的韵律短语缓存。

相应的,还可以对预设的音频缓存进行更新。例如,可以根据更新后的韵律短语缓存,对预设的音频缓存所保存的预设音频数据进行更新,替换掉原有的预设音频数据缓存中所保存的在该时间间隔所对应的时间段出现频率较低的预设韵律短语的预设音频数据,从而得到更新后的预设的音频数据缓存。

进而,服务器可以利用上述更新后的预设的韵律短语缓存,以及更新后的预设的音频数据缓存来针对新接收到的目标文本,生成对应的音频数据。

通过上述更新方式,可以使得服务器所使用的预设的韵律短语缓存中所保存的预设韵律短语具有较高的覆盖率和命中率,这样即使随着时间推移,依然能够较高效、较大概率地从预设的韵律短语缓存中找到与当前的目标文本所包含的目标韵律短语匹配的预设韵律短语。此外,通过上述更新方式,可以及时地发现并删除预设的韵律短语缓存,以及预设的音频数据缓存中所保存的出现频率变得不高的预设韵律短语,以及预设音频数据,从而可以有效地避免随着时间累积,由于所保存的预设韵律短语、预设音频数据的增加,导致预设的韵律短语缓存、预设的音频数据缓存变得臃肿,影响具体实施时针对上述预设的韵律短语缓存、预设的音频数据缓存的处理操作效率。

参阅图6所示,本说明书实施例提供了一种音频数据的生成方法,其中,该方法具体应用于服务器一侧。具体实施时,该方法可以包括以下内容。

S601:获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息。

在一些实施例中,上述目标文本具体可以包括待合成相应的音频数据的文本数据。

在一些实施例中,上述预处理具体可以理解为对目标文本进行初步的前端处理。通过上述预处理可以在目标文本中确定并标注出相关的标签信息,得到携带有标签信息的预处理后的目标文本。

在一些实施例中,上述标签信息具体可以包括以下至少之一:韵律短语标记、音素信息标记、停顿标记、轻重音标记等。当然,需要说明的是,上述所列举的标签信息只是一种示意性说明。具体实施时,根据具体情况,还可以引入其他类型的标记作为标签信息。对此,本说明书不作限定。

在一些实施例中,上述预处理具体可以包括以下所列举的处理方式中的一种或多种:确定并在目标文本中标记出韵律短语标记;确定并在目标文本中标记出音素信息标记;确定并在目标文本中标记出停顿标记;确定并在目标文本中标记出轻重音标记等等。当然,上述所列举的预处理只是一种示意性说明。具体实施时,根据具体的场景要求,还可以引入其他合适的处理方式。

在一些实施例中,上述韵律短语具体可以理解为一种基于人们的说话习惯,以及说话时发音的韵律特点划分得到的数据结构。具体的,上述韵律短语是一种介于韵律词和语调短语之间的中等节奏组合的数据结构。需要指出的是,以韵律短语作为划分目标文本的粒度单位,除了能够更符合人们的说话习惯,把握住人们说话时发音的韵律、节奏等特点外;相对于其他的数据结构,后续具体应用时还具有较好的覆盖率和较高的命中率,后续使用时具有相对更好的效果。

S602:确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据;其中,所述预设的韵律短语缓存中保存有多个预设韵律短语。

在一些实施例中,上述预设韵律短语具体可以包括在基于的一段时间内服务器在合成音频数据的过程中出现频率较高的韵律短语。例如,最近一周服务器合成音频数据过程中出现频率排序前十的十个韵律短语。

在一些实施例中,上述预设的韵律短语缓存具体可以包括一种用于保存预设韵律短语的数据缓存。需要说明的是,这里将预设韵律短语以缓存的方式保存在预设的韵律短语缓存中,可以方便后续进行查询、检索等处理操作,有助于提高整体的数据处理效率。当然,根据具体情况,也可以以其他的非缓存的保存方式来保存上述预设韵律短语。

在一些实施例中,上述第一文本数据具体可以理解为目标文本中的包含有与预设的韵律短语缓存匹配的那部分文本数据。相对的,目标文本中除第一文本数据以外的剩余部分文本数据,与预设的韵律短语缓存不匹配,这部分文本数据可以记为第二文本数据。

其中,上述与预设的韵律短语缓存匹配具体可以包括目标文本中的韵律短语与预设的韵律短语缓存中所保存的某一个韵律短语相同,或相近,即与预设的韵律短语缓存中至少一个预设韵律短语之间的近似度符合预设要求,例如,大于或等于预设的近似度阈值。

在一些实施例中,上述确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据,具体实施时,可以包括以下内容:根据所述标签信息,将所述预处理后的目标文本拆分成多个目标韵律短语;计算所述多个目标韵律短语与所述预设的韵律短语缓存中的预设韵律短语之间的近似度;根据所述近似度,确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据。

在一个实施例中,为了能够更加准确地将预处理后的目标文本拆分成多个目标韵律短语,具体实施时,还可以先对预处理后的目标文本进行分词处理,将与处理后的目标文本拆分成多个分词;再对上述多个分词进行韵律预测,得到多个分词中的各个分词的韵律预测结果;根据各个分词的韵律预测结果,利用上述多个分词,构建得到相应的多个韵律短语,作为从预处理后的目标文本中拆分出的多个目标韵律短语。此外,还可以结合标签信息中的韵律短语标记,对上述拆分出的多个目标韵律短语进行校验和调整,从而可以进一步提高所拆分出的目标韵律短语的准确度。

在一些实施例中,上述根据所述近似度,确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据,具体实施时,可以先比较所述近似度和预设的近似度阈值的数值大小,确定所述多个目标韵律短语中是否存在目标韵律短语与预设的韵律短语缓存中的预设韵律短语的近似度符合预设要求。如果确定多个目标韵律短语中至少有一个目标韵律短语与预设韵律短语的近似度符合预设要求,则可以确定预处理后的目标文本中存在与预设的韵律短语缓存匹配的第一文本数据。相反,如果确定多个目标韵律短语中所有的目标韵律短语与预设的韵律短语缓存中所保存的预设韵律短语的近似度都不符合预设要求,则可以确定预处理后的目标文本中不存在与预设的韵律短语缓存匹配的第一文本数据。其中,上述预设的近似度阈值具体可以根据精度要求灵活设置。对此,本说明书不作限定。

具体的,通过逐一比较近似度和预设的近似度阈值,如果确定多个目标韵律短语中至少存在一个目标韵律短语与预设的韵律短语缓存中的至少一个预设韵律短语之间的近似度大于或等于预设的近似度阈值时,可以确定多个目标韵律短语中存在目标韵律短语与预设的韵律短语缓存中的预设韵律短语的近似度符合预设要求,进而可以确定预处理后的目标文本中存在目标韵律短语与预设的韵律短语缓存匹配,并将上述与预设的韵律短语缓存中的预设韵律短语的近似度符合预设要求的目标韵律短语,确定为所述第一文本数据。同时,可以将预处理后的目标文本中除第一文本数据以外的那部分文本数据,即包含有与预设的韵律短语缓存不匹配的目标韵律短语的那部分文本数据确定为第二文本数据。

此外,通过逐一比较近似度和预设的近似度阈值,如果确定预处理后的目标文本中所包含的多个目标韵律短语都与预设的韵律短语缓存匹配。这时,可以将预处理后的目标文本整体确定为第一文本数据。

相对的,通过逐一比较近似度和预设的近似度阈值,如果确定多个目标韵律短语中没有一个目标韵律短语与预设的韵律短语缓存中的至少一个预设韵律短语之间的近似度大于或等于预设的近似度阈值时,可以确定多个目标韵律短语中不存在目标韵律短语与预设的韵律短语缓存中的预设韵律短语的近似度符合预设要求,进而可以确定预处理后的目标文本中不存在目标韵律短语与预设的韵律短语缓存匹配,预处理后的目标文本中不存在第一文本数据。这时,可以将预处理后的目标文本整体确定为第二文本数据。

S603:在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设的韵律短语缓存不匹配的文本数据。

在一些实施例中,如果确定出预处理后的目标文本中同时存在第一文本数据和第二文本数据这两种不同的文本数据,可以进一步将预处理后的目标文本拆分成第一文本数据和第二文本数据两部分。以便后续可以针对不同的文本数据分别采用对应的处理方式进行针对性处理。

S604:从所述预设的音频数据缓存中检索到与第一文本数据匹配的预设音频数据作为第一音频数据,其中,所述预设的音频数据缓存中保存有与预设韵律短语对应的预设音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据。

在一些实施例中,上述预设音频数据具体可以包括预先生成的与预设韵律短语对应的音频数据。

在一些实施例中,上述预设音频数据具体可以是预先利用预设的语音生成模型根据预设韵律短语所生成的音频数据。其中,上述预设的语音生成模型具体可以包括端到端的语音生成模型。例如,基于tacotron的端到端模型。通过使用上述基于端到端的语音生成模型来根据韵律短语生成对应的预设音频数据,可以使得所生成的音频数据相对更加自然,更符合人们正常说话时的韵律和节奏,具有相对更高的音频质量。

在一些实施例中,上述预设的音频数据缓存具体可以包括一种用于保存预设音频数据的数据缓存。需要说明的是,这里将预设音频数据以缓存的方式保存在预设的音频数据缓存中,可以方便后续进行查询、检索等处理操作,有助于提高整体的数据处理效率。当然,根据具体情况,也可以以其他的保存方式来保存上述预设音频缓存。

在一些实施例中,针对第一文本数据,可以不需要重新另外合成对应的音频数据,而是可以根据第一文本数据中所包含的目标韵律短语,检索预设的音频数据缓存,从预设的音频数据缓存中找到与第一文本数据中的目标韵律短语匹配的预设音频数据,进而可以根据所检索到的匹配的预设音频数据,得到针对第一文本数据的第一音频数据。这样可以避免浪费处理资源和处理时间,重新合成针对第一文本数据的音频数据,而是直接找到并使用事先已经通过预设的语音生成模型生成好的预设音频数据,来得到第一音频数据,从而可以有效提高整体的处理效率。此外,由于上述预设音频数据又是通过基于端到端的语音生成模型生成的,因此,基于上述预设音频数据所得到的第一音频数据相对更加自然,更符合人们正常说话时的韵律和节奏,具有相对更高的音频质量。

在一些实施例中,针对第二文本数据,由于预设的音频缓存中没有与第二文本数据匹配的预设音频数据,因此可以针对第二文本数据这部分数据,重新合成对应的音频数据作为第二音频数据。

具体的,可以根据预处理后的目标文本所携带的标签信息,例如,音素信息标记,先从预设的音库中筛选出匹配的音素数据。同时,利用预设的声学模型对所述第二文本数据进行处理,确定出与第二文本数据的音频数据合成相关的参数数据。再根据所述参数数据,组合所述多个音素数据,得到第二音频数据。

在一些实施例中,上述预设的声学模型具体包括一种用于确定文本数据中与音频数据合成相关的音频特征的模型。相应的,上述与音频数据合成相关的参数数据具体可以包括频谱特征参数、基频特征参数等等。上述预设的音库中包含了多个单位音频数据,以及单位音频数据与单位文本数据之间的对应关系。

在一些实施例中,具体实施时,可以将预处理后的目标文本作为模型输入,输入至事先训练好的预设的声学模型中;并运行该预设的声学模型,对预处理后的目标文本进行相应处理,得到模型输出的与音频数据合成相关的参数数据。

在一些实施例中,具体实施时,可以根据上述参数数据确定针对第二文本数据的音素组合方案,再根据上述音素组合方案,组合拼接从预设的音库中筛选出的匹配的音素数据,从而合成得到了针对第二文本数据的第二音频数据。

S605:拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据。

在一些实施例中,具体实施实施,可以将所得到第一音频数据和第二音频数据进行拼接处理,得到一个完整的音频数据,作为目标文本的音频数据。

在一些实施例中,具体实施时,可以先拼接所述第一音频数据和所述第二音频数据,将拼接后的音频数据作为第三音频数据。进一步,再对所述第三音频数据进行平滑处理,得到目标文本的音频数据。这样可以进一步提高所得到的目标文本的音频数据的音频质量,使得收听该音频数据的用户获得相对更好的使用体验。当然,需要说明的是,上述所列举的平滑处理只是一种示意性说明。具体实施时,根据具体情况和用户的具体需求,还可以对上述目标音频数据进行进一步的优化、调整。例如,还可以根据用户的一些个性化设置,在平滑处理后的音频数据中增加一些音效效果,从而可以满足不同用户的多样化要求,进一步提高用户的使用体验。

在本实施例中,通过利用韵律短语作为划分粒度,将目标文本拆分成与保存有多个预设韵律短语的预设的韵律短语缓存匹配的第一文本数据,以及与预设的韵律短语缓存不匹配的第二文本数据;通过检索保存有与预设韵律短语对应的音频数据的预设的音频数据缓存,快速地找到与第一文本数据匹配的第一音频数据,同时针对第二文本数据,单独合成对应的第二音频数据;再拼接上述第一音频数据和第二音频数据,得到完整的目标文本的音频数据,从而可以高效地生成质量相对较高、用户使用体验相对较好的音频数据。

在一些实施例中,所述标签信息具体可以包括以下至少之一:韵律短语标记、音素信息标记、停顿标记、轻重音标记等等。当然,上述所列举的标签信息只是一种示意性说明。具体实施时,根据具体情况和处理需求,还可以引入其他类型的标签信息。对此,本说明书不作限定。

在一些实施例中,上述确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据,具体实施时,还可以包括以下内容:根据所述标签信息,将所述预处理后的目标文本拆分成多个目标韵律短语;计算所述多个目标韵律短语与所述预设的韵律短语缓存中的预设韵律短语之间的近似度;根据所述近似度,确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据。

在一些实施例中,上述根据所述近似度,确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据,具体实施时,可以包括以下内容:通过比较所述近似度和预设的近似度阈值,确定所述多个目标韵律短语中是否存在目标韵律短语与预设的韵律短语缓存中的预设韵律短语的近似度符合预设要求;在确定所述多个目标韵律短语中存在目标韵律短语与预设的韵律短语缓存中的预设韵律短语的近似度符合预设要求的情况下,确定所述预处理后的目标文本中存在目标韵律短语与预设的韵律短语缓存匹配,并将所述多个目标韵律短语中与预设的韵律短语缓存匹配的目标韵律短语,确定为所述第一文本数据。

在一些实施例中,所述多个预设韵律短语具体可以包括在第一预设时间段内出现频率大于预设的频率阈值的韵律短语。其中,上述第一预设时间段具体可以理解为具体实施之前的一个时间段,例如,具体实施之前的最近一周,或者前一天等。

在一些实施例中,上述多个预设韵律短语具体可以包括在第一预设时间段内合成音频数据过程中出现频率排序靠前的预设个数个韵律短语。例如,在最近一周合成音频数据过程中出现频率排序前十的十个韵律短语。当然,需要说明的是,上述多个预设韵律短语的个数具体可以根据服务器的数据处理能力,缓存的存储空间大小等因素灵活设置。对此,本说明书不做限定。

在一些实施例中,具体实施之前,可以通过对第一预设时间段内合成音频数据过程中涉及到的韵律短语的出现频率进行统计,确定出多个预设韵律短语,并进行缓存,来构建上述预设的韵律短语缓存。

在一些实施例中,所述预设的韵律短语缓存具体可以按照以下方式生成:获取第一语音合成记录,其中,所述第一语音合成记录中记录了在第一预设时间段内合成的历史音频数据,以及与所述历史音频数据对应的历史文本数据;从所述历史文本数据中提取出多个历史韵律短语;根据所述第一语音合成记录,统计所述多个历史韵律短语在第一预设时间段内合成历史音频数据过程中的出现频率;将出现频率大于预设的频率阈值的历史韵律短语,确定为预设韵律短语,并缓存所述预设韵律短语,得到所述预设的韵律短语缓存。

在一些实施例中,上述第一语音合成记录具体可以理解为一种用于记录第一预设时间段内合成的音频数据情况的日志文件,具体的,上述第一语音合成记录中记录了在第一预设时间段内合成的历史音频数据,以及与所述历史音频数据对应的历史文本数据。此外,根据上述第一语音合成记录,还可以统计得到在第一预设时间段内合成各种历史音频数据的次数,以及其他相关信息。

在一些实施例中,从所述历史文本数据中提取出多个历史韵律短语,具体实施时,可以包括以下内容:从所述历史文本数据中提取出多个语句文本数据;对所述多个语句文本数据进行分词处理,得到多个分词;对所述多个分词分别进行韵律预测,得到多个分词的韵律预测结果;根据韵律预测结果,和所述多个分词,构建出多个历史韵律短语。

在本实施例中,上述语句文本数据具体可以理解为一种比韵律短语更大的数据结构,例如,query等语句结构。需要说明的是,这里在提取出语句文本数据后,不是缓存语句文本数据,而是对所提取出的语句文本数据进一步拆分成更小的韵律短语,进行后续处理,再作缓存。这是考虑到,相对于语句文本数据,韵律短语具有更高的覆盖率和命中率。这样后续在具体实施时,更容易匹配成功,便于从目标文本中拆分出第一文本数据。

在一些实施例中,具体实施时,可以先根据所述第一语音合成记录,统计所述多个历史韵律短语在第一预设时间段内合成历史音频数据过程中的出现频率。再从多个历史韵律短语中将出现频率大于预设的频率阈值(例如12%)的历史韵律短语筛选出来,确定为预设韵律短语。此外,也可以根据各个历史韵律短语的出现频率的数值大小,按照从大到小的顺序进行排序,选择排序靠前的预设个数个历史韵律短语,作为预设韵律短语等。

在一些实施例中,具体实施时,可以将所确定出的预设韵律短语以缓存的方式保存在相应的数据缓存中,得到所述预设的韵律短语缓存。需要说明的是,这里将预设韵律短语以缓存的方式保存在预设的韵律短语缓存中,可以便于后续进行查询、匹配等处理操作,提高处理效率。当然,根据具体情况,也可以采用其他合适的方式来保存预设韵律短语。例如,还可以将所确定出预设韵律短语保存在服务器的数据库中,以建立对应的预设的韵律短语数据库,进而可以利用上述预设的韵律短语数据库来替代预设的韵律短语缓存来生成目标文本的音频数据。

在一些实施例中,所述预设的音频数据缓存具体可以按照以下方式获取:获取所述预设的韵律短语缓存中所保存的多个预设韵律短语;利用预设的语音生成模型,生成并缓存与所述多个预设韵律短语分别对应的多个音频数据利用预设的语音生成模型,生成并缓存与所述多个预设韵律短语分别对应的多个预设音频数据,以获得所述预设的音频数据缓存。

在一些实施例中,上述预设的语音生成模型具体可以理解为一种直接根据文本数据合成对应的音频数据的处理模型。具体的,上述预设的语音生成模型可以包括端到端的语音生成模型。例如,可以包括基于tacotron的端到端模型等。通过使用上述基于端到端的语音生成模型来根据韵律短语生成对应的预设音频数据,可以使得所生成的音频数据相对更加自然,更符合人们正常说话时的韵律和节奏,具有相对更高的音频质量。

在一些实施例中,具体实施时,可以将预设韵律短语作为一种模型输入,输入至预设的语音生成模型中,并运行该模型,得到对应的模型输出,即与该预设韵律短语对应的预设音频数据。

在一些实施例中,可以将所确定出的预设音频数据以缓存的方式保存在相应的数据缓存中,得到所述预设的音频数据缓存。需要说明的是,这里将预设音频数据以缓存的方式保存在预设的音频数据缓存中,可以便于后续进行查询、匹配等处理操作,提高处理效率。当然,根据具体情况,也可以采用其他合适的方式来保存预设音频数据。例如,还可以将所确定出预设音频数据保存在服务器的数据库中,以建立对应的预设的音频数据的数据库,进而可以利用上述预设的音频数据的数据库来替代预设的音频数据缓存来生成目标文本的音频数据。

在一些实施例中,所述预设的语音生成模型具体可以按照以下方式建立:获取样本音频数据和与样本音频数据对应的样本文本数据,作为样本数据;标注所述样本数据,得到标注后的样本数据;建立基于tacotron的模型作为初始模型;利用所述标注后的样本数据训练所述初始模型,得到预设的语音生成模型。

在一些实施例中,上述基于tacotron的模型所采用的结构为基于encoder-decoder的Seq2Seq的结构,其中还可以引入注意机制(attention mechanism)。通过该模型可以将文本转化为语音。

在一些实施例中,上述样本数据可以通过从第一语音合成记录提取历史音频数据和对应的历史文本数据获得。当然,也可以采用其他合适的方式获取上述样本数据。对此,本说明书不作限定。

在一些实施例中,上述标注所述样本数据,具体实施时,可以包括:在样本数据中,标注出样本音频数据中的音频特征、频谱特征等特征,得到标注后的样本数据。当然,根据具体情况和处理需要,还可以采用其他合适的方式对样本数据进行标注。

在一些实施例中,具体实施时,可以从所述预设的音频数据缓存中检索到与第一文本数据匹配的预设音频数据作为第一音频数据。其中,上述第一音频数据具体可以包括针对第一文本数据的音频数据。

在一些实施例中,具体实施时,针对第一文本数据可以不用临时另外去重新合成对应的银牌数据。而是可以根据第一文本数据中所包含的与预设韵律短语匹配的目标韵律短语,检索预设的音频缓存找到事先已经生成好的预设音频数据,再根据所找到的预设音频数据得到对应的第一音频数据。例如,可以通过对所找到的预设音频数据进行相应的组合拼接等处理,得到对应的第一音频数据。

在一些实施例中,上述根据所述第二文本数据,合成对应的音频数据作为第二音频数据,具体实施时,可以包括以下内容:根据所述标签信息,从预设的音库中筛选出匹配的音素数据;利用预设的声学模型对所述第二文本数据进行处理,确定出与第二文本数据的音频数据合成相关的参数数据;根据所述参数数据,组合所述多个音素数据,得到第二音频数据。

在一些实施例中,上述预设的声学模型具体包括一种用于确定文本数据中与音频数据合成相关的音频特征的模型。上述与音频数据合成相关的参数数据具体可以包括频谱特征参数、基频特征参数等等。上述预设的音库中包含了多个单位音频数据,以及单位音频数据与单位文本数据之间的对应关系。上述第二音频数据具体包括针对第二文本数据的音频数据。

在一些实施例中,具体实施时,可以根据预处理后的目标文本所携带的标签信息中的音素信息标记,检索预设的音库,找到与第二文本数据中的各个单位文本数据所匹配对应的音素数据。

在一些实施例中,具体实施时,可以将预处理后的目标文本中的第二文本数据作为模型输入,输入至事先训练好的预设的声学模型中;并运行该预设的声学模型,对预第二文本数据进行相应处理,得到对应模型输出,从而获得与音频数据合成相关的参数数据。

在一些实施例中,具体实施时,可以根据上述与音频数据合成相关的参数数据,确定出针对第二文本数据的音素组合方案;再根据上述音素组合方案,组合拼接检索到的匹配的音素数据,从而得到第二文本数据的第二音频数据。

在一些实施例中,上述声学模型具体可以按照以下方式获取:获取样本音频数据和,与样本音频数据对应的样本文本数据作为样本数据;标注所述样本数据,得到标注后的样本数据;对所述标注后的样本数据进行特征提取,得到所述样本数据的音频特征,其中,所述音频特征包括:频谱特征和/基频特征;根据所述标注后的样本数据,和所述样本数据的音频特征,进行模型训练,得到所述声学模型;其中,所述声学模型用于对文本数据进行处理,以确定出用于指示与文本数据所对应的音频数据中的基频特征、频谱特征等音频特征的参数数据。

其中,上述样本数据具体也可以通过从第一合成记录等历史记录数据中获取得到。

在一些实施例中,上述预设的音库具体可以按照以下方式获取:获取并标注样本数据;将标注后的样本数据中的样本音频拆分成多个音素数据;利用所述声学模型对标注后的样本数据进行处理,以确定出多个音素数据中的各个音素数据与音频特征的对应关系,建立得到预设的音库。

在一些实施例中,上述拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据,具体实施时,可以包括:拼接所述第一音频数据和所述第二音频数据,得到第三音频数据;对所述第三音频数据进行平滑处理,得到目标文本的音频数据。这样可以对拼接后的音频数据进行优化调整,进一步提高目标文本的音频数据的音频质量。当然,具体实施时,根据具体情况和用户要求,还可以采用其他的合适的方式对拼接后的音频数据进行进一步的优化调整。对此,本说明书不作限定。

在一些实施例中,在根据所述标签信息,在确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据后,所述方法具体实施时,还可以包括以下内容:在确定所述预处理后的目标文本中存在第一文本数据,且不存在第二文本数据的情况下,从所述预设的音频数据缓存中检索到与所述预处理后的目标文本匹配的预设音频数据,以得到目标文本的音频数据。

在本实施例中,在确定所述预处理后的目标文本中存在第一文本数据,且不存在第二文本数据的情况下,可以判断目标文本所包含的目标韵律短语都是与预设韵律短语匹配的,在这种情况下,可以不用再另外重新合成新的音频数据,而可以直接根据预处理后的目标文本中所包含的目标短语检索预设的音频数据缓存,找到匹配的预设音频数据;再根据上述预设音频数据,得到目标文本的音频数据。这样由于可以直接利用预设的音频数据缓存中事先已经生成好的预设音频数据,不需要再另外重新合成新的音频数据,可以快速地得到目标文本的音频数据,降低了用户的等候时长。

在一些实施例中,在根据所述标签信息,在确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据后,所述方法具体实施时,还可以包括以下内容:在确定所述预处理后的目标文本中存在第二文本数据,且不存在第一文本数据的情况下,根据所述预处理后的目标文本,合成对应的音频数据,作为目标文本的音频数据。

在一些实施例中,在拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据后,所述方法具体实施时,还可以包括以下内容:获取第二语音合成记录,其中,所述第二语音合成记录中记录了在第二预设时间段内合成的历史音频数据,以及与所述历史音频数据对应的历史文本数据;根据所述第二语音合成记录,对预设的韵律短语缓存所保存的多个预设韵律短语中在第二预设时间段内出现频率不符合保留要求的预设韵律短语进行替换处理,得到更新后的预设的韵律短语缓存;根据所述更新后的预设的韵律短语缓存,更新所述预设的音频数据缓存。

在本实施例中,上述第二预设时间段具体可以理解为具体实施之后的一个时间段。例如,可以是生成目标文本的音频数据之后的一周,或一天等。

在一些实施例中,上述第二语音合成记录具体可以理解为一种用于记录第二预设时间段内合成的音频数据情况的日志文件,具体的,上述第二语音合成记录中记录了在第二预设时间段内合成的历史音频数据,以及与所述历史音频数据对应的历史文本数据。此外,根据上述第二语音合成记录,还可以统计得到在第一预设时间段内合成各种历史音频数据的次数,以及其他相关信息。

在本实施例中,具体实施时,可以先根据所述第二语音合成记录,统计所述多个历史韵律短语在第二预设时间段内合成历史音频数据过程中的出现频率。再根据上述出现频率找到在第二时间段出现频率大于预设的频率阈值,或出现频率排序靠前的预设个数的历史韵律短语,作为更新数据。再将上述更新数据,与之前基于第一语音合成记录所确定的保存在预设的韵律短语缓存中的预设韵律短语进行比较,在预设的韵律短语缓存所包含的预设韵律短语中找到更新数据不包含的预设韵律短语作为在第二预设时间段内出现频率不符合保留要求的预设韵律短语;同时,将更新数据中预设的韵律短语缓存中所没有包含的韵律短语作为新增的预设韵律短语。进一步,可以利用上述新增的预设韵律短语作为新的预设韵律短语保存在预设的韵律短语缓存中;同时,从预设的韵律短语缓存中删除不符合保留要求的预设韵律短语,完成对不符合保留要求的预设韵律短语进行替换处理,得到更新后的预设的韵律短语缓存。这样可以使得预设的韵律短语缓存所保存的预设韵律短语始终是最近一段时间出现频率较高的韵律短语,即使随着时间的推移,利用预设的韵律短语缓存中所保存的预设韵律短语仍然具有较高的覆盖率和命中率。此外,通过上述方式还可以及时发现并删除预设的韵律短语缓存中出现频率变得不高的预设韵律短语,有针对性地减少了预设的韵律短语缓存中所保存的预设韵律短语的数量,避免出现预设的韵律短语缓存臃肿,影响处理效率的情况。

在一些实施例中,在得到更新后的预设的韵律短语缓存后,相应的,还可以根据所述更新后的预设的韵律短语缓存,利用预设的语音生成模型根据新增的预设韵律短语生成对应的新增的预设音频数据,并利用新增的预设音频数据来替换预设的音频数据缓存中的与不符合保留要求的预设韵律短语所对应的预设音频数据,从而可以实现对预设的音频数据缓存的更新,得到更新后的预设的音频数据缓存。

在一些实施例中,具体实施时,可以每隔预设的时间间隔(例如,每隔两天)按照上述方式对预设的韵律短语缓存和预设的音频数据缓存进行更新,得到更新后的预设的韵律短语缓存和更新好的预设音频数据缓存;再利用更新后的预设韵律短语缓存和更新后的预设的音频数据缓存来针对当前的目标文本,生成对应的音频数据。从而可以使得针对当前的目标文本,可以快速、准确地生成音频质量较高、用户体验较好的音频数据。

在一些实施例中,所述预设的韵律短语缓存具体可以包括多个不同的预设的韵律短语缓存。其中,所述预设的韵律短语缓存分别可以与一种应用场景对应。

在一些实施例中,所述应用场景具体可以包括:家庭场景、购物场景、导航场景、学习场景、客服场景、影视配音场景等多种不同类型的应用场景。

在一些实施例中,上述多个应用场景中的各个应用场景进一步还可以细分成更加具体的子应用场景。例如,针对家庭场景又可以包括以下子应用场景:天气咨询子场景、健康咨询子场景和食谱推荐子场景等等。当然,上述所列举的应用场景只是一种示意性说明。具体实施时,根据具体情况,还可以包含有其他类型的应用场景。对此,本说明书不作限定。

在一些实施例中,考虑到针对不同类型的应用场景,所涉及到的音频数据往往会存在较大的差异。例如,在家庭场景中,所需要合成的音频数据大多都是文本内容与家庭的日常生活相关的音频数据。而在购物场景中,所需要合成的音频数据大多都是文本内容与商品推荐、价格优惠等相关的音频数据。

在一些实施例中,为了使得所建立的预设的韵律短语缓存中所保存的预设韵律短语具有更好的针对性和覆盖度。具体实施时,可以预先建立分别对应多个不同应用场景的多个预设的韵律短语缓存。

在一些实施例中,具体实施时,在获取第一语音合成记录后,可以先根据历史音频数据所对应的应用场景,将第一语音合成记录中的历史音频数据拆分成对应多个不同应用场景的多组历史音频数据,其中,每组历史音频数据对应一种应用场景。进一步,可以对多组历史音频数据分别记性处理,以及建立得到多个分别对应不同应用场景的预设的韵律短语缓存。例如,可以预先建立对应家庭场景的1号预设的韵律短语缓存、对应购物场景的2号预设的韵律短语缓存,以及对应客服场景的3号预设的韵律短语缓存等等。

在一些实施例中,具体实施时,还可以支持用户自定义场景,根据用户的指示有针对性采集与用户的自定义场景匹配的历史音频数据来构建对应用户自定义场景的预设的韵律短语缓存。从而可以满足用户多样化的个性需求,进一步提高用户的使用体验。

在一些实施例中,在确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据之前,所述方法具体实施时,还可以包括以下内容:获取所述目标文本的关联信息;根据所述目标文本的关联信息,确定所述目标文本所对应的应用场景;根据所述目标文本所对应的应用场景,从多个预设的韵律短语缓存中筛选出匹配的预设的韵律短语缓存。

在一些实施例中,上述关联信息具体可以包括以下至少之一:获取目标文本的时间、获取目标文本的地点、目标文本中的关键词等等。当然,上述所列举的关联信息只是一种示意性说明。具体实施时,根据所对应的具体的应用场景,上述关联信息还可以包含有其他能够指示所对应的应用场景的数据。

在一些实施例中,具体实施时,可以根据目标文本的关联信息确定出目标文本所对应的应用场景。进而可以从多个预设的韵律短语缓存中筛选出与目标文本所对应的应用场景相同或近似度最高的预设的韵律短语缓存,来参与后续的数据处理,生成目标文本的音频数据。通过上述方式确定出并使用的预设的韵律短语缓存往往针对性更好,对该目标文本所对应的应用场景的覆盖性更高,更加匹配目标文本,进而基于该预设的韵律短语缓存,可以较为高效地生成得到质量相对更高、用户体验相对更好的音频数据。

在一些实施例中,在拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据后,所述方法具体实施时,还可以包括以下内容:获取用户针对所述目标文本的音频数据的反馈信息;根据所述反馈信息,对预设的语音生成模型,和/或,预设的声学模型进行调整。

在一些实施例中,具体实施时,可以通过终端设备采集用户在收听完目标文本的音频数据后的给出的评价或评分等作为反馈信息。

其中,所述反馈信息中具体可以包括有正向反馈和负向反馈。具体实施时,可以从反馈信息中筛选出负向反馈,再根据该负向反馈获取与该负向反馈所对应的目标文本的音频数据。进一步,可以根据该负向反馈,以及该负向反馈所对应的目标文本的音频数据,单独对预设的语音生成模型,或者预设的声学模型,或者同时对上述两种模型中的模型参数进行针对性的调整,从而使得调整后的预设的语音生成模型,和/或,预设的声学模型的模型质量相对更高,以便后续通过上述模型可以合成相对更加准确、自然、流畅,用户体验更好的音频数据。

由上可见,本说明书实施例提供的音频数据的生成方法,通过利用韵律短语作为划分粒度,将目标文本拆分成与保存有多个预设韵律短语的预设的韵律短语缓存匹配的第一文本数据,以及与预设的韵律短语缓存不匹配的第二文本数据;通过检索保存有与预设韵律短语对应的音频数据的预设的音频数据缓存,快速地找到与第一文本数据匹配的第一音频数据,同时针对第二文本数据,单独合成对应的第二音频数据;再拼接上述第一音频数据和第二音频数据,得到完整的目标文本的音频数据,从而可以高效地生成质量相对较高、用户使用体验相对较好的音频数据;还通过利用基于tacotron的端到端模型作为预设的语音生成模型,并利用该预设的语音生成模型预先生成与预设韵律短语对应的音频数据保存在预设的音频数据缓存中,从而使得在具体生成目标文本的音频数据时,可以不需要再临时在线合成第一文本数据的第一音频数据,提高了目标文本的音频数据生成的整体效率,降低了用户的等候延时;并且由于上述预设的音频数据缓存中所保存的音频数据是通过端到端模型生成的,使得所得到的频数据听起来相对更自然、质量相对更高,进一步提高了用户的使用体验。

参阅图7所示,本说明书实施例还提供了另一种音频数据的生成方法。其中,该方法具体实施时,可以包括以下内容。

S701:获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息。

S702:根据所述标签信息,确定所述预处理后的目标文本中是否存在与预设韵律短语匹配的第一文本数据。

S703:在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设韵律短语不匹配的文本数据。

S704:从多个预设音频数据中检索出与第一文本数据匹配的预设音频数据作为第一音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据。

S705:拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据。

在本实施例中,上述预设韵律短语具体可以包括在一段时间内合成音频数据的过程中出现频率较高的韵律短语。上述预设音频数据具体可以包括与预设韵律短语对应的音频数据。

在本实施例中,上述预设韵律短语具体可以保存在数据缓存中,也可以保存在相应的数据库中等等。相应的,上述预设音频数据具体也可以保存在数据缓存中,或者相应的数据库中等等。

在本实施例中,通过利用韵律短语作为划分粒度,将目标文本拆分成与预设韵律短语匹配的第一文本数据,以及与预设的韵律短语不匹配的第二文本数据;通过检索预设音频数据,快速地找到与第一文本数据匹配的第一音频数据,同时针对第二文本数据,单独合成对应的第二音频数据;再拼接上述第一音频数据和第二音频数据,得到完整的目标文本的音频数据,从而可以高效地生成质量相对较高、用户使用体验相对较好的音频数据。

参阅图8所示,本说明书实施例还提供了另一种音频数据的生成方法。其中,该方法具体实施时,可以包括以下内容。

S801:获取目标文本。

S802:将所述目标文本拆分成多个韵律短语。

S803:检索预设的音频数据库,确定出与多个韵律短语分别匹配的多个预设音频数据,其中,所述预设的音频数据库中保存有与韵律短语对应的预设音频数据。

S804:根据所述多个预设音频数据,得到所述目标文本的音频数据。

在本实施例中,具体实施之前,可以通过对大量的样本数据(包括样本音频数据和样本数据)进行分析、处理,积累得到大量的预设韵律短语,并进行保存。同时,还可以针对上述大量的预设韵律短语,预先生成对应的音频数据作为预设音频数据,并将预设音频数据保存在预设的音频数据库中。其中,在构建预设的音频数据库,保存预设音频数据时,可以记录下所保存的预设音频数据和所对应的预设韵律短语之间的对应关系。

在本实施例中,在生成目标文本的音频数据的过程中,可以不需要再耗费处理时间、处理资源另外重新合成对应的音频数据,而可以先以韵律短语作为划分粒度,将目标文本划分成多个与预设的韵律短语对应的目标韵律短语;再通过检索预设的音频数据,找到事先已经生成的相匹配的预设音频数据,通过组合预设音频数据,得到针对目标文本的音频数据,从而可以高效地生成质量相对较高、用户使用体验相对较好的音频数据,降低用户的等候延时。

本说明书实施例还提供一种服务器,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器具体实施时可以根据指令执行以下步骤:获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息;确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据;其中,所述预设的韵律短语缓存中保存有多个预设韵律短语;在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设的韵律短语缓存不匹配的文本数据;从所述预设的音频缓存中检索到与第一文本数据匹配的音频数据作为第一音频数据从所述预设的音频数据缓存中检索到与第一文本数据匹配的预设音频数据作为第一音频数据,其中,所述预设的音频数据缓存中保存有与预设韵律短语对应的预设音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据;拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据。

为了能够更加准确地完成上述指令,参阅图9所示,本说明书实施例还提供了另一种具体的服务器,其中,所述服务器包括网络通信端口901、处理器902以及存储器903,上述结构通过内部线缆相连,以便各个结构可以进行具体的数据交互。

其中,所述网络通信端口901,具体可以用于获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息。

所述处理器902,具体可以用于确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据;其中,所述预设的韵律短语缓存中保存有多个预设韵律短语;在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设的韵律短语缓存不匹配的文本数据;从所述预设的音频缓存中检索到与第一文本数据匹配的音频数据作为第一音频数据从所述预设的音频数据缓存中检索到与第一文本数据匹配的预设音频数据作为第一音频数据,其中,所述预设的音频数据缓存中保存有与预设韵律短语对应的预设音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据;拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据。

所述存储器903,具体可以用于存储相应的指令程序。

在本实施例中,所述网络通信端口901可以是与不同的通信协议进行绑定,从而可以发送或接收不同数据的虚拟端口。例如,所述网络通信端口可以是负责进行web数据通信的80号端口,也可以是负责进行FTP数据通信的21号端口,还可以是负责进行邮件数据通信的25号端口。此外,所述网络通信端口还可以是实体的通信接口或者通信芯片。例如,其可以为无线移动网络通信芯片,如GSM、CDMA等;其还可以为Wifi芯片;其还可以为蓝牙芯片。

在本实施例中,所述处理器902可以按任何适当的方式实现。例如,处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。本说明书并不作限定。

在本实施例中,所述存储器903可以包括多个层次,在数字系统中,只要能保存二进制数据的都可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也叫存储器,如RAM、FIFO等;在系统中,具有实物形式的存储设备也叫存储器,如内存条、TF卡等。

本说明书实施例还提供了另一种智能音箱,该智能音箱至少包括处理器以及用于存储处理器可执行指令的存储器。该智能音箱可以通过本地设备,生成目标文本的音频数据,并播放给用户。具体的,该智能音箱具体实施时可以根据指令执行以下步骤:获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息;确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据;其中,所述预设的韵律短语缓存中保存有多个预设韵律短语;在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设的韵律短语缓存不匹配的文本数据;从所述预设的音频缓存中检索到与第一文本数据匹配的音频数据作为第一音频数据从所述预设的音频数据缓存中检索到与第一文本数据匹配的预设音频数据作为第一音频数据,其中,所述预设的音频数据缓存中保存有与预设韵律短语对应的预设音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据;拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据。再向用户播放目标文本的音频数据。

本说明书实施例还提供了一种终端设备,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息;确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据;其中,所述预设的韵律短语缓存中保存有多个预设韵律短语;在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设的韵律短语缓存不匹配的文本数据;从所述预设的音频缓存中检索到与第一文本数据匹配的音频数据作为第一音频数据从所述预设的音频数据缓存中检索到与第一文本数据匹配的预设音频数据作为第一音频数据,其中,所述预设的音频数据缓存中保存有与预设韵律短语对应的预设音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据;拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据。再向用户播放目标文本的音频数据。其中,所述终端设备具体可以包括:客服机器人、语音助理设备、影视配音设备等等。当然,具体实施时,上述终端设备还可以包括所适用的应用场景中其他类型的相应设备。

本说明书实施例还提供了一种基于上述音频数据的生成方法的计算机存储介质,所述计算机存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现:获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息;确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据;其中,所述预设的韵律短语缓存中保存有多个预设韵律短语;在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设的韵律短语缓存不匹配的文本数据;从所述预设的音频缓存中检索到与第一文本数据匹配的音频数据作为第一音频数据从所述预设的音频数据缓存中检索到与第一文本数据匹配的预设音频数据作为第一音频数据,其中,所述预设的音频数据缓存中保存有与预设韵律短语对应的预设音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据;拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据。再向用户播放目标文本的音频数据。

在本实施例中,上述存储介质包括但不限于随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、缓存(Cache)、硬盘(Hard DiskDrive,HDD)或者存储卡(Memory Card)。所述存储器可以用于存储计算机程序指令。网络通信单元可以是依照通信协议规定的标准设置的,用于进行网络连接通信的接口。

在本实施例中,该计算机存储介质存储的程序指令具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。

参阅图10所示,在软件层面上,本说明书实施例还提供了一种音频数据的生成装置,该装置具体可以包括以下的结构模块。

获取模块1001,具体可以用于获取目标文本,并对所述目标文本进行预处理,得到预处理后的目标文本,其中,所述预处理后的目标文本至少携带有标签信息。

第一确定模块1002,具体可以用于确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据;其中,所述预设的韵律短语缓存中保存有多个预设韵律短语。

拆分模块1003,具体可以用于在确定所述预处理后的目标文本中存在第一文本数据和第二文本数据的情况下,将所述预处理后的目标文本拆分成第一文本数据和第二文本数据;其中,所述第二文本数据包括预处理后的目标文本中与预设的韵律短语缓存不匹配的文本数据。

第二确定模块1004,具体可以用于从所述预设的音频数据缓存中检索到与第一文本数据匹配的预设音频数据作为第一音频数据,其中,所述预设的音频数据缓存中保存有与预设韵律短语对应的预设音频数据;根据所述第二文本数据,合成对应的音频数据作为第二音频数据。

拼接模块1005,具体可以用于拼接所述第一音频数据和所述第二音频数据,得到目标文本的音频数据。

在一些实施例中,所述标签信息具体可以包括以下至少之一:韵律短语标记、音素信息标记、停顿标记、轻重音标记等。

在一些实施例中,所述第一确定模块具体可以包括以下结构单元:

第一拆分单元,具体可以用于根据所述标签信息,将所述预处理后的目标文本拆分成多个目标韵律短语;

第一计算单元,具体可以用于计算所述多个目标韵律短语与所述预设的韵律短语缓存中的预设韵律短语之间的近似度;

第一确定单元,具体可以用于根据所述近似度,确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据。

在一些实施例中,根据所述近似度,上述第一确定单元,具体实施时,可以通过比较所述近似度和预设的近似度阈值,确定所述多个目标韵律短语中是否存在目标韵律短语与预设的韵律短语缓存中的预设韵律短语的近似度符合预设要求;在确定所述多个目标韵律短语中存在目标韵律短语与预设的韵律短语缓存中的预设韵律短语的近似度符合预设要求的情况下,确定所述预处理后的目标文本中存在目标韵律短语与预设的韵律短语缓存匹配,并将所述多个目标韵律短语中与预设的韵律短语缓存匹配的目标韵律短语,确定为所述第一文本数据。

在一些实施例中,所述多个预设韵律短语具体可以包括在第一预设时间段内出现频率大于预设的频率阈值的韵律短语等。

在一些实施例中,所述装置具体还可以包括预设的韵律短语缓存建立模块,具体用于获取第一语音合成记录,其中,所述第一语音合成记录中记录了在第一预设时间段内合成的历史音频数据,以及与所述历史音频数据对应的历史文本数据;从所述历史文本数据中提取出多个历史韵律短语;根据所述第一语音合成记录,统计所述多个历史韵律短语在第一预设时间段内合成历史音频数据过程中的出现频率;将出现频率大于预设的频率阈值的历史韵律短语,确定为预设韵律短语,并缓存所述预设韵律短语,得到所述预设的韵律短语缓存。

在一些实施例中,上述预设的韵律短语缓存建立模块具体实施时,可以从所述历史文本数据中提取出多个语句文本数据;对所述多个语句文本数据进行分词处理,得到多个分词;对所述多个分词分别进行韵律预测,得到多个分词的韵律预测结果;根据韵律预测结果,和所述多个分词,构建出多个历史韵律短语。

在一些实施例中,所述装置具体还可以包括预设的音频数据缓存建立模块,具体可以用于获取所述预设的韵律短语缓存中所保存的多个预设韵律短语;利用预设的语音生成模型,生成并缓存与所述多个预设韵律短语分别对应的多个音频数据利用预设的语音生成模型,生成并缓存与所述多个预设韵律短语分别对应的多个预设音频数据,以获得所述预设的音频数据缓存。

在一些实施例中,所述预设的语音生成模型具体可以包括:基于tacotron的端到端模型等。

在一些实施例中,所述装置具体还可以包括预设的语音生成模型建立模块,具体可以用于获取样本音频数据和与样本音频数据对应的样本文本数据,作为样本数据;标注所述样本数据,得到标注后的样本数据;建立基于tacotron的模型作为初始模型;利用所述标注后的样本数据训练所述初始模型,得到预设的语音生成模型。

在一些实施例中,上述第二确定模块1004具体实施时,可以用于根据所述标签信息,从预设的音库中筛选出匹配的音素数据;利用预设的声学模型对所述第二文本数据进行处理,确定出与第二文本数据的音频数据合成相关的参数数据;根据所述参数数据,组合所述多个音素数据,得到第二音频数据。

在一些实施例中,所述拼接模块1005具体实施时,可以包括以下结构单元:

拼接单元,具体可以用于拼接所述第一音频数据和所述第二音频数据,得到第三音频数据;

平滑单元,具体可以用于对所述第三音频数据进行平滑处理,得到目标文本的音频数据。

在一些实施例中,在第一确定模块1001根据所述标签信息,在确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据的情况下,所述第二确定模块1004具体实施时,还可以用于在确定所述预处理后的目标文本中存在第一文本数据,且不存在第二文本数据的情况下,从所述预设的音频数据缓存中检索到与所述预处理后的目标文本匹配的预设音频数据,以得到目标文本的音频数据。

在一些实施例中,在第一确定模块1001在根据所述标签信息,在确定所述预处理后的目标文本中是否存在与预设的韵律短语缓存匹配的第一文本数据的情况下,所述第二确定模块1004具体实施时,还可以用于在确定所述预处理后的目标文本中存在第二文本数据,且不存在第一文本数据的情况下,根据所述预处理后的目标文本,合成对应的音频数据,作为目标文本的音频数据。

在一些实施例中,所述装置还可以包括更新模块,具体实施时,可以用于获取第二语音合成记录,其中,所述第二语音合成记录中记录了在第二预设时间段内合成的历史音频数据,以及与所述历史音频数据对应的历史文本数据;根据所述第二语音合成记录,对预设的韵律短语缓存所保存的多个预设韵律短语中在第二预设时间段内出现频率不符合保留要求的预设韵律短语进行替换处理,得到更新后的预设的韵律短语缓存;根据所述更新后的预设的韵律短语缓存,更新所述预设的音频数据缓存。

需要说明的是,上述实施例阐明的单元、装置或模块等,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

由上可见,本说明书实施例提供的音频数据的生成装置,通过第一确定模块和拆分模块基于韵律短语作为划分粒度,将目标文本拆分成与保存有多个预设韵律短语的预设的韵律短语缓存匹配的第一文本数据,以及与预设的韵律短语缓存不匹配的第二文本数据;通过第二确定模块检索保存有与预设韵律短语对应的音频数据的预设的音频数据缓存,快速地找到与第一文本数据匹配的第一音频数据,同时针对第二文本数据,单独合成对应的第二音频数据;再通过拼接模块拼接上述第一音频数据和第二音频数据,得到完整的目标文本的音频数据,从而可以高效地生成质量相对较高、用户使用体验相对较好的音频数据。

虽然本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内部包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构、类等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

通过以上的实施例的描述可知,本领域的技术人员可以清楚地了解到本说明书可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书的技术方案本质上可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,移动终端,服务器,或者网络设备等)执行本说明书各个实施例或者实施例的某些部分所述的方法。

本说明书中的各个实施例采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。本说明书可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。

虽然通过实施例描绘了本说明书,本领域普通技术人员知道,本说明书有许多变形和变化而不脱离本说明书的精神,希望所附的权利要求包括这些变形和变化而不脱离本说明书的精神。

38页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:语音合成方法、可读存储介质及计算机程序产品

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!