当 ontrack 发生时,如何区分谁的曲目在前端?

问题描述 投票:0回答:1

我希望能够与 1 人以上进行群组通话,但我不确定如何确定我正在接收谁的轨迹 如何将元数据添加到从对等方接收的轨道中,并将其映射到正确的视频元素? (用户通过 websocket 连接并在连接到 RTC 之前显示在屏幕上,因此其组件中的视频元素已经存在并显示为隐藏,直到他们向服务器发送 changeSettings tocameraIsOn=true 消息)

我尝试设置单独的轨道 ID、媒体流 ID 等,但这些都是只读的 我尝试在后端设置媒体流id,但最终结果与前端不同 我尝试设置 ssrc,但它没有显示在轨道上

我正在开发一个 SFU 后端,其中前端创建一个 rtcpeerconnection 并将报价/答案发送到服务器,该服务器也创建一个对等连接。然后,它有一个对等连接列表,每当有任何 ontrack 时,都会将该跟踪添加到当前呼叫中的其他对等连接中。编辑:本质上,当人们加入通话时,我希望他们的曲目具有某种元数据(可能是他们的用户名或会话 ID),以便我可以将某人的适当视频元素的 srcObject 设置为新曲目/流

javascript webrtc metadata rtcpeerconnection ontrack
1个回答
0
投票

将一位参与者的所有轨迹放入

MediaStream
流 ID(但不是轨道 ID!)通过连接进行复制:

id
中指定的
MediaStream
属性返回此流唯一的ID,以便可以在
RTCPeerConnection
API的远程端识别流。

您无法将元数据添加到流或轨道本身,但您可以在 Websocket 通道(或

RTCDataChannel
)上发送流 ID,以将其与您的用户相关联。您可以尝试在后端弄乱曲目
label
或流 id,但我不推荐这样做。

© www.soinside.com 2019 - 2024. All rights reserved.