|
@@ -677,7 +677,7 @@ ColibriFocus.prototype.initiate = function (peer, isInitiator) {
|
677
|
677
|
}
|
678
|
678
|
sdp.removeSessionLines('a=msid-semantic:'); // FIXME: not mapped over jingle anyway...
|
679
|
679
|
for (var i = 0; i < sdp.media.length; i++) {
|
680
|
|
- if (!config.useRtcpMux){
|
|
680
|
+ if (!config.useRtcpMux) {
|
681
|
681
|
sdp.removeMediaLines(i, 'a=rtcp-mux');
|
682
|
682
|
}
|
683
|
683
|
sdp.removeMediaLines(i, 'a=ssrc:');
|
|
@@ -689,25 +689,7 @@ ColibriFocus.prototype.initiate = function (peer, isInitiator) {
|
689
|
689
|
sdp.removeMediaLines(i, 'a=ice-pwd:');
|
690
|
690
|
sdp.removeMediaLines(i, 'a=fingerprint:');
|
691
|
691
|
sdp.removeMediaLines(i, 'a=setup:');
|
692
|
|
-
|
693
|
|
- if (1) { //i > 0) { // not for audio FIXME: does not work as intended
|
694
|
|
- // re-add all remote a=ssrcs _and_ a=ssrc-group
|
695
|
|
- for (var jid in this.remotessrc) {
|
696
|
|
- if (jid == peer || !this.remotessrc[jid][i])
|
697
|
|
- continue;
|
698
|
|
- sdp.media[i] += this.remotessrc[jid][i];
|
699
|
|
- }
|
700
|
|
-
|
701
|
|
- // add local a=ssrc-group: lines
|
702
|
|
- lines = SDPUtil.find_lines(localSDP.media[i], 'a=ssrc-group:');
|
703
|
|
- if (lines.length != 0)
|
704
|
|
- sdp.media[i] += lines.join('\r\n') + '\r\n';
|
705
|
|
-
|
706
|
|
- // and local a=ssrc: lines
|
707
|
|
- sdp.media[i] += SDPUtil.find_lines(localSDP.media[i], 'a=ssrc:').join('\r\n') + '\r\n';
|
708
|
|
- }
|
709
|
692
|
}
|
710
|
|
- sdp.raw = sdp.session + sdp.media.join('');
|
711
|
693
|
|
712
|
694
|
// add stuff we got from the bridge
|
713
|
695
|
for (var j = 0; j < sdp.media.length; j++) {
|
|
@@ -756,6 +738,25 @@ ColibriFocus.prototype.initiate = function (peer, isInitiator) {
|
756
|
738
|
}
|
757
|
739
|
}
|
758
|
740
|
}
|
|
741
|
+
|
|
742
|
+ for (var i = 0; i < sdp.media.length; i++) {
|
|
743
|
+ // re-add all remote a=ssrcs _and_ a=ssrc-group
|
|
744
|
+ for (var jid in this.remotessrc) {
|
|
745
|
+ if (jid == peer || !this.remotessrc[jid][i])
|
|
746
|
+ continue;
|
|
747
|
+ sdp.media[i] += this.remotessrc[jid][i];
|
|
748
|
+ }
|
|
749
|
+
|
|
750
|
+ // add local a=ssrc-group: lines
|
|
751
|
+ lines = SDPUtil.find_lines(localSDP.media[i], 'a=ssrc-group:');
|
|
752
|
+ if (lines.length != 0)
|
|
753
|
+ sdp.media[i] += lines.join('\r\n') + '\r\n';
|
|
754
|
+
|
|
755
|
+ // and local a=ssrc: lines
|
|
756
|
+ sdp.media[i] += SDPUtil.find_lines(localSDP.media[i], 'a=ssrc:').join('\r\n') + '\r\n';
|
|
757
|
+ }
|
|
758
|
+ sdp.raw = sdp.session + sdp.media.join('');
|
|
759
|
+
|
759
|
760
|
// make a new colibri session and configure it
|
760
|
761
|
// FIXME: is it correct to use this.connection.jid when used in a MUC?
|
761
|
762
|
var sess = new ColibriSession(this.connection.jid,
|