问题描述
我正在使用Simple WebRTC使用React + Typescript开发视频会议应用程序,我想实现一个视图,以允许用户选择其音频输入,输出以及视频设备。
我注意到该库处理自己的具有设备和媒体字段的商店。该库还具有显示音频和视频可用设备的组件,但是我看不到任何更改存储中媒体的操作,因为这就是SWRTC.Video
组件(我用来显示视频屏幕)接收以显示视频以及音频。
我所拥有的是deviceid
上的<select>
,但是我需要deviceid中的媒体将其作为道具传递给SWRTC.Video
组件。我一直在阅读https://docs.simplewebrtc.com/上的文档,但是我看不到有任何支持它的示例,因此他们也没有几个示例,因此,如果有人以前从事过类似的工作,也许会对我有所帮助。
解决方法
用户navigator.mediaDevices.enumerateDevices()
获取所有设备。每个设备都有一个字段deviceId
。当您请求使用navigator.mediaDevices.getUserMedia(opts)
进行流传输时,可以将选项deviceId
添加到选项中以获取所选设备。
示例选择:
const opts = {
audio: {
deviceId: 'someID'
}
}