mediasoup-client 3.7.6 → 3.7.8
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/lib/Device.d.ts.map +1 -1
- package/lib/Device.js +7 -4
- package/lib/Transport.d.ts.map +1 -1
- package/lib/Transport.js +16 -14
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/ortc.js +1 -1
- package/lib/test/fakeParameters.d.ts.map +1 -1
- package/lib/test/fakeParameters.js +31 -31
- package/lib/utils.d.ts +5 -0
- package/lib/utils.d.ts.map +1 -1
- package/lib/utils.js +18 -1
- package/package.json +5 -5
package/lib/Device.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Device.d.ts","sourceRoot":"","sources":["../src/Device.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAI9D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAoB,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAoB,MAAM,6BAA6B,CAAC;AAa/E,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIlC,MAAM,MAAM,kBAAkB,GAC3B,WAAW,GACX,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,YAAY,GACZ,WAAW,GACX,UAAU,GACV,UAAU,GACV,QAAQ,GACR,wBAAwB,GACxB,aAAa,CAAC;AAEjB,MAAM,MAAM,aAAa,GAAG;IAC3B;;OAEG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC;;OAEG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,wBAAgB,YAAY,IAAI,kBAAkB,GAAG,SAAS,CAkK7D;AAED,MAAM,MAAM,oBAAoB,GAAG;IAClC,YAAY,EAAE,CAAC,SAAS,CAAC,CAAC;CAC1B,CAAC;AAEF,qBAAa,MAAM;IAElB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiB;IAEjD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IAEtC,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,wBAAwB,CAAC,CAAM;IAEvC,OAAO,CAAC,oBAAoB,CAAC,CAAkB;IAG/C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IAErD,OAAO,CAAC,iBAAiB,CAAC,CAAmB;IAE7C,SAAS,CAAC,QAAQ,CAAC,SAAS,6CACsB;IAElD;;;;OAIG;gBACS,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,GAAE,aAAkB;IA0HxE;;OAEG;IACH,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED;;;;OAIG;IACH,IAAI,eAAe,IAAI,eAAe,CAMrC;IAED;;;;OAIG;IACH,IAAI,gBAAgB,IAAI,gBAAgB,CAMvC;IAED,IAAI,QAAQ,IAAI,oBAAoB,CAEnC;IAED;;OAEG;IACG,IAAI,CAAC,EACV,qBAAqB,GACrB,EAAE;QACF,qBAAqB,EAAE,eAAe,CAAC;KACvC,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"Device.d.ts","sourceRoot":"","sources":["../src/Device.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAI9D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAoB,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAoB,MAAM,6BAA6B,CAAC;AAa/E,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIlC,MAAM,MAAM,kBAAkB,GAC3B,WAAW,GACX,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,GACV,YAAY,GACZ,WAAW,GACX,UAAU,GACV,UAAU,GACV,QAAQ,GACR,wBAAwB,GACxB,aAAa,CAAC;AAEjB,MAAM,MAAM,aAAa,GAAG;IAC3B;;OAEG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC;;OAEG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,wBAAgB,YAAY,IAAI,kBAAkB,GAAG,SAAS,CAkK7D;AAED,MAAM,MAAM,oBAAoB,GAAG;IAClC,YAAY,EAAE,CAAC,SAAS,CAAC,CAAC;CAC1B,CAAC;AAEF,qBAAa,MAAM;IAElB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiB;IAEjD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IAEtC,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,wBAAwB,CAAC,CAAM;IAEvC,OAAO,CAAC,oBAAoB,CAAC,CAAkB;IAG/C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IAErD,OAAO,CAAC,iBAAiB,CAAC,CAAmB;IAE7C,SAAS,CAAC,QAAQ,CAAC,SAAS,6CACsB;IAElD;;;;OAIG;gBACS,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,GAAE,aAAkB;IA0HxE;;OAEG;IACH,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED;;;;OAIG;IACH,IAAI,eAAe,IAAI,eAAe,CAMrC;IAED;;;;OAIG;IACH,IAAI,gBAAgB,IAAI,gBAAgB,CAMvC;IAED,IAAI,QAAQ,IAAI,oBAAoB,CAEnC;IAED;;OAEG;IACG,IAAI,CAAC,EACV,qBAAqB,GACrB,EAAE;QACF,qBAAqB,EAAE,eAAe,CAAC;KACvC,GAAG,OAAO,CAAC,IAAI,CAAC;IA+FjB;;;;;OAKG;IACH,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IAUpC;;;;;OAKG;IACH,mBAAmB,CAAC,gBAAgB,SAAS,OAAO,GAAG,OAAO,EAAE,EAC/D,EAAE,EACF,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,OAAO,GACP,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,GAAG,SAAS,CAAC,gBAAgB,CAAC;IAkBnE;;;;;OAKG;IACH,mBAAmB,CAAC,gBAAgB,SAAS,OAAO,GAAG,OAAO,EAAE,EAC/D,EAAE,EACF,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,OAAO,GACP,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,GAAG,SAAS,CAAC,gBAAgB,CAAC;IAkBnE,OAAO,CAAC,eAAe;CAsDvB"}
|
package/lib/Device.js
CHANGED
|
@@ -329,22 +329,25 @@ class Device {
|
|
|
329
329
|
*/
|
|
330
330
|
async load({ routerRtpCapabilities, }) {
|
|
331
331
|
logger.debug('load() [routerRtpCapabilities:%o]', routerRtpCapabilities);
|
|
332
|
-
routerRtpCapabilities = utils.clone(routerRtpCapabilities);
|
|
333
332
|
// Temporal handler to get its capabilities.
|
|
334
333
|
let handler;
|
|
335
334
|
try {
|
|
336
335
|
if (this._loaded) {
|
|
337
336
|
throw new errors_1.InvalidStateError('already loaded');
|
|
338
337
|
}
|
|
338
|
+
// Clone given router RTP capabilities to not modify input data.
|
|
339
|
+
const clonedRouterRtpCapabilities = utils.clone(routerRtpCapabilities);
|
|
339
340
|
// This may throw.
|
|
340
|
-
ortc.validateRtpCapabilities(
|
|
341
|
+
ortc.validateRtpCapabilities(clonedRouterRtpCapabilities);
|
|
341
342
|
handler = this._handlerFactory();
|
|
342
343
|
const nativeRtpCapabilities = await handler.getNativeRtpCapabilities();
|
|
343
344
|
logger.debug('load() | got native RTP capabilities:%o', nativeRtpCapabilities);
|
|
345
|
+
// Clone obtained native RTP capabilities to not modify input data.
|
|
346
|
+
const clonedNativeRtpCapabilities = utils.clone(nativeRtpCapabilities);
|
|
344
347
|
// This may throw.
|
|
345
|
-
ortc.validateRtpCapabilities(
|
|
348
|
+
ortc.validateRtpCapabilities(clonedNativeRtpCapabilities);
|
|
346
349
|
// Get extended RTP capabilities.
|
|
347
|
-
this._extendedRtpCapabilities = ortc.getExtendedRtpCapabilities(
|
|
350
|
+
this._extendedRtpCapabilities = ortc.getExtendedRtpCapabilities(clonedNativeRtpCapabilities, clonedRouterRtpCapabilities);
|
|
348
351
|
logger.debug('load() | got extended RTP capabilities:%o', this._extendedRtpCapabilities);
|
|
349
352
|
// Check whether we can produce audio/video.
|
|
350
353
|
this._canProduceByKind.audio = ortc.canSend('audio', this._extendedRtpCapabilities);
|
package/lib/Transport.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transport.d.ts","sourceRoot":"","sources":["../src/Transport.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Transport.d.ts","sourceRoot":"","sources":["../src/Transport.ts"],"names":[],"mappings":"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"}
|
package/lib/Transport.js
CHANGED
|
@@ -96,12 +96,12 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
|
|
|
96
96
|
? sctpParameters.maxMessageSize
|
|
97
97
|
: null;
|
|
98
98
|
// Clone and sanitize additionalSettings.
|
|
99
|
-
|
|
100
|
-
delete
|
|
101
|
-
delete
|
|
102
|
-
delete
|
|
103
|
-
delete
|
|
104
|
-
delete
|
|
99
|
+
const clonedAdditionalSettings = utils.clone(additionalSettings) || {};
|
|
100
|
+
delete clonedAdditionalSettings.iceServers;
|
|
101
|
+
delete clonedAdditionalSettings.iceTransportPolicy;
|
|
102
|
+
delete clonedAdditionalSettings.bundlePolicy;
|
|
103
|
+
delete clonedAdditionalSettings.rtcpMuxPolicy;
|
|
104
|
+
delete clonedAdditionalSettings.sdpSemantics;
|
|
105
105
|
this._handler = handlerFactory();
|
|
106
106
|
this._handler.run({
|
|
107
107
|
direction,
|
|
@@ -111,7 +111,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
|
|
|
111
111
|
sctpParameters,
|
|
112
112
|
iceServers,
|
|
113
113
|
iceTransportPolicy,
|
|
114
|
-
additionalSettings,
|
|
114
|
+
additionalSettings: clonedAdditionalSettings,
|
|
115
115
|
proprietaryConstraints,
|
|
116
116
|
extendedRtpCapabilities,
|
|
117
117
|
});
|
|
@@ -376,7 +376,6 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
|
|
|
376
376
|
*/
|
|
377
377
|
async consume({ id, producerId, kind, rtpParameters, streamId, appData = {}, }) {
|
|
378
378
|
logger.debug('consume()');
|
|
379
|
-
rtpParameters = utils.clone(rtpParameters);
|
|
380
379
|
if (this._closed) {
|
|
381
380
|
throw new errors_1.InvalidStateError('closed');
|
|
382
381
|
}
|
|
@@ -399,8 +398,10 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
|
|
|
399
398
|
else if (appData && typeof appData !== 'object') {
|
|
400
399
|
throw new TypeError('if given, appData must be an object');
|
|
401
400
|
}
|
|
401
|
+
// Clone given RTP parameters to not modify input data.
|
|
402
|
+
const clonedRtpParameters = utils.clone(rtpParameters);
|
|
402
403
|
// Ensure the device can consume it.
|
|
403
|
-
const canConsume = ortc.canReceive(
|
|
404
|
+
const canConsume = ortc.canReceive(clonedRtpParameters, this._extendedRtpCapabilities);
|
|
404
405
|
if (!canConsume) {
|
|
405
406
|
throw new errors_1.UnsupportedError('cannot consume this Producer');
|
|
406
407
|
}
|
|
@@ -408,7 +409,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
|
|
|
408
409
|
id,
|
|
409
410
|
producerId,
|
|
410
411
|
kind,
|
|
411
|
-
rtpParameters,
|
|
412
|
+
rtpParameters: clonedRtpParameters,
|
|
412
413
|
streamId,
|
|
413
414
|
appData,
|
|
414
415
|
});
|
|
@@ -489,7 +490,6 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
|
|
|
489
490
|
*/
|
|
490
491
|
async consumeData({ id, dataProducerId, sctpStreamParameters, label = '', protocol = '', appData = {}, }) {
|
|
491
492
|
logger.debug('consumeData()');
|
|
492
|
-
sctpStreamParameters = utils.clone(sctpStreamParameters);
|
|
493
493
|
if (this._closed) {
|
|
494
494
|
throw new errors_1.InvalidStateError('closed');
|
|
495
495
|
}
|
|
@@ -512,12 +512,14 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
|
|
|
512
512
|
else if (appData && typeof appData !== 'object') {
|
|
513
513
|
throw new TypeError('if given, appData must be an object');
|
|
514
514
|
}
|
|
515
|
+
// Clone given SCTP stream parameters to not modify input data.
|
|
516
|
+
const clonedSctpStreamParameters = utils.clone(sctpStreamParameters);
|
|
515
517
|
// This may throw.
|
|
516
|
-
ortc.validateSctpStreamParameters(
|
|
518
|
+
ortc.validateSctpStreamParameters(clonedSctpStreamParameters);
|
|
517
519
|
// Enqueue command.
|
|
518
520
|
return this._awaitQueue.push(async () => {
|
|
519
521
|
const { dataChannel } = await this._handler.receiveDataChannel({
|
|
520
|
-
sctpStreamParameters,
|
|
522
|
+
sctpStreamParameters: clonedSctpStreamParameters,
|
|
521
523
|
label,
|
|
522
524
|
protocol,
|
|
523
525
|
});
|
|
@@ -525,7 +527,7 @@ class Transport extends EnhancedEventEmitter_1.EnhancedEventEmitter {
|
|
|
525
527
|
id,
|
|
526
528
|
dataProducerId,
|
|
527
529
|
dataChannel,
|
|
528
|
-
sctpStreamParameters,
|
|
530
|
+
sctpStreamParameters: clonedSctpStreamParameters,
|
|
529
531
|
appData,
|
|
530
532
|
});
|
|
531
533
|
this._dataConsumers.set(dataConsumer.id, dataConsumer);
|
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
package/lib/ortc.js
CHANGED
|
@@ -467,7 +467,7 @@ function reduceCodecs(codecs, capCodec) {
|
|
|
467
467
|
// Otherwise look for a compatible set of codecs.
|
|
468
468
|
else {
|
|
469
469
|
for (let idx = 0; idx < codecs.length; ++idx) {
|
|
470
|
-
if (matchCodecs(codecs[idx], capCodec)) {
|
|
470
|
+
if (matchCodecs(codecs[idx], capCodec, { strict: true })) {
|
|
471
471
|
filteredCodecs.push(codecs[idx]);
|
|
472
472
|
if (isRtxCodec(codecs[idx + 1])) {
|
|
473
473
|
filteredCodecs.push(codecs[idx + 1]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fakeParameters.d.ts","sourceRoot":"","sources":["../../src/test/fakeParameters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,eAAe,MAAM,KAAK,CAAC;AAOvC,wBAAgB,6BAA6B,IAAI,eAAe,CAAC,KAAK,CAAC,eAAe,CAoKrF;AAED,wBAAgB,6BAA6B,IAAI,eAAe,CAAC,KAAK,CAAC,eAAe,CAoHrF;AAED,wBAAgB,8BAA8B,IAAI,eAAe,CAAC,KAAK,CAAC,gBAAgB,CAIvF;AAED,wBAAgB,2BAA2B,IAAI,eAAe,CAAC,KAAK,CAAC,cAAc,CAWlF;AAED,wBAAgB,iCAAiC,IAAI,eAAe,CAAC,KAAK,CAAC,gBAAgB,CAyD1F;AAED,wBAAgB,gCAAgC,IAAI;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,CAIjE;AAED,wBAAgB,gCAAgC,CAAC,EAChD,EAAE,EACF,aAAa,GACb,GAAE;IACF,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,aAAa,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,eAAe,CAAC,KAAK,CAAC,eAAe,CA6O7C;AAED,wBAAgB,oCAAoC,IAAI;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,CAIrE;AAED,wBAAgB,oCAAoC,CAAC,EACpD,EAAE,GACF,GAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,eAAe,CAAC,KAAK,CAAC,mBAAmB,
|
|
1
|
+
{"version":3,"file":"fakeParameters.d.ts","sourceRoot":"","sources":["../../src/test/fakeParameters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,eAAe,MAAM,KAAK,CAAC;AAOvC,wBAAgB,6BAA6B,IAAI,eAAe,CAAC,KAAK,CAAC,eAAe,CAoKrF;AAED,wBAAgB,6BAA6B,IAAI,eAAe,CAAC,KAAK,CAAC,eAAe,CAoHrF;AAED,wBAAgB,8BAA8B,IAAI,eAAe,CAAC,KAAK,CAAC,gBAAgB,CAIvF;AAED,wBAAgB,2BAA2B,IAAI,eAAe,CAAC,KAAK,CAAC,cAAc,CAWlF;AAED,wBAAgB,iCAAiC,IAAI,eAAe,CAAC,KAAK,CAAC,gBAAgB,CAyD1F;AAED,wBAAgB,gCAAgC,IAAI;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,CAIjE;AAED,wBAAgB,gCAAgC,CAAC,EAChD,EAAE,EACF,aAAa,GACb,GAAE;IACF,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,aAAa,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,eAAe,CAAC,KAAK,CAAC,eAAe,CA6O7C;AAED,wBAAgB,oCAAoC,IAAI;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,CAIrE;AAED,wBAAgB,oCAAoC,CAAC,EACpD,EAAE,GACF,GAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,eAAe,CAAC,KAAK,CAAC,mBAAmB,CAWlE"}
|
|
@@ -29,7 +29,7 @@ function generateFakeUuid() {
|
|
|
29
29
|
return String(utils.generateRandomNumber());
|
|
30
30
|
}
|
|
31
31
|
function generateRouterRtpCapabilities() {
|
|
32
|
-
return {
|
|
32
|
+
return utils.deepFreeze({
|
|
33
33
|
codecs: [
|
|
34
34
|
{
|
|
35
35
|
mimeType: 'audio/opus',
|
|
@@ -191,11 +191,11 @@ function generateRouterRtpCapabilities() {
|
|
|
191
191
|
direction: 'sendrecv',
|
|
192
192
|
},
|
|
193
193
|
],
|
|
194
|
-
};
|
|
194
|
+
});
|
|
195
195
|
}
|
|
196
196
|
exports.generateRouterRtpCapabilities = generateRouterRtpCapabilities;
|
|
197
197
|
function generateNativeRtpCapabilities() {
|
|
198
|
-
return {
|
|
198
|
+
return utils.deepFreeze({
|
|
199
199
|
codecs: [
|
|
200
200
|
{
|
|
201
201
|
mimeType: 'audio/opus',
|
|
@@ -309,17 +309,17 @@ function generateNativeRtpCapabilities() {
|
|
|
309
309
|
preferredId: 10,
|
|
310
310
|
},
|
|
311
311
|
],
|
|
312
|
-
};
|
|
312
|
+
});
|
|
313
313
|
}
|
|
314
314
|
exports.generateNativeRtpCapabilities = generateNativeRtpCapabilities;
|
|
315
315
|
function generateNativeSctpCapabilities() {
|
|
316
|
-
return {
|
|
316
|
+
return utils.deepFreeze({
|
|
317
317
|
numStreams: { OS: 2048, MIS: 2048 },
|
|
318
|
-
};
|
|
318
|
+
});
|
|
319
319
|
}
|
|
320
320
|
exports.generateNativeSctpCapabilities = generateNativeSctpCapabilities;
|
|
321
321
|
function generateLocalDtlsParameters() {
|
|
322
|
-
return {
|
|
322
|
+
return utils.deepFreeze({
|
|
323
323
|
fingerprints: [
|
|
324
324
|
{
|
|
325
325
|
algorithm: 'sha-256',
|
|
@@ -327,18 +327,18 @@ function generateLocalDtlsParameters() {
|
|
|
327
327
|
},
|
|
328
328
|
],
|
|
329
329
|
role: 'auto',
|
|
330
|
-
};
|
|
330
|
+
});
|
|
331
331
|
}
|
|
332
332
|
exports.generateLocalDtlsParameters = generateLocalDtlsParameters;
|
|
333
333
|
function generateTransportRemoteParameters() {
|
|
334
334
|
return {
|
|
335
335
|
id: generateFakeUuid(),
|
|
336
|
-
iceParameters: {
|
|
336
|
+
iceParameters: utils.deepFreeze({
|
|
337
337
|
iceLite: true,
|
|
338
338
|
password: 'yku5ej8nvfaor28lvtrabcx0wkrpkztz',
|
|
339
339
|
usernameFragment: 'h3hk1iz6qqlnqlne',
|
|
340
|
-
},
|
|
341
|
-
iceCandidates: [
|
|
340
|
+
}),
|
|
341
|
+
iceCandidates: utils.deepFreeze([
|
|
342
342
|
{
|
|
343
343
|
foundation: 'udpcandidate',
|
|
344
344
|
address: '9.9.9.9',
|
|
@@ -359,8 +359,8 @@ function generateTransportRemoteParameters() {
|
|
|
359
359
|
type: 'host',
|
|
360
360
|
tcpType: 'passive',
|
|
361
361
|
},
|
|
362
|
-
],
|
|
363
|
-
dtlsParameters: {
|
|
362
|
+
]),
|
|
363
|
+
dtlsParameters: utils.deepFreeze({
|
|
364
364
|
fingerprints: [
|
|
365
365
|
{
|
|
366
366
|
algorithm: 'sha-256',
|
|
@@ -376,20 +376,20 @@ function generateTransportRemoteParameters() {
|
|
|
376
376
|
},
|
|
377
377
|
],
|
|
378
378
|
role: 'auto',
|
|
379
|
-
},
|
|
380
|
-
sctpParameters: {
|
|
379
|
+
}),
|
|
380
|
+
sctpParameters: utils.deepFreeze({
|
|
381
381
|
port: 5000,
|
|
382
382
|
OS: 2048,
|
|
383
383
|
MIS: 2048,
|
|
384
384
|
maxMessageSize: 2000000,
|
|
385
|
-
},
|
|
385
|
+
}),
|
|
386
386
|
};
|
|
387
387
|
}
|
|
388
388
|
exports.generateTransportRemoteParameters = generateTransportRemoteParameters;
|
|
389
389
|
function generateProducerRemoteParameters() {
|
|
390
|
-
return {
|
|
390
|
+
return utils.deepFreeze({
|
|
391
391
|
id: generateFakeUuid(),
|
|
392
|
-
};
|
|
392
|
+
});
|
|
393
393
|
}
|
|
394
394
|
exports.generateProducerRemoteParameters = generateProducerRemoteParameters;
|
|
395
395
|
function generateConsumerRemoteParameters({ id, codecMimeType, } = {}) {
|
|
@@ -399,7 +399,7 @@ function generateConsumerRemoteParameters({ id, codecMimeType, } = {}) {
|
|
|
399
399
|
id: id || generateFakeUuid(),
|
|
400
400
|
producerId: generateFakeUuid(),
|
|
401
401
|
kind: 'audio',
|
|
402
|
-
rtpParameters: {
|
|
402
|
+
rtpParameters: utils.deepFreeze({
|
|
403
403
|
codecs: [
|
|
404
404
|
{
|
|
405
405
|
mimeType: 'audio/opus',
|
|
@@ -437,7 +437,7 @@ function generateConsumerRemoteParameters({ id, codecMimeType, } = {}) {
|
|
|
437
437
|
reducedSize: true,
|
|
438
438
|
mux: true,
|
|
439
439
|
},
|
|
440
|
-
},
|
|
440
|
+
}),
|
|
441
441
|
};
|
|
442
442
|
}
|
|
443
443
|
case 'audio/ISAC': {
|
|
@@ -445,7 +445,7 @@ function generateConsumerRemoteParameters({ id, codecMimeType, } = {}) {
|
|
|
445
445
|
id: id || generateFakeUuid(),
|
|
446
446
|
producerId: generateFakeUuid(),
|
|
447
447
|
kind: 'audio',
|
|
448
|
-
rtpParameters: {
|
|
448
|
+
rtpParameters: utils.deepFreeze({
|
|
449
449
|
codecs: [
|
|
450
450
|
{
|
|
451
451
|
mimeType: 'audio/ISAC',
|
|
@@ -476,7 +476,7 @@ function generateConsumerRemoteParameters({ id, codecMimeType, } = {}) {
|
|
|
476
476
|
reducedSize: true,
|
|
477
477
|
mux: true,
|
|
478
478
|
},
|
|
479
|
-
},
|
|
479
|
+
}),
|
|
480
480
|
};
|
|
481
481
|
}
|
|
482
482
|
case 'video/VP8': {
|
|
@@ -484,7 +484,7 @@ function generateConsumerRemoteParameters({ id, codecMimeType, } = {}) {
|
|
|
484
484
|
id: id || generateFakeUuid(),
|
|
485
485
|
producerId: generateFakeUuid(),
|
|
486
486
|
kind: 'video',
|
|
487
|
-
rtpParameters: {
|
|
487
|
+
rtpParameters: utils.deepFreeze({
|
|
488
488
|
codecs: [
|
|
489
489
|
{
|
|
490
490
|
mimeType: 'video/VP8',
|
|
@@ -546,7 +546,7 @@ function generateConsumerRemoteParameters({ id, codecMimeType, } = {}) {
|
|
|
546
546
|
reducedSize: true,
|
|
547
547
|
mux: true,
|
|
548
548
|
},
|
|
549
|
-
},
|
|
549
|
+
}),
|
|
550
550
|
};
|
|
551
551
|
}
|
|
552
552
|
case 'video/H264': {
|
|
@@ -554,7 +554,7 @@ function generateConsumerRemoteParameters({ id, codecMimeType, } = {}) {
|
|
|
554
554
|
id: id || generateFakeUuid(),
|
|
555
555
|
producerId: generateFakeUuid(),
|
|
556
556
|
kind: 'video',
|
|
557
|
-
rtpParameters: {
|
|
557
|
+
rtpParameters: utils.deepFreeze({
|
|
558
558
|
codecs: [
|
|
559
559
|
{
|
|
560
560
|
mimeType: 'video/H264',
|
|
@@ -618,30 +618,30 @@ function generateConsumerRemoteParameters({ id, codecMimeType, } = {}) {
|
|
|
618
618
|
reducedSize: true,
|
|
619
619
|
mux: true,
|
|
620
620
|
},
|
|
621
|
-
},
|
|
621
|
+
}),
|
|
622
622
|
};
|
|
623
623
|
}
|
|
624
624
|
default: {
|
|
625
|
-
throw new TypeError(`unknown codecMimeType
|
|
625
|
+
throw new TypeError(`unknown codecMimeType '${codecMimeType}'`);
|
|
626
626
|
}
|
|
627
627
|
}
|
|
628
628
|
}
|
|
629
629
|
exports.generateConsumerRemoteParameters = generateConsumerRemoteParameters;
|
|
630
630
|
function generateDataProducerRemoteParameters() {
|
|
631
|
-
return {
|
|
631
|
+
return utils.deepFreeze({
|
|
632
632
|
id: generateFakeUuid(),
|
|
633
|
-
};
|
|
633
|
+
});
|
|
634
634
|
}
|
|
635
635
|
exports.generateDataProducerRemoteParameters = generateDataProducerRemoteParameters;
|
|
636
636
|
function generateDataConsumerRemoteParameters({ id, } = {}) {
|
|
637
637
|
return {
|
|
638
638
|
id: id || generateFakeUuid(),
|
|
639
639
|
dataProducerId: generateFakeUuid(),
|
|
640
|
-
sctpStreamParameters: {
|
|
640
|
+
sctpStreamParameters: utils.deepFreeze({
|
|
641
641
|
streamId: 666,
|
|
642
642
|
maxPacketLifeTime: 5000,
|
|
643
643
|
maxRetransmits: undefined,
|
|
644
|
-
},
|
|
644
|
+
}),
|
|
645
645
|
};
|
|
646
646
|
}
|
|
647
647
|
exports.generateDataConsumerRemoteParameters = generateDataConsumerRemoteParameters;
|
package/lib/utils.d.ts
CHANGED
|
@@ -6,4 +6,9 @@ export declare function clone<T>(value: T): T;
|
|
|
6
6
|
* Generates a random positive integer.
|
|
7
7
|
*/
|
|
8
8
|
export declare function generateRandomNumber(): number;
|
|
9
|
+
/**
|
|
10
|
+
* Make an object or array recursively immutable.
|
|
11
|
+
* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/freeze.
|
|
12
|
+
*/
|
|
13
|
+
export declare function deepFreeze<T>(object: T): T;
|
|
9
14
|
//# sourceMappingURL=utils.d.ts.map
|
package/lib/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAWpC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAWpC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAc1C"}
|
package/lib/utils.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.generateRandomNumber = exports.clone = void 0;
|
|
3
|
+
exports.deepFreeze = exports.generateRandomNumber = exports.clone = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* Clones the given value.
|
|
6
6
|
*/
|
|
@@ -27,3 +27,20 @@ function generateRandomNumber() {
|
|
|
27
27
|
return Math.round(Math.random() * 10000000);
|
|
28
28
|
}
|
|
29
29
|
exports.generateRandomNumber = generateRandomNumber;
|
|
30
|
+
/**
|
|
31
|
+
* Make an object or array recursively immutable.
|
|
32
|
+
* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/freeze.
|
|
33
|
+
*/
|
|
34
|
+
function deepFreeze(object) {
|
|
35
|
+
// Retrieve the property names defined on object.
|
|
36
|
+
const propNames = Reflect.ownKeys(object);
|
|
37
|
+
// Freeze properties before freezing self.
|
|
38
|
+
for (const name of propNames) {
|
|
39
|
+
const value = object[name];
|
|
40
|
+
if ((value && typeof value === 'object') || typeof value === 'function') {
|
|
41
|
+
deepFreeze(value);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return Object.freeze(object);
|
|
45
|
+
}
|
|
46
|
+
exports.deepFreeze = deepFreeze;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mediasoup-client",
|
|
3
|
-
"version": "3.7.
|
|
3
|
+
"version": "3.7.8",
|
|
4
4
|
"description": "mediasoup client side TypeScript library",
|
|
5
5
|
"contributors": [
|
|
6
6
|
"Iñaki Baz Castillo <ibc@aliax.net> (https://inakibaz.me)",
|
|
@@ -80,16 +80,16 @@
|
|
|
80
80
|
"@types/jest": "^29.5.12",
|
|
81
81
|
"@types/sdp-transform": "^2.4.9",
|
|
82
82
|
"@types/ua-parser-js": "^0.7.39",
|
|
83
|
-
"@typescript-eslint/eslint-plugin": "^7.
|
|
84
|
-
"@typescript-eslint/parser": "^7.
|
|
83
|
+
"@typescript-eslint/eslint-plugin": "^7.8.0",
|
|
84
|
+
"@typescript-eslint/parser": "^7.8.0",
|
|
85
85
|
"eslint": "^8.57.0",
|
|
86
86
|
"eslint-config-prettier": "^9.1.0",
|
|
87
|
-
"eslint-plugin-jest": "^
|
|
87
|
+
"eslint-plugin-jest": "^28.5.0",
|
|
88
88
|
"eslint-plugin-prettier": "^5.1.3",
|
|
89
89
|
"jest": "^29.7.0",
|
|
90
90
|
"open-cli": "^8.0.0",
|
|
91
91
|
"prettier": "^3.2.5",
|
|
92
92
|
"ts-jest": "^29.1.2",
|
|
93
|
-
"typescript": "^5.
|
|
93
|
+
"typescript": "^5.4.5"
|
|
94
94
|
}
|
|
95
95
|
}
|