是否可以在多个对等连接中使用相同的 SDP?
我正在使用 WebRTC 构建视频会议。这个想法是呼叫者使用某种信令机制,使用它的 SDP(每个用户的 SDP 相同)向所有其他用户发送广播消息,然后用户将使用他们的 SDP 进行响应。
当用户收到某人的 SDP 时,他使用它来设置远程描述,如下所示:
connection = new RTCPeerConnection()
desc = RTCSessionDescription({sdp: SDP, type: "offer"});
connection = setRemoteDescription(desc);
这是 SDP 示例:
v=0
o=- 6843023960119608301 2 IN IP4 127.0.0.1
s=-
t=0 0
a=group:BUNDLE audio
a=msid-semantic: WMS
m=audio 1 RTP/SAVPF 111 103 104 0 8 106 105 13 126
c=IN IP4 0.0.0.0
a=rtcp:1 IN IP4 0.0.0.0
a=ice-ufrag:q36dZRVoaS4ixPYP
a=ice-pwd:K5yAm4A+zGoIKIgsX9o4VgDA
a=ice-options:google-ice
a=fingerprint:sha-256 62:3E:99:2F:FF:D4:58:7C:F0:A1:02:3F:09:2B:D1:F3:71:D7:F6:59:62:12:E4:1B:4A:68:01:4C:43:E0:D1:75
a=setup:actpass
a=mid:audio
a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=recvonly
a=rtcp-mux
a=crypto:0 AES_CM_128_HMAC_SHA1_32 inline:Tdz5Z3KHB3Xosqr5D53WZfi7Zndz+932X3H46Qvf
a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:NJO4XhhHUgiJRCfyYzDgajkCJAF/9BX8QeU+FKQs
a=rtpmap:111 opus/48000/2
a=fmtp:111 minptime=10
a=rtpmap:103 ISAC/16000
a=rtpmap:104 ISAC/32000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:106 CN/32000
a=rtpmap:105 CN/16000
a=rtpmap:13 CN/8000
a=rtpmap:126 telephone-event/8000
a=maxptime:60
我在这里没有看到任何独特的东西,所以如果 B 和 D 将其用作远程描述,它会起作用吗?如果是 - 我如何生成此 SDP?我现在知道的唯一方法是使用RTCPeerConnection.createOffer
,但这会创建不需要的对等连接对象(根据我的想法,应在收到其他用户的响应后创建对等对象)。