mediasoup-client 3.7.1 → 3.7.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/README.md +85 -112
  2. package/lib/Consumer.d.ts +1 -1
  3. package/lib/Consumer.d.ts.map +1 -1
  4. package/lib/Consumer.js +1 -1
  5. package/lib/DataConsumer.d.ts +1 -1
  6. package/lib/DataConsumer.d.ts.map +1 -1
  7. package/lib/DataConsumer.js +1 -1
  8. package/lib/DataProducer.d.ts +1 -1
  9. package/lib/DataProducer.d.ts.map +1 -1
  10. package/lib/DataProducer.js +1 -1
  11. package/lib/Device.d.ts +3 -3
  12. package/lib/Device.d.ts.map +1 -1
  13. package/lib/Device.js +66 -89
  14. package/lib/EnhancedEventEmitter.d.ts.map +1 -1
  15. package/lib/Logger.d.ts.map +1 -1
  16. package/lib/Producer.d.ts +5 -15
  17. package/lib/Producer.d.ts.map +1 -1
  18. package/lib/Producer.js +2 -2
  19. package/lib/RtpParameters.d.ts.map +1 -1
  20. package/lib/SctpParameters.d.ts.map +1 -1
  21. package/lib/Transport.d.ts +21 -11
  22. package/lib/Transport.d.ts.map +1 -1
  23. package/lib/Transport.js +73 -55
  24. package/lib/errors.d.ts.map +1 -1
  25. package/lib/errors.js +6 -6
  26. package/lib/handlers/Chrome111.d.ts +4 -4
  27. package/lib/handlers/Chrome111.d.ts.map +1 -1
  28. package/lib/handlers/Chrome111.js +79 -78
  29. package/lib/handlers/Chrome55.d.ts +4 -4
  30. package/lib/handlers/Chrome55.d.ts.map +1 -1
  31. package/lib/handlers/Chrome55.js +88 -81
  32. package/lib/handlers/Chrome67.d.ts +4 -4
  33. package/lib/handlers/Chrome67.d.ts.map +1 -1
  34. package/lib/handlers/Chrome67.js +90 -84
  35. package/lib/handlers/Chrome70.d.ts +4 -4
  36. package/lib/handlers/Chrome70.d.ts.map +1 -1
  37. package/lib/handlers/Chrome70.js +81 -79
  38. package/lib/handlers/Chrome74.d.ts +4 -4
  39. package/lib/handlers/Chrome74.d.ts.map +1 -1
  40. package/lib/handlers/Chrome74.js +80 -79
  41. package/lib/handlers/Edge11.d.ts +1 -1
  42. package/lib/handlers/Edge11.d.ts.map +1 -1
  43. package/lib/handlers/Edge11.js +66 -78
  44. package/lib/handlers/FakeHandler.d.ts +3 -3
  45. package/lib/handlers/FakeHandler.d.ts.map +1 -1
  46. package/lib/handlers/FakeHandler.js +20 -22
  47. package/lib/handlers/Firefox60.d.ts +4 -4
  48. package/lib/handlers/Firefox60.d.ts.map +1 -1
  49. package/lib/handlers/Firefox60.js +80 -73
  50. package/lib/handlers/HandlerInterface.d.ts +1 -0
  51. package/lib/handlers/HandlerInterface.d.ts.map +1 -1
  52. package/lib/handlers/ReactNative.d.ts +4 -4
  53. package/lib/handlers/ReactNative.d.ts.map +1 -1
  54. package/lib/handlers/ReactNative.js +89 -83
  55. package/lib/handlers/ReactNativeUnifiedPlan.d.ts +4 -4
  56. package/lib/handlers/ReactNativeUnifiedPlan.d.ts.map +1 -1
  57. package/lib/handlers/ReactNativeUnifiedPlan.js +80 -79
  58. package/lib/handlers/Safari11.d.ts +4 -4
  59. package/lib/handlers/Safari11.d.ts.map +1 -1
  60. package/lib/handlers/Safari11.js +89 -82
  61. package/lib/handlers/Safari12.d.ts +4 -4
  62. package/lib/handlers/Safari12.d.ts.map +1 -1
  63. package/lib/handlers/Safari12.js +80 -78
  64. package/lib/handlers/ortc/edgeUtils.d.ts.map +1 -1
  65. package/lib/handlers/ortc/utils.d.ts.map +1 -1
  66. package/lib/handlers/ortc/utils.js +2 -2
  67. package/lib/handlers/sdp/MediaSection.d.ts +5 -5
  68. package/lib/handlers/sdp/MediaSection.d.ts.map +1 -1
  69. package/lib/handlers/sdp/MediaSection.js +296 -318
  70. package/lib/handlers/sdp/RemoteSdp.d.ts +5 -5
  71. package/lib/handlers/sdp/RemoteSdp.d.ts.map +1 -1
  72. package/lib/handlers/sdp/RemoteSdp.js +28 -30
  73. package/lib/handlers/sdp/commonUtils.d.ts +8 -5
  74. package/lib/handlers/sdp/commonUtils.d.ts.map +1 -1
  75. package/lib/handlers/sdp/commonUtils.js +71 -59
  76. package/lib/handlers/sdp/plainRtpUtils.d.ts +2 -2
  77. package/lib/handlers/sdp/plainRtpUtils.d.ts.map +1 -1
  78. package/lib/handlers/sdp/plainRtpUtils.js +5 -7
  79. package/lib/handlers/sdp/planBUtils.d.ts +2 -2
  80. package/lib/handlers/sdp/planBUtils.d.ts.map +1 -1
  81. package/lib/handlers/sdp/planBUtils.js +11 -14
  82. package/lib/handlers/sdp/unifiedPlanUtils.d.ts +2 -2
  83. package/lib/handlers/sdp/unifiedPlanUtils.d.ts.map +1 -1
  84. package/lib/handlers/sdp/unifiedPlanUtils.js +11 -14
  85. package/lib/index.d.ts +1 -1
  86. package/lib/index.js +1 -1
  87. package/lib/ortc.d.ts +4 -58
  88. package/lib/ortc.d.ts.map +1 -1
  89. package/lib/ortc.js +432 -478
  90. package/lib/scalabilityModes.d.ts.map +1 -1
  91. package/lib/scalabilityModes.js +2 -2
  92. package/lib/{tests → test}/fakeParameters.d.ts +3 -2
  93. package/lib/test/fakeParameters.d.ts.map +1 -0
  94. package/lib/test/fakeParameters.js +654 -0
  95. package/lib/{tests → test}/test.d.ts.map +1 -1
  96. package/lib/{tests → test}/test.js +469 -496
  97. package/lib/test/uaTestCases.d.ts.map +1 -0
  98. package/lib/{tests → test}/uaTestCases.js +17 -17
  99. package/lib/types.d.ts.map +1 -1
  100. package/lib/utils.d.ts.map +1 -1
  101. package/npm-scripts.mjs +75 -103
  102. package/package.json +93 -90
  103. package/lib/tests/fakeParameters.d.ts.map +0 -1
  104. package/lib/tests/fakeParameters.js +0 -662
  105. package/lib/tests/uaTestCases.d.ts.map +0 -1
  106. /package/lib/{tests → test}/test.d.ts +0 -0
  107. /package/lib/{tests → test}/uaTestCases.d.ts +0 -0
