我正在研究webRTC . 我在peer1和peer2之间创建了一个peerconnection,并在其上创建了datachannel . 一切顺利 .

然后我希望在这个PeerConnection上添加视频流 . 根据this question,我发送数据通道上的报价和答案 . 但是当我发送冰候选人时,我收到了这个错误:

Failed to execute 'addIceCandidate' on 'RTCPeerConnection': The ICE candidate could not be added.

这是任务序列:

  • peer1创建peerconneciton并在其上创建datachannel

  • peer1创建商品并设置本地会话描述

  • peer1通过websocket向peer2发送报价

  • peer2收到offer,然后创建peerconnection,在其上创建datachannel并设置远程会话描述

  • peer2创建答案并设置本地会话描述

  • peer2通过websocket向peer1发送答案

  • peer1接收答案并设置远程会话描述

然后我像这样添加:

  • peer1获取本地用户媒体并将其添加到peerconnection

  • peer1创建商品并设置本地会话描述

  • peer1通过datachannel向peer2发送offert

  • peer2接收offer并设置远程会话描述,然后获取本地用户媒体并将其添加到peerconnection

  • peer2创建答案并设置本地会话描述

  • peer2通过datachannel向peer1发送答案

  • peer1接收答案并设置远程会话描述

这里有什么不对吗?这个错误何时发生?

谢谢你的评论!

ps:原谅我可怜的英语