mediasoup-client 3.7.1 → 3.7.2
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.
- package/README.md +85 -112
- package/lib/Consumer.d.ts +1 -1
- package/lib/Consumer.d.ts.map +1 -1
- package/lib/Consumer.js +1 -1
- package/lib/DataConsumer.d.ts +1 -1
- package/lib/DataConsumer.d.ts.map +1 -1
- package/lib/DataConsumer.js +1 -1
- package/lib/DataProducer.d.ts +1 -1
- package/lib/DataProducer.d.ts.map +1 -1
- package/lib/DataProducer.js +1 -1
- package/lib/Device.d.ts +3 -3
- package/lib/Device.d.ts.map +1 -1
- package/lib/Device.js +66 -89
- package/lib/EnhancedEventEmitter.d.ts.map +1 -1
- package/lib/Logger.d.ts.map +1 -1
- package/lib/Producer.d.ts +5 -15
- package/lib/Producer.d.ts.map +1 -1
- package/lib/Producer.js +2 -2
- package/lib/RtpParameters.d.ts.map +1 -1
- package/lib/SctpParameters.d.ts.map +1 -1
- package/lib/Transport.d.ts +14 -10
- package/lib/Transport.d.ts.map +1 -1
- package/lib/Transport.js +71 -53
- package/lib/errors.d.ts.map +1 -1
- package/lib/errors.js +6 -6
- package/lib/handlers/Chrome111.d.ts +4 -4
- package/lib/handlers/Chrome111.d.ts.map +1 -1
- package/lib/handlers/Chrome111.js +74 -77
- package/lib/handlers/Chrome55.d.ts +4 -4
- package/lib/handlers/Chrome55.d.ts.map +1 -1
- package/lib/handlers/Chrome55.js +83 -80
- package/lib/handlers/Chrome67.d.ts +4 -4
- package/lib/handlers/Chrome67.d.ts.map +1 -1
- package/lib/handlers/Chrome67.js +85 -83
- package/lib/handlers/Chrome70.d.ts +4 -4
- package/lib/handlers/Chrome70.d.ts.map +1 -1
- package/lib/handlers/Chrome70.js +76 -78
- package/lib/handlers/Chrome74.d.ts +4 -4
- package/lib/handlers/Chrome74.d.ts.map +1 -1
- package/lib/handlers/Chrome74.js +75 -78
- package/lib/handlers/Edge11.d.ts +1 -1
- package/lib/handlers/Edge11.d.ts.map +1 -1
- package/lib/handlers/Edge11.js +63 -77
- package/lib/handlers/FakeHandler.d.ts +3 -3
- package/lib/handlers/FakeHandler.d.ts.map +1 -1
- package/lib/handlers/FakeHandler.js +19 -22
- package/lib/handlers/Firefox60.d.ts +4 -4
- package/lib/handlers/Firefox60.d.ts.map +1 -1
- package/lib/handlers/Firefox60.js +75 -72
- package/lib/handlers/HandlerInterface.d.ts.map +1 -1
- package/lib/handlers/ReactNative.d.ts +4 -4
- package/lib/handlers/ReactNative.d.ts.map +1 -1
- package/lib/handlers/ReactNative.js +84 -82
- package/lib/handlers/ReactNativeUnifiedPlan.d.ts +4 -4
- package/lib/handlers/ReactNativeUnifiedPlan.d.ts.map +1 -1
- package/lib/handlers/ReactNativeUnifiedPlan.js +75 -78
- package/lib/handlers/Safari11.d.ts +4 -4
- package/lib/handlers/Safari11.d.ts.map +1 -1
- package/lib/handlers/Safari11.js +84 -81
- package/lib/handlers/Safari12.d.ts +4 -4
- package/lib/handlers/Safari12.d.ts.map +1 -1
- package/lib/handlers/Safari12.js +75 -77
- package/lib/handlers/ortc/edgeUtils.d.ts.map +1 -1
- package/lib/handlers/ortc/utils.d.ts.map +1 -1
- package/lib/handlers/ortc/utils.js +2 -2
- package/lib/handlers/sdp/MediaSection.d.ts +5 -5
- package/lib/handlers/sdp/MediaSection.d.ts.map +1 -1
- package/lib/handlers/sdp/MediaSection.js +293 -317
- package/lib/handlers/sdp/RemoteSdp.d.ts +5 -5
- package/lib/handlers/sdp/RemoteSdp.d.ts.map +1 -1
- package/lib/handlers/sdp/RemoteSdp.js +28 -30
- package/lib/handlers/sdp/commonUtils.d.ts +4 -4
- package/lib/handlers/sdp/commonUtils.d.ts.map +1 -1
- package/lib/handlers/sdp/commonUtils.js +47 -58
- package/lib/handlers/sdp/plainRtpUtils.d.ts +2 -2
- package/lib/handlers/sdp/plainRtpUtils.d.ts.map +1 -1
- package/lib/handlers/sdp/plainRtpUtils.js +5 -7
- package/lib/handlers/sdp/planBUtils.d.ts +2 -2
- package/lib/handlers/sdp/planBUtils.d.ts.map +1 -1
- package/lib/handlers/sdp/planBUtils.js +11 -14
- package/lib/handlers/sdp/unifiedPlanUtils.d.ts +2 -2
- package/lib/handlers/sdp/unifiedPlanUtils.d.ts.map +1 -1
- package/lib/handlers/sdp/unifiedPlanUtils.js +11 -14
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/ortc.d.ts.map +1 -1
- package/lib/ortc.js +98 -108
- package/lib/scalabilityModes.d.ts.map +1 -1
- package/lib/scalabilityModes.js +2 -2
- package/lib/{tests → test}/fakeParameters.d.ts +2 -2
- package/lib/test/fakeParameters.d.ts.map +1 -0
- package/lib/test/fakeParameters.js +645 -0
- package/lib/{tests → test}/test.d.ts.map +1 -1
- package/lib/{tests → test}/test.js +466 -495
- package/lib/test/uaTestCases.d.ts.map +1 -0
- package/lib/{tests → test}/uaTestCases.js +17 -17
- package/lib/types.d.ts.map +1 -1
- package/lib/utils.d.ts.map +1 -1
- package/npm-scripts.mjs +72 -98
- package/package.json +93 -90
- package/lib/tests/fakeParameters.d.ts.map +0 -1
- package/lib/tests/fakeParameters.js +0 -662
- package/lib/tests/uaTestCases.d.ts.map +0 -1
- /package/lib/{tests → test}/test.d.ts +0 -0
- /package/lib/{tests → test}/uaTestCases.d.ts +0 -0
|
@@ -84,7 +84,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
84
84
|
iceTransportPolicy: 'all',
|
|
85
85
|
bundlePolicy: 'max-bundle',
|
|
86
86
|
rtcpMuxPolicy: 'require',
|
|
87
|
-
sdpSemantics: 'unified-plan'
|
|
87
|
+
sdpSemantics: 'unified-plan',
|
|
88
88
|
});
|
|
89
89
|
try {
|
|
90
90
|
pc.addTransceiver('audio');
|
|
@@ -95,7 +95,9 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
95
95
|
}
|
|
96
96
|
catch (error) { }
|
|
97
97
|
const sdpObject = sdpTransform.parse(offer.sdp);
|
|
98
|
-
const nativeRtpCapabilities = sdpCommonUtils.extractRtpCapabilities({
|
|
98
|
+
const nativeRtpCapabilities = sdpCommonUtils.extractRtpCapabilities({
|
|
99
|
+
sdpObject,
|
|
100
|
+
});
|
|
99
101
|
// libwebrtc supports NACK for OPUS but doesn't announce it.
|
|
100
102
|
ortcUtils.addNackSuppportForOpus(nativeRtpCapabilities);
|
|
101
103
|
return nativeRtpCapabilities;
|
|
@@ -111,10 +113,10 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
111
113
|
async getNativeSctpCapabilities() {
|
|
112
114
|
logger.debug('getNativeSctpCapabilities()');
|
|
113
115
|
return {
|
|
114
|
-
numStreams: SCTP_NUM_STREAMS
|
|
116
|
+
numStreams: SCTP_NUM_STREAMS,
|
|
115
117
|
};
|
|
116
118
|
}
|
|
117
|
-
run({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, proprietaryConstraints, extendedRtpCapabilities }) {
|
|
119
|
+
run({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, proprietaryConstraints, extendedRtpCapabilities, }) {
|
|
118
120
|
this.assertNotClosed();
|
|
119
121
|
logger.debug('run()');
|
|
120
122
|
this._direction = direction;
|
|
@@ -122,22 +124,19 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
122
124
|
iceParameters,
|
|
123
125
|
iceCandidates,
|
|
124
126
|
dtlsParameters,
|
|
125
|
-
sctpParameters
|
|
127
|
+
sctpParameters,
|
|
126
128
|
});
|
|
127
|
-
this._sendingRtpParametersByKind =
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
video: ortc.getSendingRemoteRtpParameters('video', extendedRtpCapabilities)
|
|
136
|
-
};
|
|
129
|
+
this._sendingRtpParametersByKind = {
|
|
130
|
+
audio: ortc.getSendingRtpParameters('audio', extendedRtpCapabilities),
|
|
131
|
+
video: ortc.getSendingRtpParameters('video', extendedRtpCapabilities),
|
|
132
|
+
};
|
|
133
|
+
this._sendingRemoteRtpParametersByKind = {
|
|
134
|
+
audio: ortc.getSendingRemoteRtpParameters('audio', extendedRtpCapabilities),
|
|
135
|
+
video: ortc.getSendingRemoteRtpParameters('video', extendedRtpCapabilities),
|
|
136
|
+
};
|
|
137
137
|
if (dtlsParameters.role && dtlsParameters.role !== 'auto') {
|
|
138
|
-
this._forcedLocalDtlsRole =
|
|
139
|
-
? 'client'
|
|
140
|
-
: 'server';
|
|
138
|
+
this._forcedLocalDtlsRole =
|
|
139
|
+
dtlsParameters.role === 'server' ? 'client' : 'server';
|
|
141
140
|
}
|
|
142
141
|
this._pc = new RTCPeerConnection({
|
|
143
142
|
iceServers: iceServers || [],
|
|
@@ -145,7 +144,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
145
144
|
bundlePolicy: 'max-bundle',
|
|
146
145
|
rtcpMuxPolicy: 'require',
|
|
147
146
|
sdpSemantics: 'unified-plan',
|
|
148
|
-
...additionalSettings
|
|
147
|
+
...additionalSettings,
|
|
149
148
|
}, proprietaryConstraints);
|
|
150
149
|
this._pc.addEventListener('icegatheringstatechange', () => {
|
|
151
150
|
this.emit('@icegatheringstatechange', this._pc.iceGatheringState);
|
|
@@ -159,32 +158,27 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
159
158
|
logger.warn('run() | pc.connectionState not supported, using pc.iceConnectionState');
|
|
160
159
|
this._pc.addEventListener('iceconnectionstatechange', () => {
|
|
161
160
|
switch (this._pc.iceConnectionState) {
|
|
162
|
-
case 'checking':
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
}
|
|
161
|
+
case 'checking': {
|
|
162
|
+
this.emit('@connectionstatechange', 'connecting');
|
|
163
|
+
break;
|
|
164
|
+
}
|
|
167
165
|
case 'connected':
|
|
168
|
-
case 'completed':
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
{
|
|
185
|
-
this.emit('@connectionstatechange', 'closed');
|
|
186
|
-
break;
|
|
187
|
-
}
|
|
166
|
+
case 'completed': {
|
|
167
|
+
this.emit('@connectionstatechange', 'connected');
|
|
168
|
+
break;
|
|
169
|
+
}
|
|
170
|
+
case 'failed': {
|
|
171
|
+
this.emit('@connectionstatechange', 'failed');
|
|
172
|
+
break;
|
|
173
|
+
}
|
|
174
|
+
case 'disconnected': {
|
|
175
|
+
this.emit('@connectionstatechange', 'disconnected');
|
|
176
|
+
break;
|
|
177
|
+
}
|
|
178
|
+
case 'closed': {
|
|
179
|
+
this.emit('@connectionstatechange', 'closed');
|
|
180
|
+
break;
|
|
181
|
+
}
|
|
188
182
|
}
|
|
189
183
|
});
|
|
190
184
|
}
|
|
@@ -225,7 +219,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
225
219
|
this.assertNotClosed();
|
|
226
220
|
return this._pc.getStats();
|
|
227
221
|
}
|
|
228
|
-
async send({ track, encodings, codecOptions, codec }) {
|
|
222
|
+
async send({ track, encodings, codecOptions, codec, }) {
|
|
229
223
|
this.assertNotClosed();
|
|
230
224
|
this.assertSendDirection();
|
|
231
225
|
logger.debug('send() [kind:%s, track.id:%s]', track.kind, track.id);
|
|
@@ -255,24 +249,22 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
255
249
|
}
|
|
256
250
|
const sendingRtpParameters = utils.clone(this._sendingRtpParametersByKind[track.kind]);
|
|
257
251
|
// This may throw.
|
|
258
|
-
sendingRtpParameters.codecs =
|
|
259
|
-
ortc.reduceCodecs(sendingRtpParameters.codecs, codec);
|
|
252
|
+
sendingRtpParameters.codecs = ortc.reduceCodecs(sendingRtpParameters.codecs, codec);
|
|
260
253
|
const sendingRemoteRtpParameters = utils.clone(this._sendingRemoteRtpParametersByKind[track.kind]);
|
|
261
254
|
// This may throw.
|
|
262
|
-
sendingRemoteRtpParameters.codecs =
|
|
263
|
-
ortc.reduceCodecs(sendingRemoteRtpParameters.codecs, codec);
|
|
255
|
+
sendingRemoteRtpParameters.codecs = ortc.reduceCodecs(sendingRemoteRtpParameters.codecs, codec);
|
|
264
256
|
const mediaSectionIdx = this._remoteSdp.getNextMediaSectionIdx();
|
|
265
257
|
const transceiver = this._pc.addTransceiver(track, {
|
|
266
258
|
direction: 'sendonly',
|
|
267
259
|
streams: [this._sendStream],
|
|
268
|
-
sendEncodings: encodings
|
|
260
|
+
sendEncodings: encodings,
|
|
269
261
|
});
|
|
270
262
|
const offer = await this._pc.createOffer();
|
|
271
263
|
let localSdpObject = sdpTransform.parse(offer.sdp);
|
|
272
264
|
if (!this._transportReady) {
|
|
273
265
|
await this.setupTransport({
|
|
274
266
|
localDtlsRole: this._forcedLocalDtlsRole ?? 'client',
|
|
275
|
-
localSdpObject
|
|
267
|
+
localSdpObject,
|
|
276
268
|
});
|
|
277
269
|
}
|
|
278
270
|
logger.debug('send() | calling pc.setLocalDescription() [offer:%o]', offer);
|
|
@@ -284,17 +276,21 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
284
276
|
localSdpObject = sdpTransform.parse(this._pc.localDescription.sdp);
|
|
285
277
|
const offerMediaObject = localSdpObject.media[mediaSectionIdx.idx];
|
|
286
278
|
// Set RTCP CNAME.
|
|
287
|
-
sendingRtpParameters.rtcp.cname =
|
|
288
|
-
|
|
279
|
+
sendingRtpParameters.rtcp.cname = sdpCommonUtils.getCname({
|
|
280
|
+
offerMediaObject,
|
|
281
|
+
});
|
|
289
282
|
// Set RTP encodings by parsing the SDP offer if no encodings are given.
|
|
290
283
|
if (!encodings) {
|
|
291
|
-
sendingRtpParameters.encodings =
|
|
292
|
-
|
|
284
|
+
sendingRtpParameters.encodings = sdpUnifiedPlanUtils.getRtpEncodings({
|
|
285
|
+
offerMediaObject,
|
|
286
|
+
});
|
|
293
287
|
}
|
|
294
288
|
// Set RTP encodings by parsing the SDP offer and complete them with given
|
|
295
289
|
// one if just a single encoding has been given.
|
|
296
290
|
else if (encodings.length === 1) {
|
|
297
|
-
const newEncodings = sdpUnifiedPlanUtils.getRtpEncodings({
|
|
291
|
+
const newEncodings = sdpUnifiedPlanUtils.getRtpEncodings({
|
|
292
|
+
offerMediaObject,
|
|
293
|
+
});
|
|
298
294
|
Object.assign(newEncodings[0], encodings[0]);
|
|
299
295
|
sendingRtpParameters.encodings = newEncodings;
|
|
300
296
|
}
|
|
@@ -308,7 +304,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
308
304
|
offerRtpParameters: sendingRtpParameters,
|
|
309
305
|
answerRtpParameters: sendingRemoteRtpParameters,
|
|
310
306
|
codecOptions,
|
|
311
|
-
extmapAllowMixed: true
|
|
307
|
+
extmapAllowMixed: true,
|
|
312
308
|
});
|
|
313
309
|
const answer = { type: 'answer', sdp: this._remoteSdp.getSdp() };
|
|
314
310
|
logger.debug('send() | calling pc.setRemoteDescription() [answer:%o]', answer);
|
|
@@ -318,7 +314,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
318
314
|
return {
|
|
319
315
|
localId,
|
|
320
316
|
rtpParameters: sendingRtpParameters,
|
|
321
|
-
rtpSender: transceiver.sender
|
|
317
|
+
rtpSender: transceiver.sender,
|
|
322
318
|
};
|
|
323
319
|
}
|
|
324
320
|
async stopSending(localId) {
|
|
@@ -453,7 +449,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
453
449
|
}
|
|
454
450
|
return transceiver.sender.getStats();
|
|
455
451
|
}
|
|
456
|
-
async sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol }) {
|
|
452
|
+
async sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol, }) {
|
|
457
453
|
this.assertNotClosed();
|
|
458
454
|
this.assertSendDirection();
|
|
459
455
|
const options = {
|
|
@@ -462,7 +458,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
462
458
|
ordered,
|
|
463
459
|
maxPacketLifeTime,
|
|
464
460
|
maxRetransmits,
|
|
465
|
-
protocol
|
|
461
|
+
protocol,
|
|
466
462
|
};
|
|
467
463
|
logger.debug('sendDataChannel() [options:%o]', options);
|
|
468
464
|
const dataChannel = this._pc.createDataChannel(label, options);
|
|
@@ -474,12 +470,11 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
474
470
|
if (!this._hasDataChannelMediaSection) {
|
|
475
471
|
const offer = await this._pc.createOffer();
|
|
476
472
|
const localSdpObject = sdpTransform.parse(offer.sdp);
|
|
477
|
-
const offerMediaObject = localSdpObject.media
|
|
478
|
-
.find((m) => m.type === 'application');
|
|
473
|
+
const offerMediaObject = localSdpObject.media.find((m) => m.type === 'application');
|
|
479
474
|
if (!this._transportReady) {
|
|
480
475
|
await this.setupTransport({
|
|
481
476
|
localDtlsRole: this._forcedLocalDtlsRole ?? 'client',
|
|
482
|
-
localSdpObject
|
|
477
|
+
localSdpObject,
|
|
483
478
|
});
|
|
484
479
|
}
|
|
485
480
|
logger.debug('sendDataChannel() | calling pc.setLocalDescription() [offer:%o]', offer);
|
|
@@ -494,7 +489,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
494
489
|
streamId: options.id,
|
|
495
490
|
ordered: options.ordered,
|
|
496
491
|
maxPacketLifeTime: options.maxPacketLifeTime,
|
|
497
|
-
maxRetransmits: options.maxRetransmits
|
|
492
|
+
maxRetransmits: options.maxRetransmits,
|
|
498
493
|
};
|
|
499
494
|
return { dataChannel, sctpStreamParameters };
|
|
500
495
|
}
|
|
@@ -513,7 +508,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
513
508
|
kind,
|
|
514
509
|
offerRtpParameters: rtpParameters,
|
|
515
510
|
streamId: streamId || rtpParameters.rtcp.cname,
|
|
516
|
-
trackId
|
|
511
|
+
trackId,
|
|
517
512
|
});
|
|
518
513
|
}
|
|
519
514
|
const offer = { type: 'offer', sdp: this._remoteSdp.getSdp() };
|
|
@@ -524,20 +519,19 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
524
519
|
for (const options of optionsList) {
|
|
525
520
|
const { trackId, rtpParameters } = options;
|
|
526
521
|
const localId = mapLocalId.get(trackId);
|
|
527
|
-
const answerMediaObject = localSdpObject.media
|
|
528
|
-
.find((m) => String(m.mid) === localId);
|
|
522
|
+
const answerMediaObject = localSdpObject.media.find((m) => String(m.mid) === localId);
|
|
529
523
|
// May need to modify codec parameters in the answer based on codec
|
|
530
524
|
// parameters in the offer.
|
|
531
525
|
sdpCommonUtils.applyCodecParameters({
|
|
532
526
|
offerRtpParameters: rtpParameters,
|
|
533
|
-
answerMediaObject
|
|
527
|
+
answerMediaObject,
|
|
534
528
|
});
|
|
535
529
|
}
|
|
536
530
|
answer = { type: 'answer', sdp: sdpTransform.write(localSdpObject) };
|
|
537
531
|
if (!this._transportReady) {
|
|
538
532
|
await this.setupTransport({
|
|
539
533
|
localDtlsRole: this._forcedLocalDtlsRole ?? 'client',
|
|
540
|
-
localSdpObject
|
|
534
|
+
localSdpObject,
|
|
541
535
|
});
|
|
542
536
|
}
|
|
543
537
|
logger.debug('receive() | calling pc.setLocalDescription() [answer:%o]', answer);
|
|
@@ -545,7 +539,8 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
545
539
|
for (const options of optionsList) {
|
|
546
540
|
const { trackId } = options;
|
|
547
541
|
const localId = mapLocalId.get(trackId);
|
|
548
|
-
const transceiver = this._pc
|
|
542
|
+
const transceiver = this._pc
|
|
543
|
+
.getTransceivers()
|
|
549
544
|
.find((t) => t.mid === localId);
|
|
550
545
|
if (!transceiver) {
|
|
551
546
|
throw new Error('new RTCRtpTransceiver not found');
|
|
@@ -556,7 +551,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
556
551
|
results.push({
|
|
557
552
|
localId,
|
|
558
553
|
track: transceiver.receiver.track,
|
|
559
|
-
rtpReceiver: transceiver.receiver
|
|
554
|
+
rtpReceiver: transceiver.receiver,
|
|
560
555
|
});
|
|
561
556
|
}
|
|
562
557
|
}
|
|
@@ -632,17 +627,17 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
632
627
|
}
|
|
633
628
|
return transceiver.receiver.getStats();
|
|
634
629
|
}
|
|
635
|
-
async receiveDataChannel({ sctpStreamParameters, label, protocol }) {
|
|
630
|
+
async receiveDataChannel({ sctpStreamParameters, label, protocol, }) {
|
|
636
631
|
this.assertNotClosed();
|
|
637
632
|
this.assertRecvDirection();
|
|
638
|
-
const { streamId, ordered, maxPacketLifeTime, maxRetransmits } = sctpStreamParameters;
|
|
633
|
+
const { streamId, ordered, maxPacketLifeTime, maxRetransmits, } = sctpStreamParameters;
|
|
639
634
|
const options = {
|
|
640
635
|
negotiated: true,
|
|
641
636
|
id: streamId,
|
|
642
637
|
ordered,
|
|
643
638
|
maxPacketLifeTime,
|
|
644
639
|
maxRetransmits,
|
|
645
|
-
protocol
|
|
640
|
+
protocol,
|
|
646
641
|
};
|
|
647
642
|
logger.debug('receiveDataChannel() [options:%o]', options);
|
|
648
643
|
const dataChannel = this._pc.createDataChannel(label, options);
|
|
@@ -658,7 +653,7 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
658
653
|
const localSdpObject = sdpTransform.parse(answer.sdp);
|
|
659
654
|
await this.setupTransport({
|
|
660
655
|
localDtlsRole: this._forcedLocalDtlsRole ?? 'client',
|
|
661
|
-
localSdpObject
|
|
656
|
+
localSdpObject,
|
|
662
657
|
});
|
|
663
658
|
}
|
|
664
659
|
logger.debug('receiveDataChannel() | calling pc.setRemoteDescription() [answer:%o]', answer);
|
|
@@ -667,12 +662,14 @@ class Chrome111 extends HandlerInterface_1.HandlerInterface {
|
|
|
667
662
|
}
|
|
668
663
|
return { dataChannel };
|
|
669
664
|
}
|
|
670
|
-
async setupTransport({ localDtlsRole, localSdpObject }) {
|
|
665
|
+
async setupTransport({ localDtlsRole, localSdpObject, }) {
|
|
671
666
|
if (!localSdpObject) {
|
|
672
667
|
localSdpObject = sdpTransform.parse(this._pc.localDescription.sdp);
|
|
673
668
|
}
|
|
674
669
|
// Get our local DTLS parameters.
|
|
675
|
-
const dtlsParameters = sdpCommonUtils.extractDtlsParameters({
|
|
670
|
+
const dtlsParameters = sdpCommonUtils.extractDtlsParameters({
|
|
671
|
+
sdpObject: localSdpObject,
|
|
672
|
+
});
|
|
676
673
|
// Set our DTLS role.
|
|
677
674
|
dtlsParameters.role = localDtlsRole;
|
|
678
675
|
// Update the remote DTLS role in the SDP.
|
|
@@ -25,11 +25,11 @@ export declare class Chrome55 extends HandlerInterface {
|
|
|
25
25
|
close(): void;
|
|
26
26
|
getNativeRtpCapabilities(): Promise<RtpCapabilities>;
|
|
27
27
|
getNativeSctpCapabilities(): Promise<SctpCapabilities>;
|
|
28
|
-
run({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, proprietaryConstraints, extendedRtpCapabilities }: HandlerRunOptions): void;
|
|
28
|
+
run({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, proprietaryConstraints, extendedRtpCapabilities, }: HandlerRunOptions): void;
|
|
29
29
|
updateIceServers(iceServers: RTCIceServer[]): Promise<void>;
|
|
30
30
|
restartIce(iceParameters: IceParameters): Promise<void>;
|
|
31
31
|
getTransportStats(): Promise<RTCStatsReport>;
|
|
32
|
-
send({ track, encodings, codecOptions, codec }: HandlerSendOptions): Promise<HandlerSendResult>;
|
|
32
|
+
send({ track, encodings, codecOptions, codec, }: HandlerSendOptions): Promise<HandlerSendResult>;
|
|
33
33
|
stopSending(localId: string): Promise<void>;
|
|
34
34
|
pauseSending(localId: string): Promise<void>;
|
|
35
35
|
resumeSending(localId: string): Promise<void>;
|
|
@@ -37,13 +37,13 @@ export declare class Chrome55 extends HandlerInterface {
|
|
|
37
37
|
setMaxSpatialLayer(localId: string, spatialLayer: number): Promise<void>;
|
|
38
38
|
setRtpEncodingParameters(localId: string, params: any): Promise<void>;
|
|
39
39
|
getSenderStats(localId: string): Promise<RTCStatsReport>;
|
|
40
|
-
sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol }: HandlerSendDataChannelOptions): Promise<HandlerSendDataChannelResult>;
|
|
40
|
+
sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol, }: HandlerSendDataChannelOptions): Promise<HandlerSendDataChannelResult>;
|
|
41
41
|
receive(optionsList: HandlerReceiveOptions[]): Promise<HandlerReceiveResult[]>;
|
|
42
42
|
stopReceiving(localIds: string[]): Promise<void>;
|
|
43
43
|
pauseReceiving(localIds: string[]): Promise<void>;
|
|
44
44
|
resumeReceiving(localIds: string[]): Promise<void>;
|
|
45
45
|
getReceiverStats(localId: string): Promise<RTCStatsReport>;
|
|
46
|
-
receiveDataChannel({ sctpStreamParameters, label, protocol }: HandlerReceiveDataChannelOptions): Promise<HandlerReceiveDataChannelResult>;
|
|
46
|
+
receiveDataChannel({ sctpStreamParameters, label, protocol, }: HandlerReceiveDataChannelOptions): Promise<HandlerReceiveDataChannelResult>;
|
|
47
47
|
private setupTransport;
|
|
48
48
|
private assertSendDirection;
|
|
49
49
|
private assertRecvDirection;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chrome55.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome55.ts"],"names":[],"mappings":"AAOA,OAAO,EACN,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,6BAA6B,EAC7B,4BAA4B,EAC5B,gCAAgC,EAChC,+BAA+B,EAC/B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,aAAa,EAAY,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,eAAe,EAAiB,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAwB,MAAM,mBAAmB,CAAC;AAM3E,qBAAa,QAAS,SAAQ,gBAAgB;
|
|
1
|
+
{"version":3,"file":"Chrome55.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome55.ts"],"names":[],"mappings":"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"}
|