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

语音合成代理方法、装置、电子设备和可读存储介质与流程

2021-08-31 17:44:00 来源:中国专利 TAG:语音合成 代理 电子设备 装置 可读
语音合成代理方法、装置、电子设备和可读存储介质与流程

本发明涉及语音合成领域,具体而言,涉及一种语音合成代理方法、语音合成代理装置、电子设备和可读存储介质。



背景技术:

相关技术中都是依赖单一服务平台提供语音合成的服务,因此,稳定性和响应速度完全依赖单一的服务平台。在单一服务平台出现不可访问或合成错误等问题时,语音合成的稳定性与速度都得不到保证。



技术实现要素:

本发明旨在至少解决现有技术或相关技术中存在的单一服务平台无法保证稳定性和响应速度的技术问题。

为此,本发明的第一方面提出了一种语音合成代理方法。

本发明的第二方面提出了一种语音合成代理装置。

本发明的第三方面提出了一种电子设备。

本发明的第四方面提出了一种可读存储介质。

有鉴于此,根据本发明的第一方面,提出了一种语音合成代理方法,具体包括:接收终端发送的文本信息;将文本信息发送至n个服务平台,其中n为大于1的整数;接收n个服务平台根据文本信息合成的音频的音频连接;根据音频连接,在n个服务平台中确定目标服务平台;根据目标服务平台对应的目标音频连接,确定对应的目标音频数据;将目标音频数据发送至终端。

本发明提出的语音合成代理方法,将终端发送的文本信息发送至n个服务平台,在n个服务平台中确定目标服务平台,并将目标音频数据发送至终端。具体地,首先接收终端发送的文本信息,并将文本信息发送至n个服务平台,其中n为大于1的整数,然后接收n个服务平台根据文本信息确定的音频连接,根据音频连接比较服务平台的稳定性和响应速度,进而确定目标服务平台,根据目标服务平台对应的音频连接,确定对应的目标音频数据,将确定的目标音频数据发送至终端。本发明提供的语音合成代理方法,在多个服务平台中选择目标服务平台,突破了现有方法只依赖单一服务平台的限制,有效决绝了单一服务平台导致的稳定性和响应速度得不到保证的问题。

另外,根据本发明上述技术方案提出的安卓系统下的编译方法,还可以具有以下技术特征:

在一种可能的设计中,将文字信息发送至n个服务平台,具体包括:将文本信息拆分为多个子文本信息;将多个子文本信息顺次发送至n个服务平台。

在该设计中,将接收到的文本信息拆分成多个子文本信息,然后将拆分得到的多个子文本信息顺次发送至n个服务平台。相较于将整个文本信息一次性发送至服务平台的方式,拆分成多个子文本信息并顺次发送能够主动控制服务平台单次语音合成的范围,避免有些服务平台在非干预的情况下合成完长句或者整句话才返回音频连接。通过拆分并顺次发送的方法,能够更及时地接收到服务平台返回的音频连接,提高响应速度。

在一种可能的设计中,接收n个服务平台根据文本信息合成的音频的音频连接,具体包括:在音频连接为一个长连接的情况下,通过长连接接收服务平台发送的第一音频数据;在音频连接为x个短连接的情况下,通过x个短连接顺次接收服务平台发送的x个第二音频数据,并顺次将x个第二音频数据合成为一个第三音频数据。

在该设计中,在音频连接为一个长连接的情况下,也就是在服务平台返回一个长连接的音频连接时,可以直接通过长连接接收服务平台发送的第一音频数据。而在音频连接为x个短连接的情况下,也就是在服务平台返回x个短连接的音频连接时,通过x个短连接顺次接收服务平台发送的x个第二音频数据,并顺次将x个第二音频数据合成为一个第三音频数据,也就是将x个第二音频合成一个完整的音频数据。在音频连接为x个短连接的情况下,通过接收多个第二音频数据,并将其合成一个完整的音频数据的方式,获取服务平台合成的完整的语音,能够提高响应速度,更迅速地去过到需要的语音。

在一种可能的设计中,根据音频连接,在多个服务平台中确定目标服务平台,具体包括:在n个服务平台中预设一个主服务平台和m个备用服务平台,其中m小于n;在将文本信息发送至主服务平台和m个备用服务平台之后,开启计时;在计时时长小于第一预设时长,且接收到主服务平台返回的第一音频连接的情况下,将主服务平台确定为目标服务平台;在计时时长大于或等于第一预设时长,且小于第二预设时长,且接收到第一音频连接和备用服务平台返回的第二音频连接的情况下,根据第一音频连接和第二音频连接确定目标服务平台。

