WebRtc05:设备管理

打印 上一主题 下一主题

主题 961|帖子 961|积分 2883

获取音视频设备

enumerateDevices

基本格式

  1. var ePromise = navigator.mediaDevices.enumerateDevices();
复制代码
MediaDevicesInfo

属性:
deviceID 设备ID
label 设备的名字
kind 设备的种类
groupID 两个设备groupID相同,阐明是同一个物理设备
Promise

用于处理异步操纵的对象,表示一个异步操纵的终极完成(或失败)及其结果值

先处理handle,然后成功则执行resolve,否则执行reject
例子

index.html
  1. <html>
  2.     <head>
  3.         <title> WEBRTC get audio and viedo devices</title>
  4.     </head>
  5.     <body>
  6.         <script src="./js/client.js"></script>
  7.     </body>
  8. </html>
复制代码
client.js
  1. 'use strict'
  2. if (!navigator.mediaDevices
  3.     || !navigator.mediaDevices.enumerateDevices) {
  4.         console.log('enumerateDevices is not supported');
  5. } else {
  6.     navigator.mediaDevices.enumerateDevices()
  7.         .then(gotDevices)
  8.         .catch(handleError);
  9. }
  10. function gotDevices(deviceInfos) {
  11.     deviceInfos.forEach(function(deviceInfos) {
  12.         console.log(deviceInfos.kind + ": label= "
  13.             + deviceInfos.label + ": id= "
  14.             + deviceInfos.deviceId + ": groupId= "
  15.             + deviceInfos.groupId
  16.         );
  17.     });
  18. }
  19. function handleError(err) {
  20.     console.log(err.name + " : " + err.message);
  21. }
复制代码
实测没有利用https时,navigator.mediaDevices没有收效,直接打印enumerateDevices is not supported,为了利用https,需要备案网站,而备案又会考核很久,所以最好尽快备案

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

八卦阵

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表