文本的语音合成方法、系统、装置、设备及存储介质

文档序号:193302 发布日期:2021-11-02 浏览:30次 >En<

阅读说明:本技术 文本的语音合成方法、系统、装置、设备及存储介质 (Text speech synthesis method, system, device, equipment and storage medium ) 是由 孙得心 于 2021-06-30 设计创作,主要内容包括:本申请提出一种文本的语音合成方法、系统、装置、设备及存储介质,该方法包括:从客户端包括的数据转换接口获得待转换的文本数据;通过预设声学服务模块和预设编解码脚本将文本数据转换为对应的语音数据。本申请在用户终端本地设置预设声学服务模块及预设编解码脚本,或用户终端设置预设编解码脚本,且服务器配置预设声学服务模块。客户端中设置数据转换接口,通过该接口访问语音合成服务。任意客户端中都可设置该接口,任意能安装客户端的设备都可使用语音合成服务,不用购买任何特定设备,也无需下载并安装额外的应用程序,不会增加用户终端上安装的应用程序的数量,节省了用户终端的存储资源和计算资源,降低了用户使用语音合成服务的成本。(The application provides a text speech synthesis method, a system, a device, equipment and a storage medium, wherein the method comprises the following steps: obtaining text data to be converted from a data conversion interface included in a client; and converting the text data into corresponding voice data through a preset acoustic service module and a preset encoding and decoding script. According to the method and the system, the preset acoustic service module and the preset encoding and decoding script are locally arranged at the user terminal, or the preset encoding and decoding script is arranged at the user terminal, and the preset acoustic service module is configured at the server. A data conversion interface is set in the client, and the voice synthesis service is accessed through the interface. The interface can be arranged in any client, any equipment capable of installing the client can use the voice synthesis service, any specific equipment is not required to be purchased, additional application programs are not required to be downloaded and installed, the number of the application programs installed on the user terminal is not increased, the storage resources and the calculation resources of the user terminal are saved, and the cost of the user for using the voice synthesis service is reduced.)

文本的语音合成方法、系统、装置、设备及存储介质

技术领域

本申请属于数据处理技术领域,具体涉及一种文本的语音合成方法、系统、装置、设备及存储介质。

背景技术

随着语音技术的发展,自动语音合成技术已经被广泛地应用于生活的各个领域,语音合成技术能够根据文本合成语音,大大方便了人们的生活,如将文本读物转换为有声读物等。

相关技术中通常采用特定的语音合成软件进行语音与文本之间的转换,用户需要下载并安装这些语音合成软件,增加了用户终端中安装的软件数量,占用用户终端的大量存储空间和计算资源。而且不同厂商提供的语音合成软件还可能基于特定的硬件才能运行,导致产品的价格昂贵,不方便携带。

发明内容

本申请提出一种文本的语音合成方法、系统、装置、设备及存储介质,客户端中设置有数据转换接口,通过数据转换接口访问预设声学服务模块及预设编解码脚本提供的语音合成服务。任意客户端中都可以设置数据转换接口,任意能够安装客户端的设备都可以使用该语音合成服务,不用购买任何特定设备,也无需下载并安装额外的应用程序,不会增加用户终端上安装的应用程序的数量,节省了用户终端的存储资源和计算资源,降低了用户使用语音合成服务的成本。

本申请第一方面实施例提出了一种文本的语音合成方法,包括:

从客户端包括的数据转换接口获得待转换的文本数据;

通过预设声学服务模块和预设编解码脚本将所述文本数据转换为对应的语音数据,所述预设声学服务模块用于将所述文本数据对应的文本编码转换为语音编码,所述预设编解码脚本用于将所述语音编码转换成对应的语音数据。

在本申请的一些实施例中,所述通过预设声学服务模块和预设编解码脚本将所述文本数据转换为对应的语音数据,包括:

建立与服务器之间的全双工通信连接,所述服务器中包括所述预设声学服务模块;

调用本地配置的预设编解码脚本将所述文本数据转换为对应的文本编码;

基于所述全双工通信连接,发送所述文本编码给所述服务器,以使所述服务器通过所述预设声学服务模块将所述文本编码转换为对应的语音编码;

接收所述服务器返回的所述语音编码,通过本地的所述预设编解码脚本将所述语音编码转换为对应的语音数据。

在本申请的一些实施例中,所述通过预设声学服务模块和预设编解码脚本将所述文本数据转换为对应的语音数据,包括:

调用本地插件库中包括的预设编解码脚本,将所述文本数据转换为对应的文本编码;

调用所述本地插件库中包括的预设声学服务模块,将所述文本编码转换为对应的语音编码;

通过所述预设编解码脚本将所述语音编码转换为对应的语音数据。

