在reactjs中录制时切换音频和视频设备



我正在创建一个演示应用程序,其中用户可以使用ReactJs录制视频。我可以得到设备列表,并录制视频。我卡住了,找不到让用户在录制时切换相机的解决方案。

到目前为止,这就是我如何获得视频和音频流

function getStream() {
const stream  =  navigator.mediaDevices.getUserMedia({audio: {deviceId: 'audioDeviceId'}, video: {deviceId : 'videoDeviceId'})
}

通过使用上面的,我能够在录音未启动时获得所选设备的流。问题是当用户在录制时切换音频或视频设备…我每次都得到一个新的流,所以我失去了以前的流,只有新生成的流被记录。

如果有人能帮助我处理用户可以在录音时切换设备的情况,我将非常感激。或者是否有其他方法来切换设备。无论如何,谢谢你的帮助

是否尝试添加/删除音轨?我偶然发现了类似的情况。在我的场景中,如果用户切换到不同的视频设备,我将获得新的流,并从中提取视频轨道。然后我从旧的流中删除旧的视频轨道,并添加这个新获得的轨道。如果这是有意义的,我可以把我的代码片段张贴在这里。

最新更新