@@ -83,7 +83,7 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
83
83
  iceServers: [],
84
84
  iceTransportPolicy: 'all',
85
85
  bundlePolicy: 'max-bundle',
86
- rtcpMuxPolicy: 'require'
86
+ rtcpMuxPolicy: 'require',
87
87
  });
88
88
  try {
89
89
  pc.addTransceiver('audio');
@@ -94,7 +94,9 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
94
94
  }
95
95
  catch (error) { }
96
96
  const sdpObject = sdpTransform.parse(offer.sdp);
97
- const nativeRtpCapabilities = sdpCommonUtils.extractRtpCapabilities({ sdpObject });
97
+ const nativeRtpCapabilities = sdpCommonUtils.extractRtpCapabilities({
98
+ sdpObject,
99
+ });
98
100
  // libwebrtc supports NACK for OPUS but doesn't announce it.
99
101
  ortcUtils.addNackSuppportForOpus(nativeRtpCapabilities);
100
102
  return nativeRtpCapabilities;
@@ -110,10 +112,10 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
110
112
  async getNativeSctpCapabilities() {
111
113
  logger.debug('getNativeSctpCapabilities()');
112
114
  return {
113
- numStreams: SCTP_NUM_STREAMS
115
+ numStreams: SCTP_NUM_STREAMS,
114
116
  };
115
117
  }