在本申请的一些实施例中,所述将所述文本编码转换为对应的语音编码,包括:

从预设语音库中匹配所述文本编码对应的第一音频文件;

按照预设分帧规则将所述第一音频文件划分为多个音频帧;

并行提取每个音频帧对应的声学特征信息;

根据每个音频帧对应的声学特征信息,从所述预设语音库中分别匹配每个音频帧对应的语音编码;

将所述每个音频帧对应的语音编码拼接为所述文本数据对应的语音编码。

在本申请的一些实施例中,所述通过所述预设编解码脚本将所述语音编码转换为对应的语音数据,包括:

通过所述预设编解码脚本调用所述预设语音库的语音编码转换程序,通过所述语音编码转换程序将所述语音编码转换为对应的语音数据。

在本申请的一些实施例中,所述通过预设声学服务模块和预设编解码脚本将所述文本数据转换为对应的语音数据之前,还包括:

若通过所述预设编解码脚本识别出所述文本数据包含预设违禁词,则显示用于提示重新输入文本数据的提示信息;和/或,

若通过所述预设编解码脚本识别出所述文本数据中包含预设文件类型的内容,则从所述文本数据中删除所述预设文件类型的内容。

在本申请的一些实施例中,所述方法还包括:

从所述数据转换接口获取用户设置的语音调节参数,所述语音调节参数至少包括语调参数、语速参数、音色参数、语言类型参数中的一种或多种;

根据所述语音调节参数,通过所述预设编解码脚本将所述文本数据对应的语音编码转换成对应的语音数据。

本申请第二方面的实施例提供了一种文本的语音合成方法,应用于服务器,包括:

接收用户终端发送的待转换的文本数据对应的文本编码,所述文本编码是通过所述用户终端本地的预设编解码脚本对所述文本数据进行转换得到的;

通过预设声学服务模块将所述文本编码转换为对应的语音编码;

发送所述语音编码给所述用户终端,以使所述用户终端通过本地的所述预设编解码脚本将所述语音编码转换为对应的语音数据。

在本申请的一些实施例中,所述通过预设声学服务模块将所述文本编码转换为对应的语音编码,包括:

通过预设声学服务模块从预设语音库中匹配所述文本编码对应的第一音频文件;按照预设分帧规则将所述第一音频文件划分为多个音频帧;并行提取每个音频帧对应的声学特征信息;根据每个音频帧对应的声学特征信息,从所述预设语音库中分别匹配每个音频帧对应的语音编码;将所述每个音频帧对应的语音编码拼接为所述文本数据对应的语音编码。

在本申请的一些实施例中,所述接收用户终端发送的待转换的文本数据对应的文本编码之前,还包括:

接收用户终端的连接请求,建立与所述用户终端之间的全双工通信连接,基于所述全双工通信连接与所述用户终端进行数据交互。

本申请第三方面的实施例提供了一种文本的语音合成系统,所述系统包括用户终端和服务器;所述用户终端的本地插件库中包括预设声学服务模块和预设编解码脚本,和/或,所述用户终端本地配置有所述预设编解码脚本且所述服务器中包括所述预设声学服务模块;

所述用户终端,用于从客户端包括的数据转换接口获得待转换的文本数据;通过本地的所述预设编解码脚本将所述文本数据转换为对应的文本编码;通过本地的所述预设声学服务模块或通过所述服务器中的所述预设声学服务模块将所述文本编码转换为对应的语音编码;通过本地的所述预设编解码脚本将所述语音编码转换为对应的语音数据;

所述服务器,用于接收用户终端发送的所述文本编码;通过所述服务器中的预设声学服务模块将所述文本编码转换为对应的语音编码;发送所述语音编码给所述用户终端。

本申请第四方面的实施例提供了一种文本的语音合成装置,应用于用户终端,包括:

获取模块,用于从客户端包括的数据转换接口获得待转换的文本数据;

转换模块,用于通过预设声学服务模块和预设编解码脚本将所述文本数据转换为对应的语音数据,所述预设声学服务模块用于将所述文本数据对应的文本编码转换为语音编码,所述预设编解码脚本用于将所述语音编码转换成对应的语音数据。

本申请第五方面的实施例提供了一种文本的语音合成装置,应用于服务器,包括:

接收模块,用于接收用户终端发送的待转换的文本数据对应的文本编码,所述文本编码是通过所述用户终端本地的预设编解码脚本对所述文本数据进行转换得到的;

转换模块,用于通过预设声学服务模块将所述文本编码转换为对应的语音编码;

发送模块,用于发送所述语音编码给所述用户终端,以使所述用户终端通过本地的所述预设编解码脚本将所述语音编码转换为对应的语音数据。

