我正在尝试构建一个函数来通过Javascript获取浏览器选择的麦克风名称。就像我们在系统中有几个麦克风并且浏览器选择了一个麦克风一样,我需要知道他的名字才能在其他功能中使用它。
我尝试了getUserMedia方法,但我无法弄清楚如何获取麦克风名称。而且,正如我在一些文章中读到的那样,与谷歌浏览器存在一些不兼容的问题。
有没有其他方法可以获取此信息?
答案 0 :(得分:1)
<强> navigator.mediaDevices.enumerateDevices()强>
mediaDevice.label
navigator.mediaDevices.enumerateDevices()
.then(function(devices) {
devices.forEach(function(device) {
console.log(device.kind + ": " + device.label +
" id = " + device.deviceId);
});
})
Chrome 45,Firefox 39支持
已过时
MediaStreamTrack.label
MediaStreamTrack.getSources(function(sourceInfos) {
for (var i = 0; i != sourceInfos.length; ++i) {
var sourceInfo = sourceInfos[i];
console.log(sourceInfo.id, sourceInfo.label);
}
});
在Chrome 45中已弃用,已在Chrome 47中删除。
getUserMedia必须在“enumerateDevices&#39;之前调用或者&#39; getSources&#39;方法 强>