首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >更换摄像头和麦克风后如何恢复协商?

更换摄像头和麦克风后如何恢复协商?
EN

Stack Overflow用户
提问于 2019-03-28 22:31:05
回答 1查看 111关注 0票数 1

大约一个月前,Stackoverflow的一位合作伙伴帮我解决了一个大问题,比如在一次会议上更换了摄像头和麦克风。这个问题在以下链接中得到了回答:

Using WebRTC how to choose mic and camera?

更换摄像头和麦克风后,以前的媒体流仍处于活动状态。因此,会议中的其他人无法以某种方式接收到我的新流程。

如果有必要,我想知道如何重新协商这一新流程。

我在项目中用于webRTC实现的库是"simplewebRTC“,目前已不再使用。

我用来更改设备的代码完全基于我在上一个问题中实现的内容……

EN

Stack Overflow用户

发布于 2019-03-29 08:02:45

我不知道simpleWebRTC,但在简单的WebRTC中,重新协商是没有必要的。

只需使用sender.replaceTrack()即可。它是异步的,所以同时切换摄像头和麦克风:

代码语言:javascript
运行
复制
navigator.mediaDevices.getUserMedia(constraints) 
  .then(stream => {
    video.srcObject = stream;
    return Promise.all(stream.getTracks().map(track => {
      const sender = pc.getSenders().find((s => s.track.kind == track.kind);
      return sender.replaceTrack(track);
    }));
  })
  .catch(err => console.log(err));

这应该会立即使发送者切换到从新相机和麦克风发送媒体。另一边不会知道其中的区别。

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55400158

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档