本申请第六方面的实施例提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序以实现上述第一方面或第二方面所述的方法。

本申请第七方面的实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行实现上述第一方面或第二方面所述的方法。

本申请实施例中提供的技术方案,至少具有如下技术效果或优点:

在本申请实施例中,在用户终端本地设置预设声学服务模块及预设编解码脚本,和/或,在用户终端本地设置预设编解码脚本,且在服务器中配置预设声学服务模块。在客户端中设置数据转换接口,通过该数据转换接口即可访问预设声学服务模块及预设编解码脚本提供的语音合成服务。任意客户端中都可以设置数据转换接口,任意能够安装客户端的设备都可以使用该语音合成服务,不用购买任何特定设备,也无需下载并安装额外的应用程序,不会增加用户终端上安装的应用程序的数量,节省了用户终端的存储资源和计算资源,降低了用户使用语音合成服务的成本。

本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变的明显,或通过本申请的实践了解到。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。

在附图中:

图1示出了本申请一实施例所提供的一种文本的语音合成方法的流程图;

图2示出了本申请一实施例所提供文本输入界面的示意图;

图3示出了本申请一实施例所提供的一种文本的语音合成方法的另一流程图;

图4示出了本申请一实施例所提供文本输入界面的另一示意图;

图5示出了本申请一实施例所提供的一种文本的语音合成方法的信令交互图;

图6示出了本申请一实施例所提供的一种文本的语音合成系统的结构示意图;

图7示出了本申请一实施例所提供的一种文本的语音合成装置的结构示意图;

图8示出了本申请一实施例所提供的另一种文本的语音合成装置的结构示意图;

图9示出了本申请一实施例所提供的一种电子设备的结构示意图;

图10示出了本申请一实施例所提供的一种存储介质的示意图。

具体实施方式

下面将参照附图更详细地描述本申请的示例性实施方式。虽然附图中显示了本申请的示例性实施方式,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本申请,并且能够将本申请的范围完整的传达给本领域的技术人员。

需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本申请所属领域技术人员所理解的通常意义。

下面结合附图来描述根据本申请实施例提出的一种文本的语音合成方法、系统、装置、设备及存储介质。

目前相关技术中通常采用特定的语音合成软件来将语音转换成文本,用户需要下载这些语音合成软件,并将这些语音合成软件安装在自己的手机或电脑等用户终端中,增加了用户终端中安装的软件数量,占用用户终端的大量存储空间和计算资源。而且不同厂商提供的语音合成软件还可能基于特定的硬件才能运行,导致产品的价格昂贵,不方便携带,限制了语音合成的应用场景。

基于相关技术中存在的上述问题,本申请实施例提供了一种文本的语音合成方法,该方法通过预设声学服务模块和预设编解码脚本来将文本转换成语音,预设编解码脚本可以为node.js脚本,预设编解码脚本配置在用户的手机或电脑等用户终端本地,用于对数据进行编解码操作,如将文本数据转换成文本编码,或者将语音编码转换成语音数据。预设编解码脚本还可以配置在服务器中,配置在服务器中的预设编解码脚本仅用于对编码数据的传输,如接收用户终端发送的文本编码,或者将语音编码发送给用户终端。预设声学服务模块可以配置在服务器中,也可以配置在用户终端中。

用户终端配置预设声学服务模块和预设编解码脚本,和/或,用户终端中配置用于编解码操作的预设编解码脚本,以及服务器中配置预设声学服务模块和用于接收或发送编码数据的预设编解码脚本后,通过任意客户端中设置的数据转换接口均可以访问预设声学服务模块和预设编解码脚本提供的语音合成服务。其中,浏览器、即时通讯软件、游戏软件、多媒体播放软件等任意客户端中均可以设置上述数据转换接口。通过用户终端上原有的客户端即可访问语音合成服务,无需额外安装应用程序,不会增加用户终端安装的软件数量,节省用户终端的存储空间和计算资源,降低了将文本转换成语音的成本,在任意需要语音合成的应用场景中都可以使用客户端中的数据转换接口进行转换,更加方便、快捷、高效。

参见图1,该方法具体包括以下步骤:

步骤101:用户终端从客户端包括的数据转换接口获得待转换的文本数据。

用户终端上安装有至少一个客户端,如浏览器、即时通讯软件、游戏软件等。用户终端安装的任意一个客户端中均可以设置有上述数据转换接口,数据转换接口可以为用于触发访问语音合成功能的链接或按键等。用户点击客户端界面中的数据转换接口,用户终端检测到该数据转换接口的点击事件,显示文本输入界面,该文本输入界面中可以包括文本输入框和/或用于提交文本文件的文件上传接口,如图2所示。用户可以在文本输入框中编辑待转换的文本数据,或者,用户也可以通过文件上传接口上传word、txt、pdf等文件格式的文本文件。

