WebRTC中获取当前采集设备的deviceId

在做webRTC项目离不开切换摄像头,但是怎么拿到当前采集的设备id就成了问题,查阅资料后发现官方其实有提供相关方法,简单记录下;

通用玩法获取采集设备id
javascript 复制代码
// 请求访问用户媒体设备
navigator.mediaDevices.getUserMedia({ video: true, audio: true })
  .then((stream) => {
    // 获取视频轨道
    let videoTrack = stream.getVideoTracks()[0];
    if (videoTrack) {
      console.log('视频设备ID:', videoTrack.getSettings().deviceId);

      // 获取音频轨道
      let audioTrack = stream.getAudioTracks()[0];
      if (audioTrack) {
        console.log('麦克风设备ID:', audioTrack.getSettings().deviceId);
      }
    } else {
      console.log('未找到可用的视频设备');
    }
  })
  .catch((error) => {
    console.error('获取媒体流失败', error);
  });
相关推荐
天天向上10241 小时前
vue el-table实现拖拽排序
前端·javascript·vue.js
西西学代码1 小时前
Flutter---回调函数
开发语言·javascript·flutter
卷帘依旧2 小时前
JavaScript 闭包经典问题:为什么输出 10 次 i=10
javascript
柳杉2 小时前
Three.js × Blender:从建模到 Web 3D 的完整工作流深度解析
前端·javascript·数据可视化
用户806138166593 小时前
发布为一个 npm 包
前端·javascript
TT_哲哲4 小时前
小程序双模式(文件 / 照片)上传组件封装与解析
前端·javascript
从文处安4 小时前
「九九八十一难」从回调地狱到异步秩序:深入理解 JavaScript Promise
前端·javascript
进击的尘埃4 小时前
Node.js 子进程管理:child_process 模块的正确打开方式
javascript
angerdream4 小时前
最新版vue3+TypeScript开发入门到实战教程之Pinia详解
前端·javascript·vue.js
怜悯4 小时前
uniapp 如何实现google登录-安卓端
前端·javascript