safari 13.1 navigator.mediaDevices.enumerateDevices()仅返回音频设备
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了safari 13.1 navigator.mediaDevices.enumerateDevices()仅返回音频设备相关的知识,希望对你有一定的参考价值。
我在桌面Safari 13.1版本上遇到问题。如果我在Web检查器(带有带摄像头和麦克风的常规Macbook)中打开控制台,并在任何类型的网站上执行此命令:
navigator.mediaDevices.enumerateDevices()
第一次它将以视频输入和音频输入返回Promise结果。第二次它将仅返回2个音频输入。视频输入消失。
不幸的是,我在检查解决方案上的可用设备时多次调用此方法。
任何想法为什么会发生,即使我多次调用它,也如何获得有关设备的准确信息?See the results here
我在运行ios 13的iPad上也发现了相同的问题。
似乎您需要先请求访问摄像机才能看到正确的设备列表。
navigator.mediaDevices.getUserMedia( video: true )
这将提示您访问摄像机(您必须使用HTTPS或本地主机)。
授予许可,然后再次运行它,您应该看到返回的诺言中列出的videoinput
设备:
navigator.mediaDevices.enumerateDevices()
我想这是一项隐私保护功能,如果没有先征得您的许可,网站就无法检查相机是否存在。
以上是关于safari 13.1 navigator.mediaDevices.enumerateDevices()仅返回音频设备的主要内容,如果未能解决你的问题,请参考以下文章
无法在 Xcode 13.1 中查看 StoryBoard 或项目目标
在linux openSUSE 13.1中安装supervisor时出错
如何更改 OpenSuSE 13.1 上的默认 MySQL 用户
RDS升级postgres 13.1版,不支持的DB Instance Class