若用户终端检测到用户在文本输入界面中的文本输入框中输入信息,则从该文本编辑组件中获取用户输入的待转换的文本数据。

若用户终端检测到文本输入界面中的文件上传接口触发的上传请求,则可以显示本地文件夹浏览组件,使用户通过浏览本地文件夹目录,选择需要上传的文本文件,用户终端从该文件上传接口获取用户选择的文本文件,将该文本文件作为待转换的文本数据。或者,用户可以直接将需要上传的文本文件拖拽至该文件上传接口处,用户终端从该文件上传接口处获取用户拖拽的文本文件,并将其作为待转换的文本数据。

通过上述任一方式获得待转换的文本数据后,通过如下步骤102的操作来将待转换的文本数据转换为语音数据。

步骤102:用户终端通过预设声学服务模块和预设编解码脚本将文本数据转换为对应的语音数据,预设声学服务模块用于将文本数据对应的文本编码转换为语音编码,预设编解码脚本用于将该语音编码转换成对应的语音数据。

用户终端的本地插件库中配置了预设声学服务模块和预设编解码脚本时,可以通过本地插件库来将待转换的文本数据转换为语音数据。当用户终端中配置了用于进行编解码操作的预设编解码脚本,且服务器中配置了预设声学服务模块和用于接收或发送编码数据预设编解码脚本,且用户终端能够连接到网络时,可以通过用户终端与服务器相配合将待转换的文本数据转换为语音数据。下面分别详细说明这两种方案的具体过程。

在通过本地插件库来进行语音合成的应用场景中,用户终端接收到用户提交的文本数据后,调用本地插件库中的预设编解码脚本,通过预设编解码脚本对该文本数据包括的分词进行语义识别,判断该文本数据中是否包含预设违禁词。预设违禁词可以包括违反法律或法规的词,设置一个违禁词库,该违禁词库中收录多个预设违禁词。预设编解码脚本对该文本数据进行分词处理,对于该文本数据包括的每个分词,都查询该违禁词库中是否包含该分词,若该违禁词库中包括该分词,则确定该文本数据中包含预设违禁词。若确定出违禁词库中不包含该文本数据中包括的所有分词,则确定该文本数据中不包含预设违禁词。

若通过上述方式确定出该文本数据中包含预设违禁词,则显示用于提示重新输入文本数据的提示信息。用户看到该提示信息后,可以在文本输入界面中重新输入待转换的文本数据。

对于通过文本输入界面中的文件上传接口上传的文本数据,其中可能包括图片或CSS样式文件等不便于转换成语音的内容。因此本申请实施例还在预设编解码脚本中预先配置了预设文件类型,预设文件类型可以包括jpg、png、gif、jpeg、css等多种文件类型中的一种或多种。通过预设编解码脚本遍历待转换的文本数据中包括的所有内容,确定该文本数据中是否包含预设文件类型的内容,若包含,则从该文本数据中删除该预设文件类型的内容。从而删除不便于转换成语音的内容,节省这部分内容所占用的计算资源,且减少因这些内容导致的转换出错的情况发生,提高文本的语音合成效率及准确率。

用户终端通过步骤101获得待转换的文本数据,并通过预设编解码脚本确定该文本数据中不包括预设违禁词,以及若确定该文本数据中包括预设文件类型的内容,通过上述方式将预设文件类型的内容删除。之后,如图3所示,通过如下步骤1021-1023的操作来进行语音合成。

步骤1021:用户终端调用本地插件库中包括的预设编解码脚本,将文本数据转换为对应的文本编码。

用户终端通过预设编解码脚本将待转换的文本数据由模拟信号转换为对应的数字信号,将文本数据中的每个词都转换为对应的二进制编码,得到该文本数据对应的文本编码。

步骤1022:用户终端调用本地插件库中包括的预设声学服务模块,将文本编码转换为对应的语音编码。

预设声学服务模块中预先配置有预设语音库,预设语音库中存储有不同词对应的文本编码与音频的映射关系。对于文本数据中每个词对应的文本编码,用户终端都通过预设声学服务模块从预设语音库中匹配出每个词的文本编码对应的音频,将文本数据包括的所有词对应的音频,按照每个词在文本数据中的排列顺序,将所有词对应的音频组合为待转换的文本数据的文本编码对应的第一音频文件。

通过上述方式获得文本数据对应的第一音频文件后,由于预设编解码脚本不能直接识别音频,因此还需要将第一音频文件转换为对应的语音编码。具体地,预设声学服务模块中预先配置了预设分帧规则,按照该预设分帧规则将第一音频文件划分为多个音频帧。其中,预设分帧规则中可以规定划分音频帧的预设单位时长,即根据第一音频文件的时长,每隔预设单位时长划分为一个音频帧。预设单位时长可以为5s或10s等。本申请实施例并不限制预设单位时长的具体取值,实际应用中可根据需求进行设定。

