【问题标题】:Can I call peerconnection->addStream(stream) in OnAddStream() event我可以在 OnAddStream() 事件中调用 peerconnection->addStream(stream)
【发布时间】:2013-02-15 11:19:41
【问题描述】:

我尝试在服务器和客户端之间建立点对点连接。我通过对等连接发送本地视频流, 从客户端到服务器,当服务器在 onAddStream() 事件中接收到它时,它会获取流并将其添加到与 addStream() 的对等连接,以将其发送回客户端,它最初来自哪里。服务端的源码是这样的:

void ServerPeerConnection::OnAddStream(webrtc::MediaStreamInterface* stream)
{
  this->AddStream(stream);
}

我知道这似乎毫无意义,但这是实施前的第一步。

所以我问你是否允许序列?我应该在 SDP 参数在对等点之间传输之前 addStream() 还是可以在之后调用 addStream() 。现在这样做我有以下错误日志:


错误(statscollector.cc:192):SSRC 2128160837 未与曲目关联

错误(statscollector.cc:192):SSRC 0 未与曲目关联 Transport::ConnectChannels_w: 没有设置本地描述。会产生o 氖。 Jingle:Channel[audio|1|]:提供了 NULL DTLS 身份。不做 DTLS Jingle:Channel[audio|2|]:提供了 NULL DTLS 身份。不做 DTLS

【问题讨论】:

    标签: webrtc libjingle


    【解决方案1】:

    您可以像这样附加远程流

    var MediaStream = window.webkitMediaStream || window.MediaStream;
    
    firstPeer.onaddstream = function(remoteSteam) {
          remoteStream = new MediaStream(remoteSteam.audioTracks, remoteSteam.videoTracks);
          otherPeer.addStream(remoteStream);  /* attaching remote stream */
    };
    

    https://github.com/muaz-khan/WebRTC-Experiment/issues/2

    【讨论】:

    • 我还有其他选择吗?
    • 我可以将流从 LocalMediaStream 转换为 MediaStream 类型吗?
    • 谢谢 Muaz,但这是一个浏览器解决方案。我想在 libjingle 或任何其他支持 webrtc 的 API 中使用相同的内容。这里可以找到一个我还没有尝试过的可能的解决方案。 groups.google.com/forum/#!topic/discuss-webrtc/Km3i7NpnF6U。其实方法和你的提案一样。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多