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