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);
  });
相关推荐
还算善良_12 分钟前
【Vue】vue3实现文件预览组件(预览服务使用kkfileview)
javascript·vue.js·ecmascript
七夜zippoe15 分钟前
基于ReAct框架的智能体构建实战 - 从原理到企业级应用
前端·javascript·react.js·llm·agent·react
alamhubb17 分钟前
vue也支持声明式UI了,向移动端kotlin,swift看齐,抛弃html,pug升级版,进来看看新语法吧
前端·javascript·前端框架
Composure20 分钟前
在 UmiJS + Vue 3 项目中实现 WebP 图片自动转换和优化
前端·javascript
Neptune128 分钟前
js入门指南之Promise:从''承诺''到理解,告别回调地域
前端·javascript
UIUV38 分钟前
JavaScript流式输出技术详解与实践
前端·javascript·代码规范
ujainu1 小时前
Flutter入门:Dart基础与核心组件速成
javascript·flutter·typescript
吃好喝好玩好睡好1 小时前
OpenHarmony混合开发:Flutter+Electron实战
javascript·flutter·electron
OC溥哥9991 小时前
2D,MC像素风跑酷游戏用HTML实现
javascript·游戏·html
小徐不会敲代码~1 小时前
Vue3 学习
前端·javascript·vue.js·学习