2

我正在尝试获取所有活动的视频设备。但取而代之的是,我收到了之前连接的所有视频设备。我的目标是只获取当前连接并准备好使用的视频设备。

我尝试使用 navigator.mediaDevices.enumerateDevices(); 获取所有活动设备,但我收到了很多不活动的设备。

           navigator.mediaDevices.enumerateDevices()
                .then(function(devices) {
                    devices.forEach(function (device) {
                        if (device.kind === "videoinput") {
                                alert(device.kind + ": " + device.label +
                                " id = " + device.deviceId);
                        }
                  });
                })
                .catch(function(err) {
                  alert(err.name + ": " + err.message);
                });
4

1 回答 1

0

enumerateDevices 返回(根据操作系统)连接到系统的所有设备(请参阅规范

如果您想知道当前正在使用哪些设备(通过同一网页),您必须在 getUserMedia 解析时自己跟踪这一点。

于 2019-08-08T11:00:53.093 回答