通过上述方式将待第一音频文件划分为一个或多个音频帧后,还记录划分过程中产生的划分记录信息,该划分记录信息中可以包括每个音频帧的开始时刻和结束时刻。

划分出多个音频帧后,通过预设声学服务模块并行提取每个音频帧对应的声学特征信息。预设声学服务模块可以同时并行处理所有的音频帧,也可以同时并行处理预设数目个音频帧,预设数目可以为4或5等。预设声学服务模块通过多个进程来并行处理多个音频帧,进程的数目与并行处理的音频帧的数目相等。

具体地,预设声学服务模块通过进程预加载需要处理的音频帧的数字信号。预加载完成后,对音频帧的数字信号进行加窗处理,以减少频谱能量泄露。对加窗后音频帧的数字信号进行FFT(Fast Fourier Transform,快速傅里叶变换)变换,然后对变换后音频帧的数字信号进行滤波处理,最后通过预设特征提取算法从上述处理得到的音频帧的数字信号中提取该音频帧的声学特征信息。预设特征提取算法可以为梅尔频率倒谱系数、线性预测分析算法、基于深度学习的特征提取算法(如主成分分析算法)等。其中,通过梅尔频率倒谱系数提取的声学特征信息包括音频帧的频谱特征,是基于人耳听觉特性的、鲁棒性较好的频域语音特征参数。

对于需要并行处理的每个音频帧,通过多个进程分别按照上述方式并行提取每个音频帧的声学特征信息,通过并行提取特征,大大缩短提取整个第一音频文件的声学特征的时长,提高转换效率。

预设声学服务模块中的预设语音库中还存储有不同语音对应的语音编码与声学特征信息的映射关系。获得每个音频帧对应的声学特征信息后,根据每个音频帧对应的声学特征信息,从预设语音库中分别匹配每个音频帧对应的语音编码。然后根据上述划分记录信息包括的每个音频帧的开始时刻和结束时刻,将每个音频帧对应的语音编码拼接为待转换的文本数据对应的语音编码。

上述语音编码包括第一音频文件对应的文本帧和音频数据帧的组合,其中文本帧包括第一音频文件对应的第一个开始参数帧和最后一个结束帧,文本帧的格式为json格式。音频数据帧为开始参数帧与结束帧之间的音频数据帧,音频数据帧为二进制帧。

步骤1023:用户终端通过预设编解码脚本将语音编码转换为对应的语音数据。

预设声学服务模块将获得的语音编码传输给本地插件库中包括的预设编解码脚本。该预设编解码脚本用于对接收到的语音编码进行解码处理,从而获得对应的语音数据。

预设声学服务模块提供有供预设编解码脚本使用的调用接口,预设编解码脚本通过该调用接口调用预设语音库的语音编码转换程序,通过该语音编码转换程序将语音编码转换为对应的语音数据。该语音编码程序为预设的用于将语音编码解码为对应的语音的程序代码。

在本申请实施例中,用户使用语音合成功能来合成文本数据对应的语音数据时,可能对合成的语音数据的语调、语速、音色、语言等有个性化需求。例如,可能需要语调很高,或者需要语速较快,或者需要转换成男声语音、女声语音、童声语音等,或者需要转换成汉语语音、英语语音、德语语音、方言等,或者需要转换成卡通语音,等等。对于这些个性化需求,本申请实施例可以从客户端中的数据转换接口获取用户设置的语音调节参数,该语音调节参数至少包括语调参数、语速参数、音色参数、语言类型参数等参数中的一种或多种。

预设编解码脚本在将语音编码转换为待转换的文本数据对应的语音数据时,根据用户设置的语音调节参数,来生成对应的语音数据。具体可采用相关技术根据语音调节参数的具体参数值来调节生成的语音数据的语调、语速、音色或语言类型等,在此对调节的具体过程不再赘述。

作为一种示例,用户点击客户端中的数据转换接口后显示图4所示的文本输入界面中,该文本输入界面中包括多个语音调节参数的选择项,如图4中的男声、女声、英文、中文的选择项,以及语调和语速的调节条。用户可以依据自己的需求通过多个选择项来设置语音调节参数。图4仅作为一种示例,实际应用中可以有其他用于设置语音调节参数的选择项的组合方式。

根据语音调节参数来对基于文本数据合成的语音数据进行调整,能够满足用户对语调、语速、音色、语言类型等多个方面的个性化需求,增加了基于文本进行语音合成的趣味性,提高用户的使用体验。