116
- run({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, proprietaryConstraints, extendedRtpCapabilities }) {
118
+ run({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, proprietaryConstraints, extendedRtpCapabilities, }) {
117
119
  this.assertNotClosed();
118
120
  logger.debug('run()');
119
121
  this._direction = direction;
@@ -121,29 +123,26 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
121
123
  iceParameters,
122
124
  iceCandidates,
123
125
  dtlsParameters,
124
- sctpParameters
126
+ sctpParameters,
125
127
  });
126
- this._sendingRtpParametersByKind =
127
- {
128
- audio: ortc.getSendingRtpParameters('audio', extendedRtpCapabilities),
129
- video: ortc.getSendingRtpParameters('video', extendedRtpCapabilities)
130
- };
131
- this._sendingRemoteRtpParametersByKind =
132
- {
133
- audio: ortc.getSendingRemoteRtpParameters('audio', extendedRtpCapabilities),
134
- video: ortc.getSendingRemoteRtpParameters('video', extendedRtpCapabilities)
135
- };
128
+ this._sendingRtpParametersByKind = {
129
+ audio: ortc.getSendingRtpParameters('audio', extendedRtpCapabilities),
130
+ video: ortc.getSendingRtpParameters('video', extendedRtpCapabilities),
131
+ };
132
+ this._sendingRemoteRtpParametersByKind = {
133
+ audio: ortc.getSendingRemoteRtpParameters('audio', extendedRtpCapabilities),
134
+ video: ortc.getSendingRemoteRtpParameters('video', extendedRtpCapabilities),
135
+ };
136
136
  if (dtlsParameters.role && dtlsParameters.role !== 'auto') {
137
- this._forcedLocalDtlsRole = dtlsParameters.role === 'server'
138
- ? 'client'
139
- : 'server';
137
+ this._forcedLocalDtlsRole =
138
+ dtlsParameters.role === 'server' ? 'client' : 'server';
140
139
  }
141
140
  this._pc = new RTCPeerConnection({
142
141
  iceServers: iceServers || [],
143
142
  iceTransportPolicy: iceTransportPolicy || 'all',
144
143
  bundlePolicy: 'max-bundle',
145
144
  rtcpMuxPolicy: 'require',
146
- ...additionalSettings
145
+ ...additionalSettings,
147
146
  }, proprietaryConstraints);
148
147
  this._pc.addEventListener('icegatheringstatechange', () => {
149
148
  this.emit('@icegatheringstatechange', this._pc.iceGatheringState);
@@ -157,32 +156,27 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
157
156
  this._pc.addEventListener('iceconnectionstatechange', () => {
158
157
  logger.warn('run() | pc.connectionState not supported, using pc.iceConnectionState');
159
158
  switch (this._pc.iceConnectionState) {
160
- case 'checking':
161
- {
162
- this.emit('@connectionstatechange', 'connecting');
163
- break;
164
- }
159
+ case 'checking': {
160
+ this.emit('@connectionstatechange', 'connecting');
161
+ break;
162
+ }
165
163
  case 'connected':
166
- case 'completed':
167
- {
168
- this.emit('@connectionstatechange', 'connected');
169
- break;
170
- }
171
- case 'failed':
172
- {
173
- this.emit('@connectionstatechange', 'failed');
174
- break;
175
- }
176
- case 'disconnected':
177
- {
178
- this.emit('@connectionstatechange', 'disconnected');
179
- break;
180
- }
181
- case 'closed':
182
- {
183
- this.emit('@connectionstatechange', 'closed');
184
- break;
185
- }
164
+ case 'completed': {
165
+ this.emit('@connectionstatechange', 'connected');
166
+ break;
167
+ }
168
+ case 'failed': {
169
+ this.emit('@connectionstatechange', 'failed');
170
+ break;
171
+ }
172
+ case 'disconnected': {
173
+ this.emit('@connectionstatechange', 'disconnected');
174
+ break;
175
+ }
176
+ case 'closed': {
177
+ this.emit('@connectionstatechange', 'closed');
178
+ break;
179
+ }
186
180
  }
187
181
  });
188
182
  }
@@ -223,27 +217,28 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
223
217
  this.assertNotClosed();
224
218
  return this._pc.getStats();
225
219
  }
