iPhone连续相机在Safari的Web API中不显示



iPhone连续相机不显示在MediaDevices enumerateDevices()

我正在使用简单的代码枚举Safari上的媒体设备

navigator.mediaDevices.getUserMedia({ audio: true, video: true })
.then(stream => {
if (!navigator.mediaDevices?.enumerateDevices) {
console.log("enumerateDevices() not supported.");
} else {
// List cameras and microphones.
navigator.mediaDevices.enumerateDevices()
.then((devices) => {
devices.forEach((device) => {
console.log(`${device.kind}: ${device.label} id = ${device.deviceId}`);
});
})
.catch((err) => {
console.error(`${err.name}: ${err.message}`);
});
}
})
.catch(err => console.error("queryMediaDevices:Error", err));

但我只是拿iPhone麦克风,而不是相机。但当我进入另一个网络应用程序,或者去参加谷歌会议时,我可以选择手机的摄像头并使用它。

当前在macOS 13.0和iOS 16.2上。

我错过什么了吗?

有一个"魔术姿势"您的相机需要在浏览器中检测您的连续相机:

出于隐私考虑,基于浏览器的视频应用程序只有在手机处于"魔法姿势"时才能看到手机。对风景,屏幕关闭,锁定,不动(不手持),和无阻碍的相机。这个姿势也用于触发支持应用程序中的自动相机选择,如FaceTime和Photo Booth。

该问题已通过将macOS升级到13.1和safari升级到16.2解决。现在一切正常。

最新更新