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);
  });
相关推荐
m0_471199633 分钟前
【JavaScript】前端如何处理服务端部分接口加解密
开发语言·前端·javascript
离别又见离别21 分钟前
vue使用js渲染组件案例(公用打印组件动态渲染)及静默打印实现
前端·javascript·vue
徐同保41 分钟前
n8n项目编译时取消类型检测,提交代码时取消校验
开发语言·前端·javascript
GIS遥遥1 小时前
如何用 Cesium 实现楼栋单体化?前端 WebGIS 实战教程
前端·javascript·cesium·三维gis开发
三小河1 小时前
React 插槽(Slot)完全指南:从基础到实战的灵活组件通信方案
前端·javascript·面试
布茹 ei ai1 小时前
1、基于 GEE 的 NDVI 交互式时序可视化与趋势分析工具
javascript·gee·遥感图像处理·谷歌云平台
```???1 小时前
666666999999
javascript·tcp/ip·node.js
我命由我123451 小时前
微信小程序 - 页面返回并传递数据(使用事件通道、操作页面栈)
开发语言·前端·javascript·微信小程序·小程序·前端框架·js
于谦2 小时前
git提交信息也能自动格式化了?committier快速体验
前端·javascript·代码规范
小高0072 小时前
React 避坑指南:彻底搞定不必要的重新渲染
前端·javascript·react.js