有时,在开发 Alexa 技能并对我的服务的响应进行编程时,Alexa 会读错我的回复中的一个词,使用户感到困惑。
例如,如果我想让 Alexa 用不同的语言说一个单词(也许是为了语言学习技能),我如何告诉 Alexa 如何正确发音这个单词,而不是应用英语发音规则?
这也适用于发音奇怪的英语单词;有没有办法向 Alexa 口述正确的发音,或者用正确的自定义声音替换它?我是否需要使用额外的标记或 API 调用?
有时,在开发 Alexa 技能并对我的服务的响应进行编程时,Alexa 会读错我的回复中的一个词,使用户感到困惑。
例如,如果我想让 Alexa 用不同的语言说一个单词(也许是为了语言学习技能),我如何告诉 Alexa 如何正确发音这个单词,而不是应用英语发音规则?
这也适用于发音奇怪的英语单词;有没有办法向 Alexa 口述正确的发音,或者用正确的自定义声音替换它?我是否需要使用额外的标记或 API 调用?
Alexa 支持SSML,这是一种类似于 XML 的语音标记语言。您可以使用 SSML 响应,而不是从您的服务返回纯文本。该<phoneme>
标签是您特别需要的:
音素
为包含的文本提供音素/语音发音。例如,人们可能会以不同的方式发音像“pecan”这样的词。
对于英语单词(尤其是美国英语),如果您给它正确的语音发音,Alexa 应该能够发音任何单词:
下表列出了与音素标签一起使用的受支持符号。这些符号完全涵盖了美国英语的发音。请注意,许多非英语语言需要使用未包含在此列表中的符号,这些符号不受支持。不鼓励使用未包含在此列表中的符号,因为这可能会导致语音合成不理想。
来自Amazon 文档中关于 SSML 的引用。
下面是一个给 Alexa 一个特定发音的例子:
<speak>
<phoneme alphabet="ipa" ph="hɛˈləʊ̯">Hello</phoneme>.
<phoneme alphabet="ipa" ph="bɔ̃.ˈʒuʁ">Bonjour</phoneme>.
</speak>
该<phoneme>
标签支持IPA和X-SAMPA拼音字母表。您通常可以在维基词典或通过 Google找到任何单词的 IPA 拼写。
对于较长的消息,最好使用<audio>
标签并录制自定义语音:
音频标签允许您提供 Alexa 服务可以在呈现响应时播放的 MP3 文件的 URL。您可以使用它在您的服务响应中嵌入简短的预先录制的音频。例如,您可以在文字转语音回复中加入声音效果,或使用与您的品牌相关联的声音提供回复。
引自亚马逊文档<audio>
。