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);
  });
相关推荐
yanyu-yaya2 小时前
速学兼复习之vue3章节3
前端·javascript·vue.js·学习·前端框架
林恒smileZAZ2 小时前
前端拖拽,看似简单,其实处处是坑
前端·javascript·vue.js
跟着珅聪学java2 小时前
JavaScript中编写new Vue()实例的完整教程(Vue 2.x)
前端·javascript·vue.js
Marshmallowc2 小时前
React 合成事件失效?深度解析 stopPropagation 阻止冒泡无效的原因与 React 17+ 事件委派机制
前端·javascript·react.js·面试·合成事件
2501_948120153 小时前
基于Vue 3的可视化大屏系统设计
前端·javascript·vue.js
Jinuss4 小时前
源码分析之React中createFiberRoot方法创建Fiber根节点
前端·javascript·react.js
Jinuss4 小时前
源码分析之React中ReactDOMRoot实现
前端·javascript·react.js
摘星编程4 小时前
React Native鸿蒙版:React Query无限滚动
javascript·react native·react.js
月空MoonSky6 小时前
解决使用Notepad++出现异型字或者繁体字体问题
java·javascript·notepad++