通过预设编解码脚本按照上述方式最终生成待转换的文本数据对应的语音数据后,预设编解码脚本将语音数据传输给客户端。用户终端可以通过脚本引擎获取客户端的当前界面的DOM(Document Object Model,文档对象模型)结构,根据获取的DOM结构在当前界面的预设位置处显示播放插件,通过该播放插件播放该语音数据。预设位置可以为预先配置任意位置,如可以为当前界面的左侧、右侧、上侧、下侧等位置处。

自动将转换的语音数据在当前界面的预设位置处通过播放插件进行播放,输入的文本可以实时进行播放,使用户方便地听到合成的语音数据,提高了语音合成的实时性。

作为另一种实现方式,用户终端还可以将转换得到的语音数据存储为预设音频格式的文档,并将该文档存储到用户终端的相册或文件夹等应用中。预设音频格式可以为mp3、mp4或wma等。将转换的语音数据存储为预设音频格式的文档,有利于用户随时播放并收听该语音数据。

用户终端可以连接服务器,确保本地插件库中预设声学服务模块和预设编解码脚本的及时更新,通过最新版本的预设声学服务模块和预设编解码脚本为用户提供最优的语音合成服务。

下面简要介绍本申请的几种应用场景,实际应用中并不限制于以下的应用场景,本申请实施例可以应用到任何需要进行语音合成的应用场景中。

场景一,对于老师的课件、教材等文本文件,可以通过本申请实施例提供的方法转换为语音数据,以方便学生可以随时随地播放这些语音数据进行学习。

场景二,视障人士不方便直接阅读文本数据,可以将文本数据转换为语音数据,以播放语音数据给视障人士听。

场景三,对于各种图书,可以通过本申请实施例提供的方法转换为有声读物。

本申请实施例中,通过调用本地插件库中预设声学服务模块和预设编解码脚本来进行语音合成,无需进行数据的网络传输,节省带宽,且避免了网络传输所占用的时间,缩短了语音合成的响应时间,提高了响应速度。且只要在用户终端本地配置预设声学服务模块及预设编解码脚本,并在任意客户端中设置访问语音合成服务的数据转换接口即可,任意能够安装客户端的设备都可以使用该语音合成服务,且不用购买任何特定设备,也无需额外下载并安装额外的应用程序,不会增加用户终端上安装的应用程序的数量,节省了用户终端的存储资源和计算资源,降低了用户使用语音合成服务的成本。

下面介绍通过用户终端中配置的用于进行编解码操作的预设编解码脚本,以及服务器中配置的预设声学服务模块来提供语音合成服务的过程。其中与上述实施例中通过本地插件库的实现过程中相同的部分,在本实施例中不再重复,仅介绍二者的不同之处。

其中,服务器中也配置有预设编解码脚本,该预设编解码脚本仅用于接收或发送编码数据。预设声学服务模块和该预设编解码脚本可以部署在同一台服务器上,也可以部署在不同的服务器上。在服务器上通过编程创建预设编解码脚本,该预设编解码脚本可以为node.js脚本,并确定可访问到语音合成服务的地址信息,该地址信息包括服务器的域名和/或IP地址。

如图5所示,用户终端通过步骤101获得待转换的文本数据后,具体通过以下步骤来实现语音合成功能,包括:

步骤103:用户终端建立与服务器之间的全双工通信连接。

客户端中包括的数据转换接口与服务器的地址信息相关联,该服务器中配置有预设声学服务模块和用于收发编码数据的预设编解码脚本。服务器的地址信息可以包括服务器的域名或IP地址等。

用户终端从客户端包括的数据转换接口获取服务器的地址信息。根据该地址信息,建立与服务器之间的全双工通信连接。该全双工通信连接采用的通信协议可以为websocket协议。

若该地址信息包括服务器的IP地址,则可以根据该IP地址,发送连接请求给服务器。服务器响应该连接请求,建立起用户终端与服务器之间的全双工通信连接。

若该地址信息不包括服务器的IP地址,而包括服务器的域名。则用户终端先发送域名解析请求给域名服务器,该域名解析请求中包括服务器的域名。域名服务器根据服务器的域名,解析得到服务器的IP地址,反馈该IP地址给用户终端。用户终端获得该IP地址,再按照上述方式根据该IP地址建立起与服务器之间的全双工通信连接。

步骤104:用户终端调用本地配置的预设编解码脚本将文本数据转换为对应的文本编码。

用户终端通过本地的预设编解码脚本对该文本数据包括的分词进行语义识别,判断该文本数据中是否包含预设违禁词。判断是否包含预设违禁词的方式以及确定包含预设违禁词后的处置方式均与上述实施例中步骤102中的相应操作相同,在此不再赘述。