在该设计中,在n个服务平台中预设一个主服务平台和m个备用服务平台,其中m小于n,通过对主服务平台和备用服务平台返回音频连接的比较,在主服务平台和备用服务平台中确定一个目标服务平台,利用目标服务平台向终端返回音频数据。具体地,在将文本信息发送至主服务平台和m个备用服务平台后,开启计时,如果在第一预设时长内接收到了主服务平台返回的第一音频连接,那么将主服务平台确定为目标服务平台,而如果计时时长大于第一预设时长,并且在第二预设时长内接收到第一音频连接和备用服务平台返回的第二音频连接,那么根据接收到的第一音频连接和第二音频连接确定目标服务平台。

在一种可能的设计中,根据第一音频连接和第二音频连接确定目标服务平台,具体包括:以第三预设时长为间隔,周期确定主服务平台通过第一音频连接返回的主音频数据的第一长度,和任一备用服务平台通过第二音频连接返回的备音频数据的第二长度;在第一长度大于或等于第二长度的情况下,确定主服务平台为目标服务平台;或在任一备音频数据包含文本信息的全部信息的情况下,确定任一备音频数据对应的备用服务平台为目标服务平台。

在该设计中,在根据第一音频连接和第二音频连接确定目标服务平台时,以第三预设时长为间隔,每隔第三预设时长,就确定主服务平台通过第一音频连接返回的主音频数据的第一长度,同时确定任一备用服务平台通过第二音频连接返回的备音频数据的第二长度。如果第一长度大于或等于第二长度,也就是主服务平台的主音频数据包含的语音信息至少不少于备音频数据,那么确定主服务平台为目标服务平台。或者,如果任一备音频数据包含文本信息的全部信息,那么就确定这个备选音频数据对应的备用服务平台为目标服务平台。

进一步地,将文本信息去除不影响停顿的标点后的字符长度记为l,记录将文本信息发送至服务平台返回第一个音频连接的时间并记为t0,记录至服务平台返回文本信息对应的所有音频数据的音频连接的时间并记为tn,记录各服务平台返回音频连接的音频数据的字节大小并记为b,使用avg(t0)估算各服务平台的平均合成等待时间并记为w,使用avg(tn/l)估算各服务平台的平均单字合成时间并记为v,使用avg(b/l)估算各服务平台的平均单字合成大小并记为s,并将主服务平台记为a。

第二预设时长为max(vi×lt),也即所有备选服务平台的最大预估合成时间,第三预设时长为n×(va×lt-wa),也即主服务平台的剩余预估合成时间。

在一种可能的设计中,在计时时长大于第二预设时长,且第一长度大于或等于第二长度的情况下,确定主服务平台为目标服务平台;在计时时长大于第二预设时长,且第一长度小于第二长度的情况下,确定任一备用服务平台为目标服务平台。

在该设计中,如果计时时长大于第二预设时长,并且第一长度大于或等于第二长度,也就是主服务平台的主音频数据包含的语音信息至少不少于备音频数据,那么确定主服务平台为目标服务平台。而如果计时时长大于第二预设时长,并且第一长度小于第二长度,也就是主音频数据包含的语音信息太少,少于备音频数据,那么确定备用服务平台为目标服务平台。也就是说,在计时时长大于第二预设时长的情况下,主服务平台和备用服务平台哪个返回的音频数据的长度更长,就选择那个服务平台作为目标服务平台,而在长度相等的情况下,选择主服务平台作为目标服务平台。

在一种可能的设计中,还包括:确定终端的请求方式;在请求方式是短连接请求方式的情况下,存储目标音频数据。

在该设计中,在确定目标服务平台后,还需要确定终端的请求方式,如果终端的请求方式是短连接请求,那么存储目标音频数据,以加速后续访问。

进一步地,在终端的请求方式为短连接请求时,可以存储或缓存目标音频数据,而在终端的请求方式为长连接请求时,可以缓存目标音频数据。缓存或存储可以在生效的情况下,节约合成时间及对服务平台的网络调用。

进一步地,文件存储名、缓存key名可以参考如下组成,其中vendor表示对应的合成商标记,tts_params指代如语调、语速等参数:{md5_of_text}.{vendor}.{version_of_vendor}.{md5_of_tts_params}

更进一步地,当某个服务平台进行了版本升级时,通过调整version_of_vendor字段来使对应历史数据失效。

更进一步地,可以将过程中所有可配置的参数项(如缓存时间、可选合成商、合成商版本号、备选合成的延时等)放入实时配置系统(如zookeeper等工具),来支持系统的动态调整。