226
- async send({ track, encodings, codecOptions, codec }) {
220
+ async send({ track, encodings, codecOptions, codec, }) {
227
221
  this.assertNotClosed();
228
222
  this.assertSendDirection();
229
223
  logger.debug('send() [kind:%s, track.id:%s]', track.kind, track.id);
230
224
  const sendingRtpParameters = utils.clone(this._sendingRtpParametersByKind[track.kind]);
231
225
  // This may throw.
232
- sendingRtpParameters.codecs =
233
- ortc.reduceCodecs(sendingRtpParameters.codecs, codec);
226
+ sendingRtpParameters.codecs = ortc.reduceCodecs(sendingRtpParameters.codecs, codec);
234
227
  const sendingRemoteRtpParameters = utils.clone(this._sendingRemoteRtpParametersByKind[track.kind]);
235
228
  // This may throw.
236
- sendingRemoteRtpParameters.codecs =
237
- ortc.reduceCodecs(sendingRemoteRtpParameters.codecs, codec);
229
+ sendingRemoteRtpParameters.codecs = ortc.reduceCodecs(sendingRemoteRtpParameters.codecs, codec);
238
230
  const mediaSectionIdx = this._remoteSdp.getNextMediaSectionIdx();
239
- const transceiver = this._pc.addTransceiver(track, { direction: 'sendonly', streams: [this._sendStream] });
231
+ const transceiver = this._pc.addTransceiver(track, {
232
+ direction: 'sendonly',
233
+ streams: [this._sendStream],
234
+ });
240
235
  let offer = await this._pc.createOffer();
241
236
  let localSdpObject = sdpTransform.parse(offer.sdp);
242
237
  let offerMediaObject;
243
238
  if (!this._transportReady) {
244
239
  await this.setupTransport({
245
240
  localDtlsRole: this._forcedLocalDtlsRole ?? 'client',
246
- localSdpObject
241
+ localSdpObject,
247
242
  });
248
243
  }
249
244
  const layers = (0, scalabilityModes_1.parse)((encodings || [{}])[0].scalabilityMode);
@@ -253,7 +248,7 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
253
248
  offerMediaObject = localSdpObject.media[mediaSectionIdx.idx];
254
249
  sdpUnifiedPlanUtils.addLegacySimulcast({
255
250
  offerMediaObject,
256
- numStreams: encodings.length
251
+ numStreams: encodings.length,
257
252
  });
258
253
  offer = { type: 'offer', sdp: sdpTransform.write(localSdpObject) };
259
254
  }
@@ -266,11 +261,13 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
266
261
  localSdpObject = sdpTransform.parse(this._pc.localDescription.sdp);
267
262
  offerMediaObject = localSdpObject.media[mediaSectionIdx.idx];
268
263
  // Set RTCP CNAME.
269
- sendingRtpParameters.rtcp.cname =
270
- sdpCommonUtils.getCname({ offerMediaObject });
264
+ sendingRtpParameters.rtcp.cname = sdpCommonUtils.getCname({
265
+ offerMediaObject,
266
+ });
271
267
  // Set RTP encodings.
272
- sendingRtpParameters.encodings =
273
- sdpUnifiedPlanUtils.getRtpEncodings({ offerMediaObject });
268
+ sendingRtpParameters.encodings = sdpUnifiedPlanUtils.getRtpEncodings({
269
+ offerMediaObject,
270
+ });
274
271
  // Complete encodings with given values.
275
272
  if (encodings) {
276
273
  for (let idx = 0; idx < sendingRtpParameters.encodings.length; ++idx) {
@@ -298,7 +295,7 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
298
295
  reuseMid: mediaSectionIdx.reuseMid,
299
296
  offerRtpParameters: sendingRtpParameters,
300
297
  answerRtpParameters: sendingRemoteRtpParameters,
301
- codecOptions
298
+ codecOptions,
302
299
  });
303
300
  const answer = { type: 'answer', sdp: this._remoteSdp.getSdp() };
304
301
  logger.debug('send() | calling pc.setRemoteDescription() [answer:%o]', answer);
@@ -308,7 +305,7 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
308
305
  return {
309
306
  localId,
310
307
  rtpParameters: sendingRtpParameters,
311
- rtpSender: transceiver.sender
308
+ rtpSender: transceiver.sender,
312
309
  };
313
310
  }
