【问题标题】:navigator.mediaDevices.enumerateDevices() only Returns Default Devices on Safari?navigator.mediaDevices.enumerateDevices() 仅返回 Safari 上的默认设备?
【发布时间】:2018-07-17 17:52:07
【问题描述】:

在 Firefox 和 Chrome 上,

navigator.mediaDevices.enumerateDevices()

...返回所有连接的音频和视频设备的列表。

但在桌面 Safari 上,至少在我的系统上,它只返回默认设备。

这是预期的行为吗?

【问题讨论】:

  • 这个问题你解决了吗?
  • 一年后的行为似乎仍然相同。

标签: webrtc


【解决方案1】:

我自己也遇到了这个问题。

AFAICT Safari 仅在调用 getUserMedia 之前获取默认设备。

simpl.info/sources 的演示处理了这个问题。

【讨论】:

    【解决方案2】:

    另一个选项是允许您的网站从 Safari 网站设置访问您的相机和麦克风,请参阅此处了解如何操作:

    https://www.macrumors.com/how-to/access-website-settings-in-safari/.

    之后拨打navigator.mediaDevices.enumerateDevices() 将列出您所有的音频/视频设备,即使无需先拨打getuserMedia

    【讨论】:

      猜你喜欢
      • 2020-08-21
      • 1970-01-01
      • 1970-01-01
      • 2018-03-20
      • 2019-07-28
      • 2021-03-08
      • 1970-01-01
      • 1970-01-01
      • 2016-06-19
      相关资源
      最近更新 更多