WebRTC流在Edge中启动之前的较长延迟(最长30秒)

时间:2018-06-25 10:32:36

标签: webrtc microsoft-edge kurento

因此,RTCPeerConnection在Edge中启动,用于与Kurento Media Server通信。报价是由js客户端生成的,收到的答案和ICE候选人也被交换。日志是:

 constraints: {"offerToReceiveAudio":false,"offerToReceiveVideo":false}
bundle.js (10186,6)
sendonly onnegotiationneeded [object Event]
 sendonly Created SDP offer
bundle.js (10190,8)
 sendonly 13:20:15 onicegatheringstatechange: gathering
bundle.js (10119,6)
 signalingstatechange have-local-offer
bundle.js (9848,6)
 Local description set v=0
o=- 2743265123195951656 0 IN IP4 127.0.0.1
s=-
t=0 0
a=msid-semantic: WMS 1083C4C7-1C2A-4DF8-B24E-5AF75402DD10
a=group:BUNDLE audio
m=audio 9 UDP/TLS/RTP/SAVPF 102 0 8 97 13 118 101
c=IN IP4 0.0.0.0
a=rtpmap:102 opus/48000/2
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:97 RED/8000
a=rtpmap:13 CN/8000
a=rtpmap:118 CN/16000
a=rtpmap:101 telephone-event/8000
a=rtcp:9 IN IP4 0.0.0.0
a=rtcp-fb:102 x-bwe
a=rtcp-fb:102 x-cinfo
a=rtcp-fb:0 x-bwe
a=rtcp-fb:0 x-cinfo
a=rtcp-fb:8 x-bwe
a=rtcp-fb:8 x-cinfo
a=extmap:1 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=setup:actpass
a=mid:audio
a=maxptime:60
a=sendonly
a=ice-ufrag:nUPQ
a=ice-pwd:qaL4jQo60GepvpllX0ReZGL0
a=fingerprint:sha-256 B2:D8:FF:38:F7:3A:84:C8:B1:F9:B5:50:1E:F4:29:8B:66:20:79:80:BF:8C:D2:56:5C:50:C4:D6:9D:C5:B2:21
a=ssrc:1194746854 cname:1083C4C7-1C2A-4DF8-B24E-5AF75402DD10
a=ssrc:1194746854 msid:1083C4C7-1C2A-4DF8-B24E-5AF75402DD10 511137F7-B0F6-485E-AEA2-8DC5F34E8FA2
a=ssrc:1194746854 mslabel:1083C4C7-1C2A-4DF8-B24E-5AF75402DD10
a=ssrc:1194746854 label:511137F7-B0F6-485E-AEA2-8DC5F34E8FA2
a=rtcp-mux
a=rtcp-rsize
bundle.js (10198,8)
 sendonly SDP answer received, setting remote description v=0
o=- 3738910871 3738910871 IN IP4 0.0.0.0
s=Kurento Media Server
c=IN IP4 0.0.0.0
t=0 0
a=msid-semantic: WMS 1083C4C7-1C2A-4DF8-B24E-5AF75402DD10
a=group:BUNDLE audio
m=audio 1 UDP/TLS/RTP/SAVPF 102 0
a=extmap:1 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=mid:audio
a=rtcp:9 IN IP4 0.0.0.0
a=rtpmap:102 opus/48000/2
a=rtpmap:0 PCMU/8000
a=setup:active
a=maxptime:60
a=recvonly
a=rtcp-mux
a=ssrc:1135469991 cname:user169936329@host-7a1d99ba
a=ssrc:1135469991 msid:user169936329@host-7a1d99ba 9a2a26ad-5baf-49fb-92f5-44c7f793241e
a=ssrc:1135469991 mslabel:user169936329@host-7a1d99ba
a=ssrc:1135469991 label:9a2a26ad-5baf-49fb-92f5-44c7f793241e
a=ice-ufrag:D8lK
a=ice-pwd:Cw4ZRiRfQ+t4mQ4NOqs5sf
a=fingerprint:sha-256 04:F0:58:28:E3:92:4B:06:78:7E:75:F0:75:E6:F7:08:38:DB:55:28:68:D0:03:50:98:D3:26:C5:89:C6:94:5E
bundle.js (10256,6)
 sendonly PeerConnection signaling state = have-local-offer
bundle.js (10269,6)
 signalingstatechange stable
bundle.js (9848,6)
sendonly Remote ICE candidate received [object Object]
sendonly Remote ICE candidate received [object Object]
sendonly Remote ICE candidate received [object Object]
sendonly Remote ICE candidate received [object Object]
sendonly Remote ICE candidate received [object Object]
sendonly Remote ICE candidate received [object Object]
sendonly Remote ICE candidate received [object Object]
sendonly Remote ICE candidate received [object Object]
sendonly Remote ICE candidate received [object Object]
sendonly Remote ICE candidate received [object Object]
sendonly Remote ICE candidate received [object Object]
sendonly Remote ICE candidate received [object Object]
sendonly Remote ICE candidate received [object Object]
sendonly Remote ICE candidate received [object Object]
sendonly Remote ICE candidate received [object Object]
sendonly Local ICE: [object RTCPeerConnectionIceEvent]
sendonly Local ICE: [object RTCPeerConnectionIceEvent]
 sendonly 13:20:18 onicegatheringstatechange: complete
WebRtcPeer.js (365,1)
sendonly Local ICE: [object RTCPeerConnectionIceEvent]
 sendonly 13:20:25 oniceconnectionstatechange: checking
WebRtcPeer.js (368,1)
 sendonly 13:20:25 oniceconnectionstatechange: connected
WebRtcPeer.js (368,1)
 sendonly 13:20:46 oniceconnectionstatechange: completed
WebRtcPeer.js (368,1)

问题是流最终开始“流”(其他同伴可以听到音频或观看视频),但是直到事件发生时才开始: oniceconnectionstatechange: completed 这比连接事件晚21秒。有时会持续30秒。问题是:如何在iceConnectionState =='connected'之后强制RTCPeerConnection开始流式传输

这仅在Edge中发生。 Chrome / FF / Safari中相同的代码和配置可以立即运行


Kurento媒体服务器版本:6.7.1
微软Edge 42.17134.1.0

0 个答案:

没有答案