对于文本数据中可能包括图片或CSS样式文件等预设文件类型的内容,用户终端通过本地的预设编解码脚本将文本数据中包含的预设文件类型的内容删除,具体操作过程与上述实施例中步骤102中删除预设文件类型的内容的操作相同,在此不再赘述。

步骤105:基于与服务器之间的全双工通信连接,用户终端发送上述文本编码给服务器。

用户终端基于与服务器之间的全双工通信连接,将待转换的文本数据对应的文本编码发送给服务器,以使服务器通过如下步骤106的操作将文本编码转换为对应的语音编码。

步骤106:服务器接收用户终端发送的文本编码,通过预设声学服务模块将文本编码转换为对应的语音编码。

服务器中配置有用于接收或发送编码数据的预设编解码脚本,该预设编解码脚本可以为node.js脚本。基于与用户终端之间的全双工通信连接,服务器通过自身配置的预设编解码脚本接收用户终端发送的文本编码。

然后服务器通过预设声学服务模块将该文本编码转换为对应的语音数据。具体转换过程与上述实施例中步骤1022中用户终端本地的预设声学服务模块执行的转换过程相同,在此不再赘述。

步骤107:服务器将得到的语音编码发送给用户终端。

服务器将文本编码转换成对应的语音编码后,基于与用户终端之间的全双工通信连接,将该语音编码发送给用户终端。

步骤108:用户终端接收服务器发送的语音编码,通过本地的预设编解码脚本将该语音编码转换为对应的语音数据。

用户终端通过本地的预设编解码脚本将该语音编码转换为对应的语音数据的操作以及后续对语音数据的播放或存储的操作,均与上述实施例中步骤1023的操作相同,在此不再赘述。

在本申请实施例中,用户终端将待转换的文本数据对应的文本编码发送给服务器,服务器将转换后的语音编码发送给用户终端。这些数据传输之前都可以先通过预设加密算法对需传输的数据进行加密,然后传输加密后的密文数据,以提高数据传输过程中的数据安全性,确保用户的隐私安全。预设加密算法可以包括哈希算法、MD5(Message-DigestAlgorithm,信息摘要算法)等。

例如,用户终端将待转换的文本数据对应的文本编码发送给服务器之前,通过MD5算法计算文本编码对应的签名,将该签名插入http请求的请求头中,然后将该http请求发送给服务器。服务器接收到该请求后,从请求头中获取该签名,解密后得到文本编码。

本申请实施例中,用户终端通过预设编解码脚本将待转换的文本数据转换为文本编码,并发送给服务器。服务器通过预设声学服务模块将文本编码转换为语音编码,并返回给用户终端。用户终端再通过预设编解码脚本将语音编码转换为最终的语音数据。该文本的语音合成服务可以通过任意客户端中设置的数据转换接口进行访问,无需下载并安装额外的应用程序,不会增加用户终端上安装的应用程序的数量,节省了用户终端的存储资源和计算资源,降低了用户使用语音合成服务的成本。

本申请实施例还提供一种文本的语音合成系统,该系统用于执行上述任一实施例提供的文本的语音合成方法。如图6所示,该系统包括用户终端和服务器;用户终端的本地插件库中包括预设声学服务模块和预设编解码脚本,和/或,用户终端本地配置有预设编解码脚本且服务器中包括预设声学服务模块;

用户终端,用于从客户端包括的数据转换接口获得待转换的文本数据;通过本地的预设编解码脚本将文本数据转换为对应的文本编码;通过本地的预设声学服务模块或通过服务器中的预设声学服务模块将文本编码转换为对应的语音编码;通过本地的预设编解码脚本将语音编码转换为对应的语音数据;

服务器,用于接收用户终端发送的文本编码;通过预设声学服务模块将文本编码转换为对应的语音编码;发送语音编码给用户终端。

本申请的上述实施例提供的文本的语音合成系统与本申请实施例提供的文本的语音合成方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。

本申请实施例还提供一种文本的语音合成装置,该装置用于执行上述任一实施例提供的文本的语音合成方法中用户终端所执行的操作。参见图7,该装置包括:

获取模块201,用于从客户端包括的数据转换接口获得待转换的文本数据;

转换模块202,用于通过预设声学服务模块和预设编解码脚本将文本数据转换为对应的语音数据,预设声学服务模块用于将文本数据对应的文本编码转换为语音编码,预设编解码脚本用于将语音编码转换成对应的语音数据。

转换模块202,用于建立与服务器之间的全双工通信连接,服务器中包括预设声学服务模块;调用本地配置的预设编解码脚本将文本数据转换为对应的文本编码;基于全双工通信连接,发送文本编码给服务器,以使服务器通过预设声学服务模块将文本编码转换为对应的语音编码;接收服务器返回的语音编码,通过本地的预设编解码脚本将语音编码转换为对应的语音数据。