根据本发明的第二方面,提出了一种语音合成代理装置,包括:第一接收单元,用于接收终端发送的文本信息;第一发送单元,用于将文本信息发送至n个服务平台,其中n为大于1的整数;第二接收单元,用于接收n个服务平台根据文本信息合成的音频的音频连接;选择单元,用于根据音频连接,在n个服务平台中确定目标服务平台;选择单元还用于,根据目标服务平台对应的目标音频连接,确定对应的目标音频数据;第二发送单元,将目标音频数据发送至终端。

具体地,语音合成代理装置包括第一接收单元、第一发送单元、第二接收单元、第二发送单元和选择单元。其中第一接收单元接收来自终端的文本信息,而第一发送单元将终端发送的文本信息发送至n个服务平台,第二接收单元接收来自n个服务平台的芯片连接,选择单元在n个服务平台中确定目标服务平台,最后第二发送单元将目标音频数据发送至终端。具体地,首先第一接收单元接收终端发送的文本信息,第一发送单元将文本信息发送至n个服务平台,其中n为大于1的整数,然后第二接收单元接收n个服务平台根据文本信息确定的音频连接,选择单元根据音频连接比较服务平台的稳定性和响应速度,进而确定目标服务平台,根据目标服务平台对应的音频连接,确定对应的目标音频数据,最后第二发送单元将确定的目标音频数据发送至终端。本发明提供的语音合成代理装置,在多个服务平台中选择目标服务平台,突破了现有方法只依赖单一服务平台的限制,有效决绝了单一服务平台导致的稳定性和响应速度得不到保证的问题。

另外,根据本发明上述技术方案提出的语音合成代理装置,还可以具有以下技术特征:

在一种可能的设计中,第一发送单元,还用于:将文本信息拆分为多个子文本信息;将多个子文本信息顺次发送至n个服务平台。

在该设计中,第一发送单元还用于将接收到的文本信息拆分成多个子文本信息,然后将拆分得到的多个子文本信息顺次发送至n个服务平台。相较于将整个文本信息一次性发送至服务平台的方式,拆分成多个子文本信息并顺次发送能够主动控制服务平台单次语音合成的范围,避免有些服务平台在非干预的情况下合成完长句或者整句话才返回音频连接。通过拆分并顺次发送的方法,能够更及时地接收到服务平台返回的音频连接,提高响应速度。

在一种可能的设计中,第二接收单元,还用于:在音频连接为一个长连接的情况下,通过长连接接收服务平台发送的第一音频数据;在音频连接为x个短连接的情况下,通过x个短连接顺次接收服务平台发送的x个第二音频数据,并顺次将x个第二音频数据合成为一个第三音频数据。

在该设计中,第二接收单元还用于在音频连接为一个长连接的情况下,也就是在服务平台返回一个长连接的音频连接时,可以直接通过长连接接收服务平台发送的第一音频数据。而在音频连接为x个短连接的情况下,也就是在服务平台返回x个短连接的音频连接时,通过x个短连接顺次接收服务平台发送的x个第二音频数据,并顺次将x个第二音频数据合成为一个第三音频数据,也就是将x个第二音频合成一个完整的音频数据。在音频连接为x个短连接的情况下,通过接收多个第二音频数据,并将其合成一个完整的音频数据的方式,获取服务平台合成的完整的语音,能够提高响应速度,更迅速地去过到需要的语音。

在一种可能的设计中,选择单元,还用于:在n个服务平台中预设一个主服务平台和m个备用服务平台,其中m小于n;在将文本信息发送至主服务平台和m个备用服务平台之后,开启计时;在计时时长小于第一预设时长,且接收到主服务平台返回的第一音频连接的情况下,将主服务平台确定为目标服务平台;在计时时长大于或等于第一预设时长,且小于第二预设时长,且接收到第一音频连接和述备用服务平台返回的第二音频连接的情况下,根据第一音频连接和第二音频连接确定目标服务平台。

在该设计中,选择单元还用于在n个服务平台中预设一个主服务平台和m个备用服务平台,其中m小于n,通过对主服务平台和备用服务平台返回音频连接的比较,在主服务平台和备用服务平台中确定一个目标服务平台,利用目标服务平台向终端返回音频数据。具体地,在将文本信息发送至主服务平台和m个备用服务平台后,开启计时,如果在第一预设时长内接收到了主服务平台返回的第一音频连接,那么将主服务平台确定为目标服务平台,而如果计时时长大于第一预设时长,并且在第二预设时长内接收到第一音频连接和备用服务平台返回的第二音频连接,那么根据接收到的第一音频连接和第二音频连接确定目标服务平台。

在一种可能的设计中,选择单元,还用于:以第三预设时长为间隔,周期确定主服务平台通过第一音频连接返回的主音频数据的第一长度,和任一备用服务平台通过第二音频连接返回的备音频数据的第二长度;在第一长度大于或等于第二长度的情况下,确定主服务平台为目标服务平台;或在任一备音频数据包含文本信息的全部信息的情况下,确定任一音频数据对应的备用服务平台为目标服务平台。

