文本到语音(TTS)


文本到语音(TTS)使家庭助理能够与您交谈。必威是什么

配置TTS平台

首先,将以下几行添加到您的configuration.yaml(示例Google):

#示例Configuration.yaml Google TTS服务TTS-平台谷歌翻译

根据您的设置,您可能需要设置外部URL(external_url) 在 - 的里面配置或在此组件的参数中。

以下可选参数可以与任何平台一起使用。但是,TTS集成只会在第一个配置平台的配置下寻找全局设置:

配置变量

缓存 布尔 ((选修的,默认:正确

允许TTS缓存语音文件到本地存储。

cache_dir 细绳 ((选修的,默认:TTS

文件夹名称或用于缓存文件的文件夹。

time_memory 整数 ((选修的,默认:300

是时候将语音数据保存在内存中,以便在媒体播放器上快速播放。最小值为60 s,最大为57600 s(16小时)。

base_url 细绳 ((选修的,默认:内部URL的值

使用的基本网址反而在家庭助理中的一套必威是什么配置。它是由TTS零件。特别是,您需要包括协议方案http://或者https://和正确的端口号。它们不会自动为您添加。

服务名称 细绳 ((选修的

定义服务名称。

默认:

服务名称默认设置为 _说。例如,对于Google_translate tts,其服务名称默认为Google__translate_say

上面的扩展示例看起来像以下样本:

#示例configuration.yaml输入Google Translate TTS服务TTS-平台谷歌翻译缓存真的cache_dir/TMP/TTStime_memory300base_urlhttp://192.168.0.10:8123服务名称Google_say

在上面的示例中base_url是对此特定TTS平台配置的定制。这并不建议您将设置的内部URL用于核心家庭助手配置。必威是什么下一节概述了您可能需要这样做的原因。

您什么时候需要在此处设置base_url?

一般答案是“每当全局内部URL设置在配置家庭助必威是什么理不足以允许运行的服务”。这服务通过生成包含与传递给服务的文本相对应的语音的媒体文件来运行。然后服务将消息发送到媒体设备,其中指向文件。该设备在URL上获取媒体文件并播放媒体。媒体设备,网络配置和家庭助手配置的某些组合可以使设备无法获取媒体文件。必威是什么

以下各节描述了媒体设备遇到的一些问题。

自签名证书

当您的家庭助理实例配置为通过SSL访问,并且您在内必威体育存款部URL上必威是什么使用自签名证书时,就会发生此问题。

TTS服务将发送https://向媒体设备的URL,将检查证书并拒绝证书。因此,它不会播放您的文件。如果您可以让设备接受您的证书,则可以播放该文件。但是,许多媒体设备不允许更改设置接受自签名的证书。最终,您的选择可能是将文件提供给本地设备http://而不是https://

Google铸造设备

Google Cast设备(Google Home,Chromecast等)提出以下问题:

  • 他们拒绝自我签名的证书

  • 它们不使用包含由本地命名手段建立的主机名的URL。假设您的家庭助理实例必威体育存款正在当地制必威是什么造的机器上运行。您本地网络上的所有机器都可以访问。但是,尽可能尝试,您的铸件设备不会从您的机器。那是因为您的演员设备忽略了您本地的命名设置。在此示例中,服务创建一个URLhttp://ha/path/to/media.mp3(或者https:// ...如果您使用的是SSL)。如果你是不是然后使用SSL设置包含服务器的IP地址的内部URL围绕此问题工作。通过使用IP地址,铸件设备不必解析主机名。

  • 如果您使用的是SSL(例如,https://yourhost.example.org/...) 那么你必须使用证书中的主机名(例如,base_url:https://yourhost.example.org)。您不能使用IP地址,因为证书对IP地址无效,并且铸件设备将拒绝该连接。

服务说

服务支持语言在某些平台上选项对于设置,即声音,运动,速度等。语音文字设置为信息。由于发行0.92,因此可以在配置中定义服务名称服务名称选项。

对所有人说媒体播放器设备实体:

#当您使用其他平台时,将Google_translate_say替换为 _SAY。服务tts.google_translate_say数据ENTITY_ID全部信息可能力量你。”

Media_player.floor设备实体:

服务tts.google_translate_say数据ENTITY_IDMedia_player.floor信息可能力量你。”

Media_player.floor法语设备实体:

服务tts.google_translate_say数据ENTITY_IDMedia_player.floor信息que洛杉矶力量所以AVECtoi。”语言fr”

使用模板:

服务tts.google_translate_say数据信息温度{{state('sensor.temperature')}}。缓存错误的

缓存

集成有两个缓存。两个缓存都可以通过缓存平台配置或服务调用中的选项。长时间的缓存将位于文件系统上。短时间后,将自动清洗用于媒体播放器的快速响应中的内存缓存。

REST API

post /api /tts_get_url

将URL返回到生成的TTS文件。需要平台和消息。

{“平台”“ Amazon_Polly”,,,,“信息”“我现在说话”}

如果文件生成,则返回代码为200。消息主体将包含带有URL的JSON对象。

{“小路”“ /API/TTS_PROXY/265944C108CBB00B2A621BE5930513E03A0BBB2CD_EN_-_DEMO.MP3”,,,,“ url”“ http://127.0.0.0.1:8123/api/tts_proxy/265944C108CBBBB00B2A621BE5930513E03E03A0BBBBBB2CD_EN_EN__DEMO.MP3”}

样本卷曲命令:

$卷曲-X邮政-H“授权:持票人<访问令牌>”\ \-H“内容类型:应用程序/JSON”\ \-d'{“消息”:“我现在说的”,“平台”:“ Amazon_Polly”}'\ \http:// localhost:8123/api/tts_get_url