WebRtc05:设备管理
获取音视频设备enumerateDevices
基本格式
var ePromise = navigator.mediaDevices.enumerateDevices();
MediaDevicesInfo
属性:
deviceID 设备ID
label 设备的名字
kind 设备的种类
groupID 两个设备groupID相同,阐明是同一个物理设备
Promise
用于处理异步操纵的对象,表示一个异步操纵的终极完成(或失败)及其结果值
https://i-blog.csdnimg.cn/direct/eb5900f19966426a9ca86be196f786e5.png
先处理handle,然后成功则执行resolve,否则执行reject
例子
https://i-blog.csdnimg.cn/direct/003fd04eaee54e8b8ebddee17f6e270b.pngindex.html
<html>
<head>
<title> WEBRTC get audio and viedo devices</title>
</head>
<body>
<script src="./js/client.js"></script>
</body>
</html>
client.js
'use strict'
if (!navigator.mediaDevices
|| !navigator.mediaDevices.enumerateDevices) {
console.log('enumerateDevices is not supported');
} else {
navigator.mediaDevices.enumerateDevices()
.then(gotDevices)
.catch(handleError);
}
function gotDevices(deviceInfos) {
deviceInfos.forEach(function(deviceInfos) {
console.log(deviceInfos.kind + ": label= "
+ deviceInfos.label + ": id= "
+ deviceInfos.deviceId + ": groupId= "
+ deviceInfos.groupId
);
});
}
function handleError(err) {
console.log(err.name + " : " + err.message);
}
实测没有利用https时,navigator.mediaDevices没有收效,直接打印enumerateDevices is not supported,为了利用https,需要备案网站,而备案又会考核很久,所以最好尽快备案
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]