在该设计中,选择单元还用于在根据第一音频连接和第二音频连接确定目标服务平台时,以第三预设时长为间隔,每隔第三预设时长,就确定主服务平台通过第一音频连接返回的主音频数据的第一长度,同时确定任一备用服务平台通过第二音频连接返回的备音频数据的第二长度。如果第一长度大于或等于第二长度,也就是主服务平台的主音频数据包含的语音信息至少不少于备音频数据,那么确定主服务平台为目标服务平台。

进一步地,将文本信息去除不影响停顿的标点后的字符长度记为l,记录将文本信息发送至服务平台返回第一个音频连接的时间并记为t0,记录至服务平台返回文本信息对应的所有音频数据的音频连接的时间并记为tn,记录各服务平台返回音频连接的音频数据的字节大小并记为b,使用avg(t0)估算各服务平台的平均合成等待时间并记为w,使用avg(tn/l)估算各服务平台的平均单字合成时间并记为v,使用avg(b/l)估算各服务平台的平均单字合成大小并记为s,并将主服务平台记为a。

第二预设时长为max(vi×lt),也即所有备选服务平台的最大预估合成时间,第三预设时长为n×(va×lt-wa),也即主服务平台的剩余预估合成时间。在一种可能的设计中,选择单元,还用于:在计时时长大于第二预设时长,且第一长度大于或等于第二长度的情况下,确定主服务平台为目标服务平台;在计时时长大于第二预设时长,且第一长度小于第二长度的情况下,确定任一备用服务平台为目标服务平台。

在该设计中,选择单元还用于在计时时长大于第二预设时长,并且第一长度大于或等于第二长度时,也就是主服务平台的主音频数据包含的语音信息至少不少于备音频数据时,确定主服务平台为目标服务平台。而如果计时时长大于第二预设时长,并且第一长度小于第二长度,也就是主音频数据包含的语音信息太少,少于备音频数据,那么确定备用服务平台为目标服务平台。也就是说,在计时时长大于第二预设时长的情况下,主服务平台和备用服务平台哪个返回的音频数据的长度更长,就选择那个服务平台作为目标服务平台,而在长度相等的情况下,选择主服务平台作为目标服务平台。

在一种可能的设计中,语音合成代理装置还包括:存储单元,用于确定终端的请求方式;存储单元还用于,在请求方式是短连接请求方式的情况下,存储目标音频。

在该设计中,存储单元在确定目标服务平台后,还需要确定终端的请求方式,如果终端的请求方式是短连接请求,那么存储目标音频数据,以加速后续访问。

进一步地,在终端的请求方式为短连接请求时,存储单元可以存储或缓存目标音频数据,而在终端的请求方式为长连接请求时,存储单元可以缓存目标音频数据。缓存或存储可以在生效的情况下,节约合成时间及对服务平台的网络调用。

进一步地,文件存储名、缓存key名可以参考如下组成,其中vendor表示对应的合成商标记,tts_params指代如语调、语速等参数:{md5_of_text}.{vendor}.{version_of_vendor}.{md5_of_tts_params}。

更进一步地,当某个服务平台进行了版本升级时,通过调整version_of_vendor字段来使对应历史数据失效。

更进一步地,可以将过程中所有可配置的参数项(如缓存时间、可选合成商、合成商版本号、备选合成的延时等)放入实时配置系统(如zookeeper等工具),来支持系统的动态调整。

根据本发明的第三方面,提供了一种电子设备,包括处理器和存储器,处理器用于执行存储器中存储的程序或指令时实现如上述第一方面的任一设计的语音合成代理方法的步骤,因而具备该语音合成代理方法的全部有益效果,在此不再赘述。

根据本发明的第四方面,提供了一种可读存储介质,其上存储有程序或指令,程序或指令被处理器执行时实现如上述第一方面的任一设计的语音合成代理方法的步骤,因而具备该语音合成代理方法的全部有益效果,在此不再赘述。

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

附图说明

本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1示出了本发明第一方面的一个实施例的语音合成代理方法的流程示意图;

图2示出了本发明第一方面的一个实施例的语音合成代理方法的流程示意图;

图3示出了本发明第一方面的一个实施例的音频连接示意图;

图4示出了本发明第一方面的一个实施例的语音合成代理方法的流程示意图;

图5示出了本发明第二方面的一个实施例的语音合成代理装置的结构示意图;

图6示出了本发明第三方面的一个实施例的电子设备的结构示意图。

其中,图5和图6中附图标记与部件名称之间的对应关系为:

