WebRTC - 如何识别MediaStream(轨道)的源ID(设备ID)

时间:2016-09-28 10:06:15

标签: javascript webrtc

建立WebRTC连接后,我可以getLocalStreamsgetRemoteStreams

流有自己的ID。每个流都由音频/视频轨道MediaStreamTrack组成。

我希望能够识别用于每个曲目的设备/来源(ID),以避免添加已添加到连接中的流。

换句话说,我正在考虑在connection.onaddstream中检查我的本地或远程流列表中是否已存在流跟踪。

有什么建议吗?

3 个答案:

答案 0 :(得分:6)

对于每个MediaStreamTrack,您可以致电.getCapabilities().deviceId以获取deviceId。

但我不确定您是否可以在同一浏览器中使用相同的设备ID两次。

答案 1 :(得分:2)

音频/视频轨道上的

.getSettings()。deviceId(MediaStreamTrack的实例)将返回与从enumerateDevices()返回的deviceId相同的deviceId。

答案 2 :(得分:0)

您可以使用MediaStreamTrack的MediaStreamTrack.id属性。它返回包含轨道的唯一标识符(GUID)的DOM字符串;它是由浏览器生成的。