314
311
  async stopSending(localId) {
@@ -445,7 +442,7 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
445
442
  }
446
443
  return transceiver.sender.getStats();
447
444
  }
448
- async sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol }) {
445
+ async sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol, }) {
449
446
  this.assertNotClosed();
450
447
  this.assertSendDirection();
451
448
  const options = {
@@ -454,7 +451,7 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
454
451
  ordered,
455
452
  maxPacketLifeTime,
456
453
  maxRetransmits,
457
- protocol
454
+ protocol,
458
455
  };
459
456
  logger.debug('sendDataChannel() [options:%o]', options);
460
457
  const dataChannel = this._pc.createDataChannel(label, options);
@@ -466,12 +463,11 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
466
463
  if (!this._hasDataChannelMediaSection) {
467
464
  const offer = await this._pc.createOffer();
468
465
  const localSdpObject = sdpTransform.parse(offer.sdp);
469
- const offerMediaObject = localSdpObject.media
470
- .find((m) => m.type === 'application');
466
+ const offerMediaObject = localSdpObject.media.find((m) => m.type === 'application');
471
467
  if (!this._transportReady) {
472
468
  await this.setupTransport({
473
469
  localDtlsRole: this._forcedLocalDtlsRole ?? 'client',
474
- localSdpObject
470
+ localSdpObject,
475
471
  });
476
472
  }
477
473
  logger.debug('sendDataChannel() | calling pc.setLocalDescription() [offer:%o]', offer);
@@ -486,7 +482,7 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
486
482
  streamId: options.id,
487
483
  ordered: options.ordered,
488
484
  maxPacketLifeTime: options.maxPacketLifeTime,
489
- maxRetransmits: options.maxRetransmits
485
+ maxRetransmits: options.maxRetransmits,
490
486
  };
491
487
  return { dataChannel, sctpStreamParameters };
492
488
  }
@@ -505,7 +501,7 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
505
501
  kind,
506
502
  offerRtpParameters: rtpParameters,
507
503
  streamId: streamId || rtpParameters.rtcp.cname,
508
- trackId
504
+ trackId,
509
505
  });
510
506
  }
511
507
  const offer = { type: 'offer', sdp: this._remoteSdp.getSdp() };
@@ -516,20 +512,19 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
516
512
  for (const options of optionsList) {
517
513
  const { trackId, rtpParameters } = options;
518
514
  const localId = mapLocalId.get(trackId);
519
- const answerMediaObject = localSdpObject.media
520
- .find((m) => String(m.mid) === localId);
515
+ const answerMediaObject = localSdpObject.media.find((m) => String(m.mid) === localId);
521
516
  // May need to modify codec parameters in the answer based on codec
522
517
  // parameters in the offer.
523
518
  sdpCommonUtils.applyCodecParameters({
524
519
  offerRtpParameters: rtpParameters,
525
- answerMediaObject
520
+ answerMediaObject,
526
521
  });
527
522
  }
528
523
  answer = { type: 'answer', sdp: sdpTransform.write(localSdpObject) };
529
524
  if (!this._transportReady) {
530
525
  await this.setupTransport({
531
526
  localDtlsRole: this._forcedLocalDtlsRole ?? 'client',
532
- localSdpObject
527
+ localSdpObject,
533
528
  });
534
529
  }
535
530
  logger.debug('receive() | calling pc.setLocalDescription() [answer:%o]', answer);