100语音合成代理装置,110第一接收单元,120第一发送单元,130第二接收单元,140选择单元,150第二发送单元,160存储单元,200电子设备,210处理器,220存储器。

具体实施方式

为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。

本发明第一方面的实施例,提出一种语音合成代理方法。如图1所示,该方法包括:

s102,接收终端发送的文本信息;

s104,将文本信息发送至n个服务平台,其中n为大于1的整数;

s106,接收n个服务平台根据文本信息合成的音频的音频连接;

s108,根据音频连接,在n个服务平台中确定目标服务平台;

s110,根据目标服务平台对应的目标音频连接,确定对应的目标音频数据;

s112,将目标音频数据发送至终端。

本发明实施例提出的语音合成代理方法,将终端发送的文本信息发送至n个服务平台,在n个服务平台中确定目标服务平台,并将目标音频数据发送至终端。具体地,首先接收终端发送的文本信息,并将文本信息发送至n个服务平台,其中n为大于1的整数,然后接收n个服务平台根据文本信息确定的音频连接,根据音频连接比较服务平台的稳定性和响应速度,进而确定目标服务平台,根据目标服务平台对应的音频连接,确定对应的目标音频数据,将确定的目标音频数据发送至终端。本发明提供的语音合成代理方法,在多个服务平台中选择目标服务平台,突破了现有方法只依赖单一服务平台的限制,有效决绝了单一服务平台导致的稳定性和响应速度得不到保证的问题。

在一些实施例中,将文字信息发送至n个服务平台,具体包括:将文本信息拆分为多个子文本信息;将多个子文本信息顺次发送至n个服务平台。

如图2所示,该方法包括:

s202,将文本信息拆分为多个子文本信息;

s204,将多个子文本信息顺次发送至n个服务平台。

在该实施例中,将接收到的文本信息拆分成多个子文本信息,然后将拆分得到的多个子文本信息顺次发送至n个服务平台。相较于将整个文本信息一次性发送至服务平台的方式,拆分成多个子文本信息并顺次发送能够主动控制服务平台单次语音合成的范围,避免有些服务平台在非干预的情况下合成完长句或者整句话才返回音频连接。通过拆分并顺次发送的方法,能够更及时地接收到服务平台返回的音频连接,提高响应速度。

在一些实施例中,接收n个服务平台根据文本信息合成的音频的音频连接,具体包括:在音频连接为一个长连接的情况下,通过长连接接收服务平台发送的第一音频数据;在音频连接为x个短连接的情况下,通过x个短连接顺次接收服务平台发送的x个第二音频数据,并顺次将x个第二音频数据合成为一个第三音频数据。

在该实施例中,在音频连接为一个长连接的情况下,也就是在服务平台返回一个长连接的音频连接时,可以直接通过长连接接收服务平台发送的第一音频数据。而在音频连接为x个短连接的情况下,也就是在服务平台返回x个短连接的音频连接时,通过x个短连接顺次接收服务平台发送的x个第二音频数据,并顺次将x个第二音频数据合成为一个第三音频数据,也就是将x个第二音频合成一个完整的音频数据。在音频连接为x个短连接的情况下,通过接收多个第二音频数据,并将其合成一个完整的音频数据的方式,获取服务平台合成的完整的语音,能够提高响应速度,更迅速地去过到需要的语音。

图3示出了本发明第一方面一个实施例的音频连接示意图。

如图所示,服务平台a和服务平台b均返回了音频数据,其中,服务平台a的音频连接为长连接,通过长连接接收服务平台a发送的第一音频数据,第一音频数据中包含信息“你好…,欢迎…”。而服务平台b的音频连接为两个短连接,通过两个短连接接收服务平台b发送的两个第二音频数据,两个第二音频数据中分为包含信息“欢迎…”和“你好…”,按顺序将两个第二音频数据合成为一个第三音频数据,得到“你好…,欢迎…”。最后将包含信息“你好…,欢迎…”的音频数据发送至前端。

在一些实施例中,根据音频连接,在多个服务平台中确定目标服务平台,具体包括:在n个服务平台中预设一个主服务平台和m个备用服务平台,其中m小于n;在将文本信息发送至主服务平台和m个备用服务平台之后,开启计时;在计时时长小于第一预设时长,且接收到主服务平台返回的第一音频连接的情况下,将主服务平台确定为目标服务平台;在计时时长大于或等于第一预设时长,且小于第二预设时长,且接收到第一音频连接和备用服务平台返回的第二音频连接的情况下,根据第一音频连接和第二音频连接确定目标服务平台。

