浏览器自动播放策略

navigator.getAutoplayPolicy() 直接查询是否能自动播放


// 非用户交互调用 play() 也符合自动播放策略

无声可以自动播放,否则需要用户交互才能播放
用户可能设置自动播放策略,所以必要时需要进行能否自动播放的检测

  • 不包含音频轨道或者静音允许自动播放
  • 已经自动播放时动态变化为不满足自动播放策略时将暂停播放

  • 基于每个元素授予自动播放限制
  • 屏幕外无声视频自动暂停
  • 无声音轨也是音轨,可能对自动播放造成影响

  • 无声可以自动播放,否则需要用户交互才能播放
  • 已安装的 PWA 允许自动播放
  • 桌面端也根据媒体参与指数(Media Engagement Index, MEI) 来决定这个视频是否自动播放
    • 用户在媒体上停留时间超过了 7秒以上
    • 音频必须是展示出来,并且没有静音
    • 与 video 之间有过交互
    • 媒体的尺寸不小于 200x140.
  • WebAudio API 满足下面两个要求将恢复播放:
    • 用户与页面进行了交互
    • 调用了 SourceNode 的 start() 方法
// 处于后台运行状态时,异步调用 `play()` 会在 app 聚焦时才完成,bug link

Firefox 自动播放会 popup 提示