转换模块202,用于调用本地插件库中包括的预设编解码脚本,将文本数据转换为对应的文本编码;调用本地插件库中包括的预设声学服务模块,将文本编码转换为对应的语音编码;通过预设编解码脚本将语音编码转换为对应的语音数据。

转换模块202,用于从预设语音库中匹配文本编码对应的第一音频文件;按照预设分帧规则将第一音频文件划分为多个音频帧;并行提取每个音频帧对应的声学特征信息;根据每个音频帧对应的声学特征信息,从预设语音库中分别匹配每个音频帧对应的语音编码;将每个音频帧对应的语音编码拼接为文本数据对应的语音编码。

转换模块202,用于通过预设编解码脚本调用预设语音库的语音编码转换程序,通过语音编码转换程序将语音编码转换为对应的语音数据。

该装置还包括:提示模块,用于若通过预设编解码脚本识别出文本数据包含预设违禁词,则显示用于提示重新输入文本数据的提示信息;和/或,

删除模块,用于若通过预设编解码脚本识别出文本数据中包含预设文件类型的内容,则从文本数据中删除预设文件类型的内容。

该装置还包括:调节模块,用于从数据转换接口获取用户设置的语音调节参数,语音调节参数至少包括语调参数、语速参数、音色参数、语言类型参数中的一种或多种;根据语音调节参数,通过预设编解码脚本将文本数据对应的语音编码转换成对应的语音数据。

本申请的上述实施例提供的文本的语音合成装置与本申请实施例提供的文本的语音合成方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。

本申请实施例还提供一种文本的语音合成装置,该装置用于执行上述任一实施例提供的文本的语音合成方法中服务器所执行的操作。参见图8,该装置包括:

接收模块301,用于接收用户终端发送的待转换的文本数据对应的文本编码,文本编码是通过用户终端本地的预设编解码脚本对文本数据进行转换得到的;

转换模块302,用于通过预设声学服务模块将文本编码转换为对应的语音编码;

发送模块303,用于发送语音编码给用户终端,以使用户终端通过本地的预设编解码脚本将语音编码转换为对应的语音数据。

转换模块302,用于通过预设声学服务模块从预设语音库中匹配文本编码对应的第一音频文件,按照预设分帧规则将第一音频文件划分为多个音频帧;并行提取每个音频帧对应的声学特征信息;根据每个音频帧对应的声学特征信息,从预设语音库中分别匹配每个音频帧对应的语音编码;将每个音频帧对应的语音编码拼接为所述文本数据对应的语音编码。

该装置还包括:通信连接建立模块,用于接收用户终端的连接请求,建立与用户终端之间的全双工通信连接,基于全双工通信连接与用户终端进行数据交互。

本申请的上述实施例提供的文本的语音合成装置与本申请实施例提供的文本的语音合成方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。

本申请实施方式还提供一种电子设备,以执行上述文本的语音合成方法。请参考图9,其示出了本申请的一些实施方式所提供的一种电子设备的示意图。如图9所示,电子设备9包括:处理器900,存储器901,总线902和通信接口903,所述处理器900、通信接口903和存储器901通过总线902连接;所述存储器901中存储有可在所述处理器900上运行的计算机程序,所述处理器900运行所述计算机程序时执行本申请前述任一实施方式所提供的文本的语音合成方法。

其中,存储器901可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口903(可以是有线或者无线)实现该装置网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。

总线902可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器901用于存储程序,所述处理器900在接收到执行指令后,执行所述程序,前述本申请实施例任一实施方式揭示的所述文本的语音合成方法可以应用于处理器900中,或者由处理器900实现。

处理器900可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器900中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器900可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器901,处理器900读取存储器901中的信息,结合其硬件完成上述方法的步骤。

本申请实施例提供的电子设备与本申请实施例提供的文本的语音合成方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。

本申请实施方式还提供一种与前述实施方式所提供的文本的语音合成方法对应的计算机可读存储介质,请参考图10,其示出的计算机可读存储介质为光盘30,其上存储有计算机程序(即程序产品),所述计算机程序在被处理器运行时,会执行前述任意实施方式所提供的文本的语音合成方法。

需要说明的是,所述计算机可读存储介质的例子还可以包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。

本申请的上述实施例提供的计算机可读存储介质与本申请实施例提供的文本的语音合成方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。

需要说明的是:

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本申请并帮助理解各个发明方面中的一个或多个,在上面对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下示意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

22页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:歌声合成方法及装置、电子设备及存储介质

网友询问留言

已有0条留言

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

精彩留言,会给你点赞!