我们实现的信令机制需要在 sdp 本身中发送icecandidates。
你知道如何将icecandidates嵌入到sdp中吗?
此外,如果icecandidates嵌入在sdp中,那么PeerConnection将如何发起p-2-p连接?
或者PeerConnection是否可以在设置远程sdp后立即启动p2p连接,或者必须做其他事情?
此外,您能否建议我们如何使用 webrtc 在同一 wifi 网络中的 2 个设备之间进行视频通信(不使用 STUN/TURN)?
我尝试将iceservers设置为null,但应用程序无法运行!
我已从日志中收集了两个设备生成的 sdp。
我已经为两个同行生成了ice候选人。我将 sdp 和icecandidates 合并为一个 sdp。这样,我已将iceservers 的RTCConfiguration 设置为NULL。但现在该应用程序无法运行!
我想知道的是,如果我们有一个嵌入了icecandidates的SDP,我们如何发起p2p连接?设置 Remote IceCandidate 或设置 RemoteDescription 时是否会启动 p2p 连接?
谢谢!
最佳答案
ICE 候选人包含在 SDP 录取/答复中。因此,只需等待 ICE 收集过程完成,然后发送 SDP Offer/answer。
我不确定您是否可以在没有 STUN/TURN 服务器的情况下使用 WebRTC,但您可以使用您的服务器或公共(public)服务器。看起来,在本地环境中,无需 STUN/TURN 服务器,一切都可以正常工作 - 只需将一个空数组传递给 iceServers
。
对于最后一个问题 - 这取决于情况。如果TrickleICE已实现(在 Chrome 和 Firefox 中也是如此),当找到第一个好的 ICE 候选者时,就会启动连接。您可以在此之前设置描述。否则,您需要等到ICE gathering过程完成,然后发送报价/应答并将其设置在另一个对等点上作为远程描述。然后将启动连接。
关于android - 如何将 IceCandidates 嵌入到 SDP 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35359152/