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);
  });
相关推荐
川冰ICE4 小时前
JavaScript进阶③|Map_Set_WeakMap_WeakSet,新型数据结构
开发语言·javascript·数据结构
小雨下雨的雨5 小时前
鸿蒙PC用Electron框架 实现 房产交易系统核心算法深度解析
前端·javascript·算法·华为·electron·鸿蒙系统
LongJ_Sir5 小时前
Cesium-浅水方程的简单实现
javascript
丷丩5 小时前
MapLibre GL JS第36课:一个Source配置多个图层样式
javascript·gis·map·mapbox·maplibre gl js
老毛肚5 小时前
jeecgboot vue Pinia 拆分01
前端·javascript·vue.js
梦想的颜色13 小时前
TypeScript 完全指南(下):从类型体操到生产级配置
前端·javascript·typescript
888CC++16 小时前
如何在 C 语言中进行程序调试?
前端·javascript·算法
kyriewen18 小时前
我招了一个“Prompt工程师”来写前端,结果项目差点崩了
前端·javascript·面试
小新11018 小时前
从零开始 Vue.js
前端·javascript·vue.js
Delicate19 小时前
JavaScript的“变脸”艺术:类型转换戏法大揭秘
javascript