在该实施例中,在n个服务平台中预设一个主服务平台和m个备用服务平台,其中m小于n,通过对主服务平台和备用服务平台返回音频连接的比较,在主服务平台和备用服务平台中确定一个目标服务平台,利用目标服务平台向终端返回音频数据。具体地,在将文本信息发送至主服务平台和m个备用服务平台后,开启计时,如果在第一预设时长内接收到了主服务平台返回的第一音频连接,那么将主服务平台确定为目标服务平台,而如果计时时长大于第一预设时长,并且在第二预设时长内接收到第一音频连接和备用服务平台返回的第二音频连接,那么根据接收到的第一音频连接和第二音频连接确定目标服务平台。

在一些实施例中,根据第一音频连接和第二音频连接确定目标服务平台,具体包括:以第三预设时长为间隔,周期确定主服务平台通过第一音频连接返回的主音频数据的第一长度,和任一备用服务平台通过第二音频连接返回的备音频数据的第二长度;在第一长度大于或等于第二长度的情况下,确定主服务平台为目标服务平台;或在任一备音频数据包含文本信息的全部信息的情况下,确定任一备音频数据对应的备用服务平台为目标服务平台。

在该实施例中,在根据第一音频连接和第二音频连接确定目标服务平台时,以第三预设时长为间隔,每隔第三预设时长,就确定主服务平台通过第一音频连接返回的主音频数据的第一长度,同时确定任一备用服务平台通过第二音频连接返回的备音频数据的第二长度。如果第一长度大于或等于第二长度,也就是主服务平台的主音频数据包含的语音信息至少不少于备音频数据,那么确定主服务平台为目标服务平台。或者,如果任一备音频数据包含文本信息的全部信息,那么就确定这个备选音频数据对应的备用服务平台为目标服务平台。

进一步地,将文本信息去除不影响停顿的标点后的字符长度记为l,记录将文本信息发送至服务平台返回第一个音频连接的时间并记为t0,记录至服务平台返回文本信息对应的所有音频数据的音频连接的时间并记为tn,记录各服务平台返回音频连接的音频数据的字节大小并记为b,使用avg(t0)估算各服务平台的平均合成等待时间并记为w,使用avg(tn/l)估算各服务平台的平均单字合成时间并记为v,使用avg(b/l)估算各服务平台的平均单字合成大小并记为s,并将主服务平台记为a。

第二预设时长为max(vi×lt),也即所有备选服务平台的最大预估合成时间,第三预设时长为n×(va×lt-wa),也即主服务平台的剩余预估合成时间。在一些实施例中,在计时时长大于第二预设时长,且第一长度大于或等于第二长度的情况下,确定主服务平台为目标服务平台;在计时时长大于第二预设时长,且第一长度小于第二长度的情况下,确定任一备用服务平台为目标服务平台。

在该实施例中,如果计时时长大于第二预设时长,并且第一长度大于或等于第二长度,也就是主服务平台的主音频数据包含的语音信息至少不少于备音频数据,那么确定主服务平台为目标服务平台。而如果计时时长大于第二预设时长,并且第一长度小于第二长度,也就是主音频数据包含的语音信息太少,少于备音频数据,那么确定备用服务平台为目标服务平台。也就是说,在计时时长大于第二预设时长的情况下,主服务平台和备用服务平台哪个返回的音频数据的长度更长,就选择那个服务平台作为目标服务平台,而在长度相等的情况下,选择主服务平台作为目标服务平台。

在一些实施例中,还包括:确定终端的请求方式;在请求方式是短连接请求方式的情况下,存储目标音频数据。

如图4所示,该方法包括:

s402,确定终端的请求方式;

s404,在请求方式是短连接请求方式的情况下,存储目标音频数据。

在该实施例中,在确定目标服务平台后,还需要确定终端的请求方式,如果终端的请求方式是短连接请求,那么存储目标音频数据,以加速后续访问。

进一步地,在终端的请求方式为短连接请求时,可以存储或缓存目标音频数据,而在终端的请求方式为长连接请求时,可以缓存目标音频数据。缓存或存储可以在生效的情况下,节约合成时间及对服务平台的网络调用。

进一步地,文件存储名、缓存key名可以参考如下组成,其中vendor表示对应的合成商标记,tts_params指代如语调、语速等参数:{md5_of_text}.{vendor}.{version_of_vendor}.{md5_of_tts_params}。

更进一步地,当某个服务平台进行了版本升级时,通过调整version_of_vendor字段来使对应历史数据失效。

更进一步地,可以将过程中所有可配置的参数项(如缓存时间、可选合成商、合成商版本号、备选合成的延时等)放入实时配置系统(如zookeeper等工具),来支持系统的动态调整。

