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);
  });
相关推荐
qq_4260039616 分钟前
多语言新增语种全量测试策略的测试范围
前端·javascript·python·自动化
阮小贰41 分钟前
干支编码的确定性实现:节气切分 + 1000 条溯源断语(附 JS 源码)
开发语言·javascript·ecmascript
Mh1 小时前
听说我兄弟喜欢跑车,所以必须安排上
前端·javascript·vue.js
qq_426003961 小时前
多语言新增语种全量测试策略
前端·javascript·python·pycharm·自动化
黄敬峰1 小时前
从零搭建 Next.js 单词管理系统:Supabase + Drizzle ORM + shadcn/ui 全栈实战
javascript·面试
nicole bai1 小时前
前端封装el-table及注意点
前端·javascript·vue.js
晨枫阳1 小时前
Vue 前端构建工具链完全理解指南
前端·javascript·vue.js
言乐61 小时前
Python关于老游复刻与创新2
前端·javascript·css·python·css3
Csvn12 小时前
原型链、this 与闭包内存:三座深水区一次打通(含内存泄漏排查实战)
前端·javascript