0

我被理解RTCPeerConnection.addStream()为已弃用,而addTrack()应在其位置使用。但是,这会导致服务器添加两个tracks(音频和视频),因此我mediaStream在客户端收到 2。

其中之一就mediaStreams足够了吗?有没有办法只寄回1 stream

这是我的代码的一部分:

服务器 :

 filteredOne.forEach((el, index) => { //! incStream has the stream ID for identification
        foundGuest.tracks.forEach(t => peer[el.id].addTrack(t, foundGuest.incStream) && console.log('track added to other peer'))
        el.tracks && el.tracks.forEach(t => peer[id].addTrack(t, el.incStream) && console.log('track added to self peer'))

和客户:

peer.ontrack = (e) => {
          console.log('e' , e.streams[0].id)

其中我收到 2e.streams[0].id具有相同的价值。

4

1 回答 1

3

当您的 MediaStream 有两个轨道,一个用于音频,另一个用于视频时,就会发生这种情况。赛道中的e.track赛事会有所不同。e.streams[0].id 是相同的,因为它们属于同一个 MediaStream。

于 2021-08-11T05:21:55.410 回答