【问题标题】:Latency in mp3 live streaming on Google home assistantGoogle Home Assistant 上 mp3 直播的延迟
【发布时间】:2019-01-18 10:35:00
【问题描述】:

我正在尝试播放 mp3 直播,我正在使用 Action on Google 指南中显示的“媒体响应”,代码如下:

if(!conv.surface.capabilities.has('actions.capability.MEDIA_RESPONSE_AUDIO')) {
  conv.ask('Sorry, this device does not support audio playback.');
}
else{
  conv.ask(new MediaObject({
    name: 'Radio one',
    url: 'my_streaming_url.mp3',
    description: 'A funky Jazz tune',
  }));
  conv.ask(new Suggestions(['Radio two']));
}

一切正常,但在 Google Home 和 Google Home mini 上存在大约 20 秒的音频延迟。 Google Assistant Android 应用程序和 Google 模拟器上的操作没有延迟,如果“url”是 mp3 文件也没有延迟。知道为什么会出现这种延迟吗?

【问题讨论】:

    标签: node.js actions-on-google


    【解决方案1】:

    Google Home 的媒体播放器似乎会在启动前缓冲大约 20-30 秒的可播放音频。

    如果您控制 Icecast 流服务器,请增加 <limits /> 部分或 <mount /> 中的 <burst-size> 值。默认设置为 65536 字节。

    您可以通过以下计算为您的流计算出理想的突发大小限制(以字节为单位):

    bitrateKbps * bufferSeconds * 1024 / 8

    对于 128kbps 流,请尝试 327680。

    (另外,请确保服务器的<queue-size /> 大于burst-size)

    【讨论】:

      【解决方案2】:

      直播网址的 20 秒延迟似乎是 google home (mini) 和 chromecast 的问题。不仅是从谷歌助手发起的:在使用谷歌演员 API 时也是如此。我不知道他们为什么要使用这么多的缓冲。

      【讨论】:

        猜你喜欢
        • 2013-03-31
        • 1970-01-01
        • 1970-01-01
        • 2022-08-20
        • 1970-01-01
        • 2015-10-10
        • 1970-01-01
        • 1970-01-01
        • 2016-05-05
        相关资源
        最近更新 更多