本发明的第二方面提出了提出了一种语音合成代理装置100,包括:第一接收单元110,用于接收终端发送的文本信息;第一发送单元120,用于将文本信息发送至n个服务平台,其中n为大于1的整数;第二接收单元130,用于接收n个服务平台根据文本信息合成的音频的音频连接;选择单元140,用于根据音频连接,在n个服务平台中确定目标服务平台;选择单元140还用于,根据目标服务平台对应的目标音频连接,确定对应的目标音频数据;第二发送单元150,将目标音频数据发送至终端。

本发明实施例提出的语音合成代理装置100包括第一接收单元110、第一发送单元120、第二接收单元130、第二发送单元150和选择单元140。其中第一接收单元110接收来自终端的文本信息,而第一发送单元120将终端发送的文本信息发送至n个服务平台,第二接收单元130接收来自n个服务平台的芯片连接,选择单元140在n个服务平台中确定目标服务平台,最后第二发送单元150将目标音频数据发送至终端。具体地,首先第一接收单元110接收终端发送的文本信息,第一发送单元120将文本信息发送至n个服务平台,其中n为大于1的整数,然后第二接收单元130接收n个服务平台根据文本信息确定的音频连接,选择单元140根据音频连接比较服务平台的稳定性和响应速度,进而确定目标服务平台,根据目标服务平台对应的音频连接,确定对应的目标音频数据,最后第二发送单元150将确定的目标音频数据发送至终端。本发明提供的语音合成代理装置100,在多个服务平台中选择目标服务平台,突破了现有方法只依赖单一服务平台的限制,有效决绝了单一服务平台导致的稳定性和响应速度得不到保证的问题。

另外,根据本发明上述技术方案提出的语音合成代理装置100,还可以具有以下技术特征:

在一些实施例中,第一发送单元120,还用于:将文本信息拆分为多个子文本信息;将多个子文本信息顺次发送至n个服务平台。

在该实施例中,第一发送单元120还用于将接收到的文本信息拆分成多个子文本信息,然后将拆分得到的多个子文本信息顺次发送至n个服务平台。相较于将整个文本信息一次性发送至服务平台的方式,拆分成多个子文本信息并顺次发送能够主动控制服务平台单次语音合成的范围,避免有些服务平台在非干预的情况下合成完长句或者整句话才返回音频连接。通过拆分并顺次发送的方法,能够更及时地接收到服务平台返回的音频连接,提高响应速度。

在一些实施例中,第二接收单元130,还用于:在音频连接为一个长连接的情况下,通过长连接接收服务平台发送的第一音频数据;在音频连接为x个短连接的情况下,通过x个短连接顺次接收服务平台发送的x个第二音频数据,并顺次将x个第二音频数据合成为一个第三音频数据。

在该实施例中,第二接收单元130还用于在音频连接为一个长连接的情况下,也就是在服务平台返回一个长连接的音频连接时,可以直接通过长连接接收服务平台发送的第一音频数据。而在音频连接为x个短连接的情况下,也就是在服务平台返回x个短连接的音频连接时,通过x个短连接顺次接收服务平台发送的x个第二音频数据,并顺次将x个第二音频数据合成为一个第三音频数据,也就是将x个第二音频合成一个完整的音频数据。在音频连接为x个短连接的情况下,通过接收多个第二音频数据,并将其合成一个完整的音频数据的方式,获取服务平台合成的完整的语音,能够提高响应速度,更迅速地去过到需要的语音。

在一些实施例中,选择单元140,还用于:在n个服务平台中预设一个主服务平台和m个备用服务平台,其中m小于n;在将文本信息发送至主服务平台和m个备用服务平台之后,开启计时;在计时时长小于第一预设时长,且接收到主服务平台返回的第一音频连接的情况下,将主服务平台确定为目标服务平台;在计时时长大于或等于第一预设时长,且小于第二预设时长,且接收到第一音频连接和述备用服务平台返回的第二音频连接的情况下,根据第一音频连接和第二音频连接确定目标服务平台。

在该实施例中,选择单元140还用于在n个服务平台中预设一个主服务平台和m个备用服务平台,其中m小于n,通过对主服务平台和备用服务平台返回音频连接的比较,在主服务平台和备用服务平台中确定一个目标服务平台,利用目标服务平台向终端返回音频数据。具体地,在将文本信息发送至主服务平台和m个备用服务平台后,开启计时,如果在第一预设时长内接收到了主服务平台返回的第一音频连接,那么将主服务平台确定为目标服务平台,而如果计时时长大于第一预设时长,并且在第二预设时长内接收到第一音频连接和备用服务平台返回的第二音频连接,那么根据接收到的第一音频连接和第二音频连接确定目标服务平台。

在一些实施例中,选择单元140,还用于:以第三预设时长为间隔,周期确定主服务平台通过第一音频连接返回的主音频数据的第一长度,和任一备用服务平台通过第二音频连接返回的备音频数据的第二长度;在第一长度大于或等于第二长度的情况下,确定主服务平台为目标服务平台;或在任一备音频数据包含文本信息的全部信息的情况下,确定任一音频数据对应的备用服务平台为目标服务平台。

