提交 0c75eaa8 authored 作者: Anthony Minessale's avatar Anthony Minessale

FS-7664 #resolve

上级 e71be0c6
This diff was suppressed by a .gitattributes entry.
...@@ -29,6 +29,11 @@ ...@@ -29,6 +29,11 @@
* *
*/ */
var iceTimerSent = 0;
var iceTimerCompleted = 0;
var iceTimer;
(function($) { (function($) {
// Find the line in sdpLines that starts with |prefix|, and, if specified, // Find the line in sdpLines that starts with |prefix|, and, if specified,
...@@ -619,49 +624,101 @@ ...@@ -619,49 +624,101 @@
peer.onicecandidate = function(event) { peer.onicecandidate = function(event) {
if (event.candidate) { if (event.candidate) {
options.onICE(event.candidate); options.onICE(event.candidate);
clearTimeout(iceTimer);
iceTimer = setTimeout(function() {
iceTimerSent = 1;
if (iceTimerCompleted == 0) {
if (options.onICEComplete) {
options.onICEComplete();
}
if (options.type == "offer") {
/* new mozilla now tries to be like chrome but it takes them 10 seconds to complete the ICE
Booooooooo! This trickle thing is a waste of time...... We'll all have to re-code our engines
to handle partial setups to maybe save 100m
*/
if ((!moz || (!options.sentICESDP && peer.localDescription.sdp.match(/a=candidate/)) && !x && options.onICESDP)) {
options.onICESDP(peer.localDescription);
//x = 1;
/*
x = 1;
peer.createOffer(function(sessionDescription) {
sessionDescription.sdp = serializeSdp(sessionDescription.sdp);
peer.setLocalDescription(sessionDescription);
if (options.onICESDP) {
options.onICESDP(sessionDescription);
}
}, onSdpError, constraints);
*/
}
} else {
if (!x && options.onICESDP) {
options.onICESDP(peer.localDescription);
//x = 1;
/*
x = 1;
peer.createAnswer(function(sessionDescription) {
sessionDescription.sdp = serializeSdp(sessionDescription.sdp);
peer.setLocalDescription(sessionDescription);
if (options.onICESDP) {
options.onICESDP(sessionDescription);
}
}, onSdpError, constraints);
*/
}
}
}
}, 1000);
} else { } else {
if (options.onICEComplete) { if (iceTimerSent == 0) {
options.onICEComplete(); clearTimeout(iceTimer);
} iceTimerCompleted = 1;
if (options.type == "offer") { if (options.onICEComplete) {
/* new mozilla now tries to be like chrome but it takes them 10 seconds to complete the ICE options.onICEComplete();
Booooooooo! This trickle thing is a waste of time...... We'll all have to re-code our engines
to handle partial setups to maybe save 100m
*/
if ((!moz || (!options.sentICESDP && peer.localDescription.sdp.match(/a=candidate/)) && !x && options.onICESDP)) {
options.onICESDP(peer.localDescription);
//x = 1;
/*
x = 1;
peer.createOffer(function(sessionDescription) {
sessionDescription.sdp = serializeSdp(sessionDescription.sdp);
peer.setLocalDescription(sessionDescription);
if (options.onICESDP) {
options.onICESDP(sessionDescription);
}
}, onSdpError, constraints);
*/
} }
} else {
if (!x && options.onICESDP) { if (options.type == "offer") {
options.onICESDP(peer.localDescription); /* new mozilla now tries to be like chrome but it takes them 10 seconds to complete the ICE
//x = 1; Booooooooo! This trickle thing is a waste of time...... We'll all have to re-code our engines
/* to handle partial setups to maybe save 100m
x = 1; */
peer.createAnswer(function(sessionDescription) { if ((!moz || (!options.sentICESDP && peer.localDescription.sdp.match(/a=candidate/)) && !x && options.onICESDP)) {
sessionDescription.sdp = serializeSdp(sessionDescription.sdp); options.onICESDP(peer.localDescription);
peer.setLocalDescription(sessionDescription); //x = 1;
if (options.onICESDP) { /*
options.onICESDP(sessionDescription); x = 1;
} peer.createOffer(function(sessionDescription) {
}, onSdpError, constraints); sessionDescription.sdp = serializeSdp(sessionDescription.sdp);
*/ peer.setLocalDescription(sessionDescription);
if (options.onICESDP) {
options.onICESDP(sessionDescription);
}
}, onSdpError, constraints);
*/
}
} else {
if (!x && options.onICESDP) {
options.onICESDP(peer.localDescription);
//x = 1;
/*
x = 1;
peer.createAnswer(function(sessionDescription) {
sessionDescription.sdp = serializeSdp(sessionDescription.sdp);
peer.setLocalDescription(sessionDescription);
if (options.onICESDP) {
options.onICESDP(sessionDescription);
}
}, onSdpError, constraints);
*/
}
} }
} }
} }
}; };
// attachStream = MediaStream; // attachStream = MediaStream;
if (options.attachStream) peer.addStream(options.attachStream); if (options.attachStream) peer.addStream(options.attachStream);
......
This diff was suppressed by a .gitattributes entry.
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论