如何制作 Alexa 'sing' 铃儿响叮当?

How to make Alexa 'sing' jingle bells?

我正在创建一个季节性的 Alexa 技能,其中会有 'how many sleeps till Christmas'、'am I on the good list' 等意图;我还想请 Alexa 铃儿响叮当。关键是让她

在我的技能中,为了 singJingleBells 意图,我将 Jingle Bells 的歌词输出为语音响应,但 Alexa 读取 歌词。 (如果我诚实的话,正如预期的那样)。

我发现有一种(大概是亚马逊官方的)技能可以让她铃儿响叮当。你可以说 Alexa, sing Jingle Bells

我希望我的技能也能做到这一点。

我猜亚马逊的技能是通过 SSML 语音来实现的,或者更有可能是通过 SSML audio 标签或 SSML speechcon interjection[=18= 预先录制的 MP3 ]

有没有 discover/capture Amazon 技能的输出响应,以便我可以理解(并复制!)它的工作方式?


利用 Steve 的想法,我可以使用 echosim.io 上的控制台来捕获 SpeechSynthesizer。不确定这是否让我更接近?

{
    "directive": {
        "header": {
            "dialogRequestId": "dialogRequestId-6688b290-80d3-4111-a29d-4c60c6d47c31",
            "namespace": "SpeechSynthesizer",
            "name": "Speak",
            "messageId": "c5771361-2a80-4b00-beb6-22a783a7c504"
        },
        "payload": {
            "url": "cid:b438a3ea-d337-4c5f-b719-816e429ed473#Alexa3P:1.0/2017/11/06/20/94a9a7c4112b44568bff10df69d30825/01:18::TNIH_2V.f000372f-b147-4bea-81fb-4c2e7de67334ZXV/0_359577804",
            "token": "amzn1.as-ct.v1.Domain:Application:Knowledge#ACRI#b438a3ea-d337-4c5f-b719-816e429ed473#Alexa3P:1.0/2017/11/06/20/94a9a7c4112b44568bff10df69d30825/01:18::TNIH_2V.f000372f-b147-4bea-81fb-4c2e7de67334ZXV/0",
            "format": "AUDIO_MPEG"
        }
    }
}

您可以通过 标签使用 'Jingle Bells' 的音频剪辑。单个输出响应中最多可以使用 5 个音频标签。

音频剪辑必须遵循以下几点。

  • MP3 必须托管在可通过互联网访问的 HTTPS 端点。 HTTPS 是必需的,托管 MP3 文件的域必须提供有效、可信的 SSL 证书。不能使用自签名证书。
  • MP3 不得包含任何客户特定信息或其他敏感信息。
  • MP3 必须是有效的 MP3 文件(MPEG 版本 2)。
  • 音频文件不能超过九十 (90) 秒。
  • 比特率必须为 48 kbps。请注意,此比特率在用于语音内容时会产生良好的效果,但对于音乐来说通常质量不够高。
  • 采样率必须为 16000 Hz。

    请参阅此 link 以获得更清楚的信息,Audio Tag

如果我没理解错的话,您想将 Alexa 音频输出为 .mp3 文件(或其他格式),以便可以在自定义技能中再次播放。

如果这是目标,您需要使用 Alexa 语音服务 (AVS),更具体地说 SpeechSynthesizer Interface 来获取音频输出,然后在您的自定义技能响应中使用。

因此,您将同时使用 Alexa Skills Kit(用于技能)和 Alexa 语音服务 (AVS) 来获取音频。