在该实施例中,选择单元140还用于在根据第一音频连接和第二音频连接确定目标服务平台时,以第三预设时长为间隔,每隔第三预设时长,就确定主服务平台通过第一音频连接返回的主音频数据的第一长度,同时确定任一备用服务平台通过第二音频连接返回的备音频数据的第二长度。如果第一长度大于或等于第二长度,也就是主服务平台的主音频数据包含的语音信息至少不少于备音频数据,那么确定主服务平台为目标服务平台。

在一些实施例中,选择单元140,还用于:在计时时长大于第二预设时长,且第一长度大于或等于第二长度的情况下,确定主服务平台为目标服务平台;在计时时长大于第二预设时长,且第一长度小于第二长度的情况下,确定任一备用服务平台为目标服务平台。

进一步地,将文本信息去除不影响停顿的标点后的字符长度记为l,记录将文本信息发送至服务平台返回第一个音频连接的时间并记为t0,记录至服务平台返回文本信息对应的所有音频数据的音频连接的时间并记为tn,记录各服务平台返回音频连接的音频数据的字节大小并记为b,使用avg(t0)估算各服务平台的平均合成等待时间并记为w,使用avg(tn/l)估算各服务平台的平均单字合成时间并记为v,使用avg(b/l)估算各服务平台的平均单字合成大小并记为s,并将主服务平台记为a。

第二预设时长为max(vi×lt),也即所有备选服务平台的最大预估合成时间,第三预设时长为n×(va×lt-wa),也即主服务平台的剩余预估合成时间。

在该实施例中,选择单元140还用于在计时时长大于第二预设时长,并且第一长度大于或等于第二长度时,也就是主服务平台的主音频数据包含的语音信息至少不少于备音频数据时,确定主服务平台为目标服务平台。而如果计时时长大于第二预设时长,并且第一长度小于第二长度,也就是主音频数据包含的语音信息太少,少于备音频数据,那么确定备用服务平台为目标服务平台。也就是说,在计时时长大于第二预设时长的情况下,主服务平台和备用服务平台哪个返回的音频数据的长度更长,就选择那个服务平台作为目标服务平台,而在长度相等的情况下,选择主服务平台作为目标服务平台。

如图5所示,在一些实施例中,语音合成代理装置100还包括:存储单元160,用于确定终端的请求方式;存储单元160还用于,在请求方式是短连接请求方式的情况下,存储目标音频。

在该实施例中,存储单元160在确定目标服务平台后,还需要确定终端的请求方式,如果终端的请求方式是短连接请求,那么存储目标音频数据,以加速后续访问。

进一步地,在终端的请求方式为短连接请求时,存储单元160可以存储或缓存目标音频数据,而在终端的请求方式为长连接请求时,存储单元160可以缓存目标音频数据。缓存或存储可以在生效的情况下,节约合成时间及对服务平台的网络调用。

进一步地,文件存储名、缓存key名可以参考如下组成,其中vendor表示对应的合成商标记,tts_params指代如语调、语速等参数:{md5_of_text}.{vendor}.{version_of_vendor}.{md5_of_tts_params}。

更进一步地,当某个服务平台进行了版本升级时,通过调整version_of_vendor字段来使对应历史数据失效。

更进一步地,可以将过程中所有可配置的参数项(如缓存时间、可选合成商、合成商版本号、备选合成的延时等)放入实时配置系统(如zookeeper等工具),来支持系统的动态调整。

如图6所示,根据本发明的第三方面,提供了一种电子设备200,包括处理器210和存储器220,处理器210用于执行存储器220中存储的程序或指令时实现如上述第一方面的任一设计的语音合成代理方法的步骤,因而具备该语音合成代理方法的全部有益效果,在此不再赘述。

根据本发明的第四方面,提供了一种可读存储介质,其上存储有程序或指令,程序或指令被处理器210执行时实现如上述第一方面的任一设计的语音合成代理方法的步骤,因而具备该语音合成代理方法的全部有益效果,在此不再赘述。

可读存储介质可以包括能够存储或传输信息的任何介质。可读存储介质的例子包括电子电路、半导体存储器设备、rom、闪存、可擦除rom(erom)、软盘、cd-rom、光盘、硬盘、光纤介质、射频(rf)链路,等等。代码段可以经由诸如因特网、内联网等的网络被下载。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者计算机设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者计算机设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者计算机设备中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和计算机设备的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。

上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

再多了解一些

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

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

相关文章

  • 日榜
  • 周榜
  • 月榜