有没有同等的方法来获取连接到PC的视频设备列表?除了内置摄像头外,我还有一个外部摄像头连接。
mediastreamtrack.getsources可以在chrome上运行,但是火狐报告"TypeError: MediaStreamTrack.getSources不是一个函数“。我正在运行firefox版本25.0.1
谢谢!
发布于 2018-05-30 17:10:45
请使用下面提到的代码。它工作正常,给出了所有音频和视频设备的列表。
navigator.mediaDevices.enumerateDevices()
.then(function (devices) {
devices.forEach(function (device) {
var option = document.createElement('option');
option.value = device.deviceId;
if (device.kind === 'videoinput') {
option.text = device.label || 'camera' + (videoSelect.length + 1);
videoSelect.appendChild(option);
} else if (device.kind == 'audioinput') {
option.text = device.label || 'mic' + (audioSelect.length + 1);
audioSelect.appendChild(option);
}
});
})
.catch(function (err) {
console.log(err.name + ": " + err.message);
});发布于 2015-10-09 22:30:05
火狐和Chrome现在都支持MediaDevices.enumerateDevices()。
发布于 2013-11-22 05:24:13
从夜间28.0a1开始,火狐还没有任何与Chrome的MediaStreamTrack.getSources等同的东西。所以,不,目前还没有办法在Firefox中获得本地音频和视频设备的列表。
我询问了火狐WebRTC实现的开发人员,他们说这是一个计划中的功能,但没有关于何时落地的预计时间。如果您感兴趣,可以查看irc log (滚动到16:17)。
另外,这里是draft W3C spec中的相关部分。
https://stackoverflow.com/questions/20110611
复制相似问题