有没有办法在 google 助手上同时说话和播放音频文件
is there a way to speak and play audio file simultaneously on google assistant
我正在使用 dialogflow fulfillment,在我的欢迎意图中,首先播放音频文件,然后机器人说话。
有没有办法让这两个东西同时工作,意味着音频文件应该在后台以低音量播放并且机器人通过音频说出欢迎文字。
app.intent('welcome', (conv) => {
conv.ask(`<speak><audio src="https://actions.google.com/sounds/v1/cartoon/cartoon_cowbell.ogg"></audio><speak>Welcome! What would you like to check?</speak></speak>`);
});
是的,您可以使用 Google 的 SSML 中的 <par>
and <media>
标签来创建同时播放的并行 "tracks" 音频。请注意,这些不是标准的 SSML,而是 Google 扩展。
<par>
标签表示内容全部并行播放。在其中,您通常有多个 <media>
块(尽管您也可以有其他 <par>
块,以及用于连续部分的 <seq>
块)。每个 <media>
块都可以具有指示该块的一些调整的属性(例如音量或起始偏移量),并且包含 <speak>
或 <audio>
块。
所以要按照您的描述进行操作,您可能需要这样的东西:
<speak>
<par>
<media>
<audio src="https://actions.google.com/sounds/v1/cartoon/cartoon_cowbell.ogg"></audio>
</media>
<media>
<speak>Welcome! What would you like to check?</speak>
</media>
</par>
</speak>
Google也提供了一个工具来帮你设计这个:https://actions-on-google-labs.github.io/nightingale-ssml-editor/
我正在使用 dialogflow fulfillment,在我的欢迎意图中,首先播放音频文件,然后机器人说话。
有没有办法让这两个东西同时工作,意味着音频文件应该在后台以低音量播放并且机器人通过音频说出欢迎文字。
app.intent('welcome', (conv) => {
conv.ask(`<speak><audio src="https://actions.google.com/sounds/v1/cartoon/cartoon_cowbell.ogg"></audio><speak>Welcome! What would you like to check?</speak></speak>`);
});
是的,您可以使用 Google 的 SSML 中的 <par>
and <media>
标签来创建同时播放的并行 "tracks" 音频。请注意,这些不是标准的 SSML,而是 Google 扩展。
<par>
标签表示内容全部并行播放。在其中,您通常有多个 <media>
块(尽管您也可以有其他 <par>
块,以及用于连续部分的 <seq>
块)。每个 <media>
块都可以具有指示该块的一些调整的属性(例如音量或起始偏移量),并且包含 <speak>
或 <audio>
块。
所以要按照您的描述进行操作,您可能需要这样的东西:
<speak>
<par>
<media>
<audio src="https://actions.google.com/sounds/v1/cartoon/cartoon_cowbell.ogg"></audio>
</media>
<media>
<speak>Welcome! What would you like to check?</speak>
</media>
</par>
</speak>
Google也提供了一个工具来帮你设计这个:https://actions-on-google-labs.github.io/nightingale-ssml-editor/