@@ -537,7 +532,8 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
537
532
  for (const options of optionsList) {
538
533
  const { trackId } = options;
539
534
  const localId = mapLocalId.get(trackId);
540
- const transceiver = this._pc.getTransceivers()
535
+ const transceiver = this._pc
536
+ .getTransceivers()
541
537
  .find((t) => t.mid === localId);
542
538
  if (!transceiver) {
543
539
  throw new Error('new RTCRtpTransceiver not found');
@@ -547,7 +543,7 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
547
543
  results.push({
548
544
  localId,
549
545
  track: transceiver.receiver.track,
550
- rtpReceiver: transceiver.receiver
546
+ rtpReceiver: transceiver.receiver,
551
547
  });
552
548
  }
553
549
  return results;
@@ -622,17 +618,17 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
622
618
  }
623
619
  return transceiver.receiver.getStats();
624
620
  }
625
- async receiveDataChannel({ sctpStreamParameters, label, protocol }) {
621
+ async receiveDataChannel({ sctpStreamParameters, label, protocol, }) {
626
622
  this.assertNotClosed();
627
623
  this.assertRecvDirection();
628
- const { streamId, ordered, maxPacketLifeTime, maxRetransmits } = sctpStreamParameters;
624
+ const { streamId, ordered, maxPacketLifeTime, maxRetransmits, } = sctpStreamParameters;
629
625
  const options = {
630
626
  negotiated: true,
631
627
  id: streamId,
632
628
  ordered,
633
629
  maxPacketLifeTime,
634
630
  maxRetransmits,
635
- protocol
631
+ protocol,
636
632
  };
637
633
  logger.debug('receiveDataChannel() [options:%o]', options);
638
634
  const dataChannel = this._pc.createDataChannel(label, options);
@@ -648,7 +644,7 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
648
644
  const localSdpObject = sdpTransform.parse(answer.sdp);
649
645
  await this.setupTransport({
650
646
  localDtlsRole: this._forcedLocalDtlsRole ?? 'client',
651
- localSdpObject
647
+ localSdpObject,
652
648
  });
653
649
  }
654
650
  logger.debug('receiveDataChannel() | calling pc.setRemoteDescription() [answer:%o]', answer);
@@ -657,19 +653,25 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
657
653
  }
658
654
  return { dataChannel };
659
655
  }
