【问题标题】:Add audio in the middle of Alexa Skill SSML speak block在 Alexa Skill SSML 说话块中间添加音频
【发布时间】:2019-01-03 22:40:09
【问题描述】:

我正在使用 Node.js Alexa 库:alexa-sdk

我正在尝试在 SSML 响应中间嵌入音频。我可以在 SSML 响应的末尾添加音频标签,但不能在中间添加。

例如:

<speak> 
    You did great! 
    <audio src='https://s3.amazonaws.com/ask-soundlibrary/human/amzn_sfx_crowd_applause_05.mp3'/> 
    I had a lot of fun, I hope you did too! 
</speak>

当我将上述内容作为 SSML 发送时,Alexa 模拟器会合成“你做得很好!”并停在那里。

有谁知道我做错了什么或者我如何才能做到这一点?在 SSML 文本中间嵌入音频标签不起作用吗?

即使是 alexa 文档也有一个中间有音频的示例,这对我在模拟器中不起作用。

谢谢

附:差不多10天前我在亚马逊论坛上问过这个问题,没有回复,这并不少见(不是最活跃的求助场所)

【问题讨论】:

  • 当我粘贴到 mp3 文件浏览器上方时。我收到拒绝访问错误。你确定可以在最后添加并正确播放吗?
  • 尝试将您的 mp3 文件替换为任何其他文件,例如s3.amazonaws.com/ask-soundlibrary/home/… 让我知道这是否有效
  • 感谢您的回复。即使您粘贴的链接也会导致访问被拒绝。音频文件只会在 Alexa 上下文中播放。在技​​能或 lambda 函数内部,亚马逊通过某种身份验证标头在幕后传递,以允许文件可访问。就像我上面提到的,如果我删除它后面的所有文本,文件就会正常播放。所以我认为这不是文件问题。

标签: alexa alexa-skills-kit alexa-skill alexa-voice-service ssml


【解决方案1】:

我尝试了您的 SSML,它工作正常。我在 Alexa 测试模拟器的 Voice &amp; Tone 选项卡中对其进行了测试。

两个 mp3 文件(评论中的一个)都按预期顺序播放。

<speak> 
    You did great! 
    <audio src='https://s3.amazonaws.com/ask-soundlibrary/home/amzn_sfx_door_open_01.mp3'/>
    I had a lot of fun, I hope you did too! 
    <audio src='https://s3.amazonaws.com/ask-soundlibrary/human/amzn_sfx_crowd_applause_05.mp3'/>
</speak>

&lt;audio&gt; 标签在哪里并不重要。即使把它放在&lt;speak&gt; 标签之后也可以工作

<speak> 
    <audio src='https://s3.amazonaws.com/ask-soundlibrary/human/amzn_sfx_crowd_applause_05.mp3'/>
    You did great! 
    I had a lot of fun, I hope you did too! 
</speak>

【讨论】:

  • 突然间,这开始起作用了。我真的有一个星期没有碰我的代码,现在又试了一次。诡异的。我现在面临的问题是如果我把音频标签放在开头。我可以看到 SSML 包含我想要它说的内容,但是,它并没有大声说出任何内容。你介意在&lt;speak&gt; 之后移动音频标签,看看它是否仍然适合你吗?谢谢
  • 非常感谢,我正试图弄清楚在哪里进行测试。在Voice &amp; Tone 部分尝试对我有帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-10-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-06
相关资源
最近更新 更多