660
- async setupTransport({ localDtlsRole, localSdpObject }) {
656
+ async setupTransport({ localDtlsRole, localSdpObject, }) {
661
657
  if (!localSdpObject) {
662
658
  localSdpObject = sdpTransform.parse(this._pc.localDescription.sdp);
663
659
  }
660
+ // Get our local ICE parameters.
661
+ const iceParameters = sdpCommonUtils.extractIceParameters({
662
+ sdpObject: localSdpObject,
663
+ });
664
664
  // Get our local DTLS parameters.
665
- const dtlsParameters = sdpCommonUtils.extractDtlsParameters({ sdpObject: localSdpObject });
665
+ const dtlsParameters = sdpCommonUtils.extractDtlsParameters({
666
+ sdpObject: localSdpObject,
667
+ });
666
668
  // Set our DTLS role.
667
669
  dtlsParameters.role = localDtlsRole;
668
670
  // Update the remote DTLS role in the SDP.
669
671
  this._remoteSdp.updateDtlsRole(localDtlsRole === 'client' ? 'server' : 'client');
670
672
  // Need to tell the remote transport about our parameters.
671
673
  await new Promise((resolve, reject) => {
672
- this.safeEmit('@connect', { dtlsParameters }, resolve, reject);
674
+ this.safeEmit('@connect', { iceParameters, dtlsParameters }, resolve, reject);
673
675
  });
674
676
  this._transportReady = true;
675
677
  }
@@ -1 +1 @@
1
- {"version":3,"file":"edgeUtils.d.ts","sourceRoot":"","sources":["../../../src/handlers/ortc/edgeUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAErE;;;GAGG;AACH,wBAAgB,eAAe,IAAI,eAAe,CA4CjD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,aAAa,GAAG,aAAa,CAoC/E"}
1
+ {"version":3,"file":"edgeUtils.d.ts","sourceRoot":"","sources":["../../../src/handlers/ortc/edgeUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAErE;;;GAGG;AACH,wBAAgB,eAAe,IAAI,eAAe,CAuCjD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAClC,aAAa,EAAE,aAAa,GAC1B,aAAa,CA+Bf"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/handlers/ortc/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI,CAoB7E"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/handlers/ortc/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI,CAc7E"}
@@ -5,10 +5,10 @@ exports.addNackSuppportForOpus = void 0;
5
5
  * This function adds RTCP NACK support for OPUS codec in given capabilities.
6
6
  */
7
7
  function addNackSuppportForOpus(rtpCapabilities) {
8
- for (const codec of (rtpCapabilities.codecs || [])) {
8
+ for (const codec of rtpCapabilities.codecs || []) {
9
9
  if ((codec.mimeType.toLowerCase() === 'audio/opus' ||
10
10
  codec.mimeType.toLowerCase() === 'audio/multiopus') &&
11
- !codec.rtcpFeedback?.some((fb) => fb.type === 'nack' && !fb.parameter)) {
11
+ !codec.rtcpFeedback?.some(fb => fb.type === 'nack' && !fb.parameter)) {
12
12
  if (!codec.rtcpFeedback) {
13
13
  codec.rtcpFeedback = [];
14
14
  }
@@ -5,7 +5,7 @@ import { SctpParameters } from '../../SctpParameters';
5
5
  export declare abstract class MediaSection {
6
6
  protected readonly _mediaObject: any;
7
7
  protected readonly _planB: boolean;
8
- constructor({ iceParameters, iceCandidates, dtlsParameters, planB }: {
8
+ constructor({ iceParameters, iceCandidates, dtlsParameters, planB, }: {
9
9
  iceParameters?: IceParameters;
10
10
  iceCandidates?: IceCandidate[];
11
11
  dtlsParameters?: DtlsParameters;
@@ -22,7 +22,7 @@ export declare abstract class MediaSection {
22
22
  close(): void;
23
23
  }
24
24
  export declare class AnswerMediaSection extends MediaSection {
25
- constructor({ iceParameters, iceCandidates, dtlsParameters, sctpParameters, plainRtpParameters, planB, offerMediaObject, offerRtpParameters, answerRtpParameters, codecOptions, extmapAllowMixed }: {
25
+ constructor({ iceParameters, iceCandidates, dtlsParameters, sctpParameters, plainRtpParameters, planB, offerMediaObject, offerRtpParameters, answerRtpParameters, codecOptions, extmapAllowMixed, }: {
26
26
  iceParameters?: IceParameters;
27
27
  iceCandidates?: IceCandidate[];
28
28
  dtlsParameters?: DtlsParameters;
@@ -40,7 +40,7 @@ export declare class AnswerMediaSection extends MediaSection {
40
40
  muxSimulcastStreams(encodings: RTCRtpEncodingParameters[]): void;
41
41
  }
42
42
  export declare class OfferMediaSection extends MediaSection {
43
- constructor({ iceParameters, iceCandidates, dtlsParameters, sctpParameters, plainRtpParameters, planB, mid, kind, offerRtpParameters, streamId, trackId, oldDataChannelSpec }: {
43
+ constructor({ iceParameters, iceCandidates, dtlsParameters, sctpParameters, plainRtpParameters, planB, mid, kind, offerRtpParameters, streamId, trackId, oldDataChannelSpec, }: {
44
44
  iceParameters?: IceParameters;
45
45
  iceCandidates?: IceCandidate[];
46
46
  dtlsParameters?: DtlsParameters;
@@ -56,12 +56,12 @@ export declare class OfferMediaSection extends MediaSection {
56
56
  });
57
57
  setDtlsRole(role: DtlsRole): void;
58
58
  resume(): void;
59
- planBReceive({ offerRtpParameters, streamId, trackId }: {
59
+ planBReceive({ offerRtpParameters, streamId, trackId, }: {
60
60
  offerRtpParameters: RtpParameters;
61
61
  streamId: string;
62
62
  trackId: string;
63
63
  }): void;
64
- planBStopReceiving({ offerRtpParameters }: {
64
+ planBStopReceiving({ offerRtpParameters, }: {
65
65
  offerRtpParameters: RtpParameters;
66
66
  }): void;
67
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MediaSection.d.ts","sourceRoot":"","sources":["../../../src/handlers/sdp/MediaSection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MediaSection.d.ts","sourceRoot":"","sources":["../../../src/handlers/sdp/MediaSection.ts"],"names":[],"mappings":"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"}