mediasoup-client 3.6.57 → 3.6.59
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/handlers/Chrome70.d.ts.map +1 -1
- package/lib/handlers/Chrome70.js +1 -0
- package/lib/handlers/Chrome74.d.ts.map +1 -1
- package/lib/handlers/Chrome74.js +5 -0
- package/lib/handlers/Firefox60.d.ts.map +1 -1
- package/lib/handlers/Firefox60.js +5 -0
- package/lib/handlers/Safari12.d.ts.map +1 -1
- package/lib/handlers/Safari12.js +5 -0
- package/lib/handlers/sdp/MediaSection.d.ts +4 -0
- package/lib/handlers/sdp/MediaSection.d.ts.map +1 -1
- package/lib/handlers/sdp/MediaSection.js +12 -9
- package/lib/handlers/sdp/RemoteSdp.d.ts +4 -0
- package/lib/handlers/sdp/RemoteSdp.d.ts.map +1 -1
- package/lib/handlers/sdp/RemoteSdp.js +21 -10
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/package.json +9 -9
- package/src/handlers/Chrome70.ts +2 -0
- package/src/handlers/Chrome74.ts +7 -0
- package/src/handlers/Firefox60.ts +6 -0
- package/src/handlers/Safari12.ts +6 -0
- package/src/handlers/sdp/MediaSection.ts +20 -10
- package/src/handlers/sdp/RemoteSdp.ts +34 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chrome70.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome70.ts"],"names":[],"mappings":"AAMA,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;AAG5B,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;IAG7C,OAAO,CAAC,UAAU,CAAC,CAAkB;IAErC,OAAO,CAAC,UAAU,CAAC,CAAY;IAE/B,OAAO,CAAC,2BAA2B,CAAC,CAAmC;IAGvE,OAAO,CAAC,iCAAiC,CAAC,CAAmC;IAG7E,OAAO,CAAC,oBAAoB,CAAC,CAAW;IAExC,OAAO,CAAC,GAAG,CAAM;IAEjB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CACxB;IAEX,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IAEjD,OAAO,CAAC,2BAA2B,CAAS;IAE5C,OAAO,CAAC,qBAAqB,CAAK;IAElC,OAAO,CAAC,eAAe,CAAS;IAEhC;;OAEG;IACH,MAAM,CAAC,aAAa,IAAI,cAAc;;IAUtC,IAAI,IAAI,IAAI,MAAM,CAGjB;IAED,KAAK,IAAI,IAAI;IAcP,wBAAwB,IAAI,OAAO,CAAC,eAAe,CAAC;IAsCpD,yBAAyB,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAS5D,GAAG,CACF,EACC,SAAS,EACT,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,EAAE,iBAAiB,GAClB,IAAI;IAqED,gBAAgB,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAW3D,UAAU,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAgDvD,iBAAiB,IAAI,OAAO,CAAC,cAAc,CAAC;IAK5C,IAAI,CACT,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,kBAAkB,GAC3D,OAAO,CAAC,iBAAiB,CAAC;IAwLvB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"Chrome70.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome70.ts"],"names":[],"mappings":"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"}
|
package/lib/handlers/Chrome70.js
CHANGED
|
@@ -313,6 +313,7 @@ class Chrome70 extends HandlerInterface_1.HandlerInterface {
|
|
|
313
313
|
if (!transceiver)
|
|
314
314
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
315
315
|
transceiver.sender.replaceTrack(null);
|
|
316
|
+
transceiver.stop();
|
|
316
317
|
this._pc.removeTrack(transceiver.sender);
|
|
317
318
|
this._remoteSdp.closeMediaSection(transceiver.mid);
|
|
318
319
|
const offer = await this._pc.createOffer();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chrome74.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome74.ts"],"names":[],"mappings":"AAMA,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;AAG5B,OAAO,EAAE,aAAa,EAAY,MAAM,cAAc,CAAC;AACvD,OAAO,EACN,eAAe,EAGf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAwB,MAAM,mBAAmB,CAAC;AAM3E,qBAAa,QAAS,SAAQ,gBAAgB;IAG7C,OAAO,CAAC,UAAU,CAAC,CAAkB;IAErC,OAAO,CAAC,UAAU,CAAC,CAAY;IAE/B,OAAO,CAAC,2BAA2B,CAAC,CAAmC;IAGvE,OAAO,CAAC,iCAAiC,CAAC,CAAmC;IAG7E,OAAO,CAAC,oBAAoB,CAAC,CAAW;IAExC,OAAO,CAAC,GAAG,CAAM;IAEjB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CACxB;IAEX,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IAEjD,OAAO,CAAC,2BAA2B,CAAS;IAE5C,OAAO,CAAC,qBAAqB,CAAK;IAElC,OAAO,CAAC,eAAe,CAAS;IAEhC;;OAEG;IACH,MAAM,CAAC,aAAa,IAAI,cAAc;;IAUtC,IAAI,IAAI,IAAI,MAAM,CAGjB;IAED,KAAK,IAAI,IAAI;IAcP,wBAAwB,IAAI,OAAO,CAAC,eAAe,CAAC;IAsCpD,yBAAyB,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAS5D,GAAG,CACF,EACC,SAAS,EACT,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,EAAE,iBAAiB,GAClB,IAAI;IAqED,gBAAgB,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAW3D,UAAU,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAgDvD,iBAAiB,IAAI,OAAO,CAAC,cAAc,CAAC;IAK5C,IAAI,CACT,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,kBAAkB,GAC3D,OAAO,CAAC,iBAAiB,CAAC;IAuKvB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"Chrome74.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome74.ts"],"names":[],"mappings":"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"}
|
package/lib/handlers/Chrome74.js
CHANGED
|
@@ -304,6 +304,7 @@ class Chrome74 extends HandlerInterface_1.HandlerInterface {
|
|
|
304
304
|
if (!transceiver)
|
|
305
305
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
306
306
|
transceiver.sender.replaceTrack(null);
|
|
307
|
+
transceiver.stop();
|
|
307
308
|
this._pc.removeTrack(transceiver.sender);
|
|
308
309
|
this._remoteSdp.closeMediaSection(transceiver.mid);
|
|
309
310
|
const offer = await this._pc.createOffer();
|
|
@@ -321,6 +322,7 @@ class Chrome74 extends HandlerInterface_1.HandlerInterface {
|
|
|
321
322
|
if (!transceiver)
|
|
322
323
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
323
324
|
transceiver.direction = 'inactive';
|
|
325
|
+
this._remoteSdp.pauseMediaSection(localId);
|
|
324
326
|
const offer = await this._pc.createOffer();
|
|
325
327
|
logger.debug('pauseSending() | calling pc.setLocalDescription() [offer:%o]', offer);
|
|
326
328
|
await this._pc.setLocalDescription(offer);
|
|
@@ -332,6 +334,7 @@ class Chrome74 extends HandlerInterface_1.HandlerInterface {
|
|
|
332
334
|
this._assertSendDirection();
|
|
333
335
|
logger.debug('resumeSending() [localId:%s]', localId);
|
|
334
336
|
const transceiver = this._mapMidTransceiver.get(localId);
|
|
337
|
+
this._remoteSdp.resumeSendingMediaSection(localId);
|
|
335
338
|
if (!transceiver)
|
|
336
339
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
337
340
|
transceiver.direction = 'sendonly';
|
|
@@ -525,6 +528,7 @@ class Chrome74 extends HandlerInterface_1.HandlerInterface {
|
|
|
525
528
|
if (!transceiver)
|
|
526
529
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
527
530
|
transceiver.direction = 'inactive';
|
|
531
|
+
this._remoteSdp.pauseMediaSection(localId);
|
|
528
532
|
}
|
|
529
533
|
const offer = { type: 'offer', sdp: this._remoteSdp.getSdp() };
|
|
530
534
|
logger.debug('pauseReceiving() | calling pc.setRemoteDescription() [offer:%o]', offer);
|
|
@@ -541,6 +545,7 @@ class Chrome74 extends HandlerInterface_1.HandlerInterface {
|
|
|
541
545
|
if (!transceiver)
|
|
542
546
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
543
547
|
transceiver.direction = 'recvonly';
|
|
548
|
+
this._remoteSdp.resumeReceivingMediaSection(localId);
|
|
544
549
|
}
|
|
545
550
|
const offer = { type: 'offer', sdp: this._remoteSdp.getSdp() };
|
|
546
551
|
logger.debug('resumeReceiving() | calling pc.setRemoteDescription() [offer:%o]', offer);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Firefox60.d.ts","sourceRoot":"","sources":["../../src/handlers/Firefox60.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,SAAU,SAAQ,gBAAgB;IAG9C,OAAO,CAAC,UAAU,CAAC,CAAkB;IAErC,OAAO,CAAC,UAAU,CAAC,CAAY;IAE/B,OAAO,CAAC,2BAA2B,CAAC,CAAmC;IAGvE,OAAO,CAAC,iCAAiC,CAAC,CAAmC;IAE7E,OAAO,CAAC,GAAG,CAAM;IAEjB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CACxB;IAEX,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IAEjD,OAAO,CAAC,2BAA2B,CAAS;IAE5C,OAAO,CAAC,qBAAqB,CAAK;IAElC,OAAO,CAAC,eAAe,CAAS;IAEhC;;OAEG;IACH,MAAM,CAAC,aAAa,IAAI,cAAc;;IAUtC,IAAI,IAAI,IAAI,MAAM,CAGjB;IAED,KAAK,IAAI,IAAI;IAcP,wBAAwB,IAAI,OAAO,CAAC,eAAe,CAAC;IAqEpD,yBAAyB,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAS5D,GAAG,CACF,EACC,SAAS,EACT,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,EAAE,iBAAiB,GAClB,IAAI;IA8DD,gBAAgB,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3D,UAAU,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAgDvD,iBAAiB,IAAI,OAAO,CAAC,cAAc,CAAC;IAK5C,IAAI,CACT,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,kBAAkB,GAC3D,OAAO,CAAC,iBAAiB,CAAC;IAsJvB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"Firefox60.d.ts","sourceRoot":"","sources":["../../src/handlers/Firefox60.ts"],"names":[],"mappings":"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"}
|
|
@@ -313,6 +313,7 @@ class Firefox60 extends HandlerInterface_1.HandlerInterface {
|
|
|
313
313
|
if (!transceiver)
|
|
314
314
|
throw new Error('associated transceiver not found');
|
|
315
315
|
transceiver.sender.replaceTrack(null);
|
|
316
|
+
transceiver.stop();
|
|
316
317
|
this._pc.removeTrack(transceiver.sender);
|
|
317
318
|
// NOTE: Cannot use closeMediaSection() due to the the note above in send()
|
|
318
319
|
// method.
|
|
@@ -334,6 +335,7 @@ class Firefox60 extends HandlerInterface_1.HandlerInterface {
|
|
|
334
335
|
if (!transceiver)
|
|
335
336
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
336
337
|
transceiver.direction = 'inactive';
|
|
338
|
+
this._remoteSdp.pauseMediaSection(localId);
|
|
337
339
|
const offer = await this._pc.createOffer();
|
|
338
340
|
logger.debug('pauseSending() | calling pc.setLocalDescription() [offer:%o]', offer);
|
|
339
341
|
await this._pc.setLocalDescription(offer);
|
|
@@ -349,6 +351,7 @@ class Firefox60 extends HandlerInterface_1.HandlerInterface {
|
|
|
349
351
|
if (!transceiver)
|
|
350
352
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
351
353
|
transceiver.direction = 'sendonly';
|
|
354
|
+
this._remoteSdp.resumeSendingMediaSection(localId);
|
|
352
355
|
const offer = await this._pc.createOffer();
|
|
353
356
|
logger.debug('resumeSending() | calling pc.setLocalDescription() [offer:%o]', offer);
|
|
354
357
|
await this._pc.setLocalDescription(offer);
|
|
@@ -531,6 +534,7 @@ class Firefox60 extends HandlerInterface_1.HandlerInterface {
|
|
|
531
534
|
if (!transceiver)
|
|
532
535
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
533
536
|
transceiver.direction = 'inactive';
|
|
537
|
+
this._remoteSdp.pauseMediaSection(localId);
|
|
534
538
|
}
|
|
535
539
|
const offer = { type: 'offer', sdp: this._remoteSdp.getSdp() };
|
|
536
540
|
logger.debug('pauseReceiving() | calling pc.setRemoteDescription() [offer:%o]', offer);
|
|
@@ -547,6 +551,7 @@ class Firefox60 extends HandlerInterface_1.HandlerInterface {
|
|
|
547
551
|
if (!transceiver)
|
|
548
552
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
549
553
|
transceiver.direction = 'recvonly';
|
|
554
|
+
this._remoteSdp.resumeReceivingMediaSection(localId);
|
|
550
555
|
}
|
|
551
556
|
const offer = { type: 'offer', sdp: this._remoteSdp.getSdp() };
|
|
552
557
|
logger.debug('resumeReceiving() | calling pc.setRemoteDescription() [offer:%o]', offer);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Safari12.d.ts","sourceRoot":"","sources":["../../src/handlers/Safari12.ts"],"names":[],"mappings":"AAMA,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;IAG7C,OAAO,CAAC,UAAU,CAAC,CAAkB;IAErC,OAAO,CAAC,UAAU,CAAC,CAAY;IAE/B,OAAO,CAAC,2BAA2B,CAAC,CAAmC;IAGvE,OAAO,CAAC,iCAAiC,CAAC,CAAmC;IAG7E,OAAO,CAAC,oBAAoB,CAAC,CAAW;IAExC,OAAO,CAAC,GAAG,CAAM;IAEjB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CACxB;IAEX,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IAEjD,OAAO,CAAC,2BAA2B,CAAS;IAE5C,OAAO,CAAC,qBAAqB,CAAK;IAElC,OAAO,CAAC,eAAe,CAAS;IAEhC;;OAEG;IACH,MAAM,CAAC,aAAa,IAAI,cAAc;;IAUtC,IAAI,IAAI,IAAI,MAAM,CAGjB;IAED,KAAK,IAAI,IAAI;IAcP,wBAAwB,IAAI,OAAO,CAAC,eAAe,CAAC;IAqCpD,yBAAyB,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAS5D,GAAG,CACF,EACC,SAAS,EACT,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,EAAE,iBAAiB,GAClB,IAAI;IAoED,gBAAgB,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAW3D,UAAU,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAgDvD,iBAAiB,IAAI,OAAO,CAAC,cAAc,CAAC;IAK5C,IAAI,CACT,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,kBAAkB,GAC3D,OAAO,CAAC,iBAAiB,CAAC;IAgIvB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"Safari12.d.ts","sourceRoot":"","sources":["../../src/handlers/Safari12.ts"],"names":[],"mappings":"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"}
|
package/lib/handlers/Safari12.js
CHANGED
|
@@ -275,6 +275,7 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
|
|
|
275
275
|
if (!transceiver)
|
|
276
276
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
277
277
|
transceiver.sender.replaceTrack(null);
|
|
278
|
+
transceiver.stop();
|
|
278
279
|
this._pc.removeTrack(transceiver.sender);
|
|
279
280
|
this._remoteSdp.closeMediaSection(transceiver.mid);
|
|
280
281
|
const offer = await this._pc.createOffer();
|
|
@@ -293,6 +294,7 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
|
|
|
293
294
|
if (!transceiver)
|
|
294
295
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
295
296
|
transceiver.direction = 'inactive';
|
|
297
|
+
this._remoteSdp.pauseMediaSection(localId);
|
|
296
298
|
const offer = await this._pc.createOffer();
|
|
297
299
|
logger.debug('pauseSending() | calling pc.setLocalDescription() [offer:%o]', offer);
|
|
298
300
|
await this._pc.setLocalDescription(offer);
|
|
@@ -308,6 +310,7 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
|
|
|
308
310
|
if (!transceiver)
|
|
309
311
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
310
312
|
transceiver.direction = 'sendonly';
|
|
313
|
+
this._remoteSdp.resumeSendingMediaSection(localId);
|
|
311
314
|
const offer = await this._pc.createOffer();
|
|
312
315
|
logger.debug('resumeSending() | calling pc.setLocalDescription() [offer:%o]', offer);
|
|
313
316
|
await this._pc.setLocalDescription(offer);
|
|
@@ -495,6 +498,7 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
|
|
|
495
498
|
if (!transceiver)
|
|
496
499
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
497
500
|
transceiver.direction = 'inactive';
|
|
501
|
+
this._remoteSdp.pauseMediaSection(localId);
|
|
498
502
|
}
|
|
499
503
|
const offer = { type: 'offer', sdp: this._remoteSdp.getSdp() };
|
|
500
504
|
logger.debug('pauseReceiving() | calling pc.setRemoteDescription() [offer:%o]', offer);
|
|
@@ -511,6 +515,7 @@ class Safari12 extends HandlerInterface_1.HandlerInterface {
|
|
|
511
515
|
if (!transceiver)
|
|
512
516
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
513
517
|
transceiver.direction = 'recvonly';
|
|
518
|
+
this._remoteSdp.resumeReceivingMediaSection(localId);
|
|
514
519
|
}
|
|
515
520
|
const offer = { type: 'offer', sdp: this._remoteSdp.getSdp() };
|
|
516
521
|
logger.debug('resumeReceiving() | calling pc.setRemoteDescription() [offer:%o]', offer);
|
|
@@ -16,6 +16,8 @@ export declare abstract class MediaSection {
|
|
|
16
16
|
get closed(): boolean;
|
|
17
17
|
getObject(): object;
|
|
18
18
|
setIceParameters(iceParameters: IceParameters): void;
|
|
19
|
+
pause(): void;
|
|
20
|
+
abstract resume(): void;
|
|
19
21
|
disable(): void;
|
|
20
22
|
close(): void;
|
|
21
23
|
}
|
|
@@ -34,6 +36,7 @@ export declare class AnswerMediaSection extends MediaSection {
|
|
|
34
36
|
extmapAllowMixed?: boolean;
|
|
35
37
|
});
|
|
36
38
|
setDtlsRole(role: DtlsRole): void;
|
|
39
|
+
resume(): void;
|
|
37
40
|
}
|
|
38
41
|
export declare class OfferMediaSection extends MediaSection {
|
|
39
42
|
constructor({ iceParameters, iceCandidates, dtlsParameters, sctpParameters, plainRtpParameters, planB, mid, kind, offerRtpParameters, streamId, trackId, oldDataChannelSpec }: {
|
|
@@ -51,6 +54,7 @@ export declare class OfferMediaSection extends MediaSection {
|
|
|
51
54
|
oldDataChannelSpec?: boolean;
|
|
52
55
|
});
|
|
53
56
|
setDtlsRole(role: DtlsRole): void;
|
|
57
|
+
resume(): void;
|
|
54
58
|
planBReceive({ offerRtpParameters, streamId, trackId }: {
|
|
55
59
|
offerRtpParameters: RtpParameters;
|
|
56
60
|
streamId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MediaSection.d.ts","sourceRoot":"","sources":["../../../src/handlers/sdp/MediaSection.ts"],"names":[],"mappings":"AACA,OAAO,EACN,aAAa,EACb,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,kBAAkB,EAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EACN,SAAS,EACT,aAAa,EAGb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,8BAAsB,YAAY;IAGjC,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC;IAErC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;gBAGlC,EACC,aAAa,EACb,aAAa,EACb,cAAc,EACd,KAAa,EACb,EACD;QACC,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;QAC/B,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,KAAK,EAAE,OAAO,CAAC;KACf;IA4CF,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAE1C,IAAI,GAAG,IAAI,MAAM,CAGhB;IAED,IAAI,MAAM,IAAI,OAAO,CAGpB;IAED,SAAS,IAAI,MAAM;IAKnB,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;IAMpD,OAAO,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"MediaSection.d.ts","sourceRoot":"","sources":["../../../src/handlers/sdp/MediaSection.ts"],"names":[],"mappings":"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"}
|
|
@@ -69,25 +69,22 @@ class MediaSection {
|
|
|
69
69
|
this._mediaObject.iceUfrag = iceParameters.usernameFragment;
|
|
70
70
|
this._mediaObject.icePwd = iceParameters.password;
|
|
71
71
|
}
|
|
72
|
-
|
|
72
|
+
pause() {
|
|
73
73
|
this._mediaObject.direction = 'inactive';
|
|
74
|
+
}
|
|
75
|
+
disable() {
|
|
76
|
+
this.pause();
|
|
74
77
|
delete this._mediaObject.ext;
|
|
75
78
|
delete this._mediaObject.ssrcs;
|
|
76
79
|
delete this._mediaObject.ssrcGroups;
|
|
77
80
|
delete this._mediaObject.simulcast;
|
|
78
81
|
delete this._mediaObject.simulcast_03;
|
|
79
82
|
delete this._mediaObject.rids;
|
|
83
|
+
delete this._mediaObject.extmapAllowMixed;
|
|
80
84
|
}
|
|
81
85
|
close() {
|
|
82
|
-
this.
|
|
86
|
+
this.disable();
|
|
83
87
|
this._mediaObject.port = 0;
|
|
84
|
-
delete this._mediaObject.ext;
|
|
85
|
-
delete this._mediaObject.ssrcs;
|
|
86
|
-
delete this._mediaObject.ssrcGroups;
|
|
87
|
-
delete this._mediaObject.simulcast;
|
|
88
|
-
delete this._mediaObject.simulcast_03;
|
|
89
|
-
delete this._mediaObject.rids;
|
|
90
|
-
delete this._mediaObject.extmapAllowMixed;
|
|
91
88
|
}
|
|
92
89
|
}
|
|
93
90
|
exports.MediaSection = MediaSection;
|
|
@@ -287,6 +284,9 @@ class AnswerMediaSection extends MediaSection {
|
|
|
287
284
|
break;
|
|
288
285
|
}
|
|
289
286
|
}
|
|
287
|
+
resume() {
|
|
288
|
+
this._mediaObject.direction = 'recvonly';
|
|
289
|
+
}
|
|
290
290
|
}
|
|
291
291
|
exports.AnswerMediaSection = AnswerMediaSection;
|
|
292
292
|
class OfferMediaSection extends MediaSection {
|
|
@@ -432,6 +432,9 @@ class OfferMediaSection extends MediaSection {
|
|
|
432
432
|
// Always 'actpass'.
|
|
433
433
|
this._mediaObject.setup = 'actpass';
|
|
434
434
|
}
|
|
435
|
+
resume() {
|
|
436
|
+
this._mediaObject.direction = 'sendonly';
|
|
437
|
+
}
|
|
435
438
|
planBReceive({ offerRtpParameters, streamId, trackId }) {
|
|
436
439
|
const encoding = offerRtpParameters.encodings[0];
|
|
437
440
|
const ssrc = encoding.ssrc;
|
|
@@ -43,6 +43,9 @@ export declare class RemoteSdp {
|
|
|
43
43
|
streamId: string;
|
|
44
44
|
trackId: string;
|
|
45
45
|
}): void;
|
|
46
|
+
pauseMediaSection(mid: string): void;
|
|
47
|
+
resumeSendingMediaSection(mid: string): void;
|
|
48
|
+
resumeReceivingMediaSection(mid: string): void;
|
|
46
49
|
disableMediaSection(mid: string): void;
|
|
47
50
|
closeMediaSection(mid: string): void;
|
|
48
51
|
planBStopReceiving({ mid, offerRtpParameters }: {
|
|
@@ -58,6 +61,7 @@ export declare class RemoteSdp {
|
|
|
58
61
|
getSdp(): string;
|
|
59
62
|
_addMediaSection(newMediaSection: MediaSection): void;
|
|
60
63
|
_replaceMediaSection(newMediaSection: MediaSection, reuseMid?: string): void;
|
|
64
|
+
_findMediaSection(mid: string): MediaSection;
|
|
61
65
|
_regenerateBundleMids(): void;
|
|
62
66
|
}
|
|
63
67
|
//# sourceMappingURL=RemoteSdp.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteSdp.d.ts","sourceRoot":"","sources":["../../../src/handlers/sdp/RemoteSdp.ts"],"names":[],"mappings":"AAEA,OAAO,EACN,YAAY,EAGZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,aAAa,EACb,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,kBAAkB,EAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAItD,qBAAa,SAAS;IAGrB,OAAO,CAAC,cAAc,CAAC,CAAgB;IAEvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAiB;IAEjD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAiB;IAElD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAiB;IAElD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAqB;IAE1D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IAEjC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAsB;IAErD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAkC;IAE9D,OAAO,CAAC,SAAS,CAAC,CAAS;IAE3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAM;gBAGhC,EACC,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,KAAa,EACb,EACD;QACC,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;QAC/B,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;QACxC,KAAK,CAAC,EAAE,OAAO,CAAC;KAChB;IAyDF,mBAAmB,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;IAevD,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAYpC,sBAAsB,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;IAe5D,IAAI,CACH,EACC,gBAAgB,EAChB,QAAQ,EACR,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,EACZ,gBAAwB,EACxB,EACD;QACC,gBAAgB,EAAE,GAAG,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,kBAAkB,EAAE,aAAa,CAAC;QAClC,mBAAmB,EAAE,aAAa,CAAC;QACnC,YAAY,CAAC,EAAE,oBAAoB,CAAC;QACpC,gBAAgB,CAAC,EAAG,OAAO,CAAC;KAC5B,GACC,IAAI;IAiCP,OAAO,CACN,EACC,GAAG,EACH,IAAI,EACJ,kBAAkB,EAClB,QAAQ,EACR,OAAO,EACP,EACD;QACC,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,SAAS,CAAC;QAChB,kBAAkB,EAAE,aAAa,CAAC;QAClC,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;KAChB,GACC,IAAI;IA+CP,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"RemoteSdp.d.ts","sourceRoot":"","sources":["../../../src/handlers/sdp/RemoteSdp.ts"],"names":[],"mappings":"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"}
|
|
@@ -163,20 +163,24 @@ class RemoteSdp {
|
|
|
163
163
|
this._replaceMediaSection(mediaSection);
|
|
164
164
|
}
|
|
165
165
|
}
|
|
166
|
+
pauseMediaSection(mid) {
|
|
167
|
+
const mediaSection = this._findMediaSection(mid);
|
|
168
|
+
mediaSection.pause();
|
|
169
|
+
}
|
|
170
|
+
resumeSendingMediaSection(mid) {
|
|
171
|
+
const mediaSection = this._findMediaSection(mid);
|
|
172
|
+
mediaSection.resume();
|
|
173
|
+
}
|
|
174
|
+
resumeReceivingMediaSection(mid) {
|
|
175
|
+
const mediaSection = this._findMediaSection(mid);
|
|
176
|
+
mediaSection.resume();
|
|
177
|
+
}
|
|
166
178
|
disableMediaSection(mid) {
|
|
167
|
-
const
|
|
168
|
-
if (idx === undefined) {
|
|
169
|
-
throw new Error(`no media section found with mid '${mid}'`);
|
|
170
|
-
}
|
|
171
|
-
const mediaSection = this._mediaSections[idx];
|
|
179
|
+
const mediaSection = this._findMediaSection(mid);
|
|
172
180
|
mediaSection.disable();
|
|
173
181
|
}
|
|
174
182
|
closeMediaSection(mid) {
|
|
175
|
-
const
|
|
176
|
-
if (idx === undefined) {
|
|
177
|
-
throw new Error(`no media section found with mid '${mid}'`);
|
|
178
|
-
}
|
|
179
|
-
const mediaSection = this._mediaSections[idx];
|
|
183
|
+
const mediaSection = this._findMediaSection(mid);
|
|
180
184
|
// NOTE: Closing the first m section is a pain since it invalidates the
|
|
181
185
|
// bundled transport, so let's avoid it.
|
|
182
186
|
if (mid === this._firstMid) {
|
|
@@ -267,6 +271,13 @@ class RemoteSdp {
|
|
|
267
271
|
this._sdpObject.media[idx] = newMediaSection.getObject();
|
|
268
272
|
}
|
|
269
273
|
}
|
|
274
|
+
_findMediaSection(mid) {
|
|
275
|
+
const idx = this._midToIndex.get(mid);
|
|
276
|
+
if (idx === undefined) {
|
|
277
|
+
throw new Error(`no media section found with mid '${mid}'`);
|
|
278
|
+
}
|
|
279
|
+
return this._mediaSections[idx];
|
|
280
|
+
}
|
|
270
281
|
_regenerateBundleMids() {
|
|
271
282
|
if (!this._dtlsParameters)
|
|
272
283
|
return;
|
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mediasoup-client",
|
|
3
|
-
"version": "3.6.
|
|
3
|
+
"version": "3.6.59",
|
|
4
4
|
"description": "mediasoup client side JavaScript library",
|
|
5
5
|
"contributors": [
|
|
6
6
|
"Iñaki Baz Castillo <ibc@aliax.net> (https://inakibaz.me)",
|
|
@@ -44,20 +44,20 @@
|
|
|
44
44
|
"fake-mediastreamtrack": "^1.1.6",
|
|
45
45
|
"h264-profile-level-id": "^1.0.1",
|
|
46
46
|
"sdp-transform": "^2.14.1",
|
|
47
|
-
"supports-color": "^9.2.
|
|
47
|
+
"supports-color": "^9.2.3"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|
|
50
50
|
"@types/sdp-transform": "^2.4.5",
|
|
51
51
|
"@types/uuid": "^3.4.9",
|
|
52
|
-
"@typescript-eslint/eslint-plugin": "^5.
|
|
53
|
-
"@typescript-eslint/parser": "^5.
|
|
54
|
-
"eslint": "^8.
|
|
55
|
-
"eslint-plugin-jest": "^
|
|
56
|
-
"jest": "^
|
|
52
|
+
"@typescript-eslint/eslint-plugin": "^5.42.1",
|
|
53
|
+
"@typescript-eslint/parser": "^5.42.1",
|
|
54
|
+
"eslint": "^8.27.0",
|
|
55
|
+
"eslint-plugin-jest": "^27.1.5",
|
|
56
|
+
"jest": "^29.3.1",
|
|
57
57
|
"jest-tobetype": "^1.2.3",
|
|
58
|
-
"open-cli": "^7.0
|
|
58
|
+
"open-cli": "^7.1.0",
|
|
59
59
|
"tsc-watch": "^5.0.3",
|
|
60
|
-
"typescript": "^4.
|
|
60
|
+
"typescript": "^4.8.4",
|
|
61
61
|
"uuid": "^3.4.0"
|
|
62
62
|
}
|
|
63
63
|
}
|
package/src/handlers/Chrome70.ts
CHANGED
|
@@ -478,6 +478,8 @@ export class Chrome70 extends HandlerInterface
|
|
|
478
478
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
479
479
|
|
|
480
480
|
transceiver.sender.replaceTrack(null);
|
|
481
|
+
transceiver.stop();
|
|
482
|
+
|
|
481
483
|
this._pc.removeTrack(transceiver.sender);
|
|
482
484
|
this._remoteSdp!.closeMediaSection(transceiver.mid!);
|
|
483
485
|
|
package/src/handlers/Chrome74.ts
CHANGED
|
@@ -465,6 +465,8 @@ export class Chrome74 extends HandlerInterface
|
|
|
465
465
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
466
466
|
|
|
467
467
|
transceiver.sender.replaceTrack(null);
|
|
468
|
+
transceiver.stop();
|
|
469
|
+
|
|
468
470
|
this._pc.removeTrack(transceiver.sender);
|
|
469
471
|
this._remoteSdp!.closeMediaSection(transceiver.mid!);
|
|
470
472
|
|
|
@@ -499,6 +501,7 @@ export class Chrome74 extends HandlerInterface
|
|
|
499
501
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
500
502
|
|
|
501
503
|
transceiver.direction = 'inactive';
|
|
504
|
+
this._remoteSdp!.pauseMediaSection(localId);
|
|
502
505
|
|
|
503
506
|
const offer = await this._pc.createOffer();
|
|
504
507
|
|
|
@@ -525,6 +528,8 @@ export class Chrome74 extends HandlerInterface
|
|
|
525
528
|
|
|
526
529
|
const transceiver = this._mapMidTransceiver.get(localId);
|
|
527
530
|
|
|
531
|
+
this._remoteSdp!.resumeSendingMediaSection(localId);
|
|
532
|
+
|
|
528
533
|
if (!transceiver)
|
|
529
534
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
530
535
|
|
|
@@ -862,6 +867,7 @@ export class Chrome74 extends HandlerInterface
|
|
|
862
867
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
863
868
|
|
|
864
869
|
transceiver.direction = 'inactive';
|
|
870
|
+
this._remoteSdp!.pauseMediaSection(localId);
|
|
865
871
|
}
|
|
866
872
|
|
|
867
873
|
const offer = { type: 'offer', sdp: this._remoteSdp!.getSdp() };
|
|
@@ -895,6 +901,7 @@ export class Chrome74 extends HandlerInterface
|
|
|
895
901
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
896
902
|
|
|
897
903
|
transceiver.direction = 'recvonly';
|
|
904
|
+
this._remoteSdp!.resumeReceivingMediaSection(localId);
|
|
898
905
|
}
|
|
899
906
|
|
|
900
907
|
const offer = { type: 'offer', sdp: this._remoteSdp!.getSdp() };
|
|
@@ -458,6 +458,8 @@ export class Firefox60 extends HandlerInterface
|
|
|
458
458
|
throw new Error('associated transceiver not found');
|
|
459
459
|
|
|
460
460
|
transceiver.sender.replaceTrack(null);
|
|
461
|
+
transceiver.stop();
|
|
462
|
+
|
|
461
463
|
this._pc.removeTrack(transceiver.sender);
|
|
462
464
|
// NOTE: Cannot use closeMediaSection() due to the the note above in send()
|
|
463
465
|
// method.
|
|
@@ -496,6 +498,7 @@ export class Firefox60 extends HandlerInterface
|
|
|
496
498
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
497
499
|
|
|
498
500
|
transceiver.direction = 'inactive';
|
|
501
|
+
this._remoteSdp!.pauseMediaSection(localId);
|
|
499
502
|
|
|
500
503
|
const offer = await this._pc.createOffer();
|
|
501
504
|
|
|
@@ -527,6 +530,7 @@ export class Firefox60 extends HandlerInterface
|
|
|
527
530
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
528
531
|
|
|
529
532
|
transceiver.direction = 'sendonly';
|
|
533
|
+
this._remoteSdp!.resumeSendingMediaSection(localId);
|
|
530
534
|
|
|
531
535
|
const offer = await this._pc.createOffer();
|
|
532
536
|
|
|
@@ -849,6 +853,7 @@ export class Firefox60 extends HandlerInterface
|
|
|
849
853
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
850
854
|
|
|
851
855
|
transceiver.direction = 'inactive';
|
|
856
|
+
this._remoteSdp!.pauseMediaSection(localId);
|
|
852
857
|
}
|
|
853
858
|
|
|
854
859
|
const offer = { type: 'offer', sdp: this._remoteSdp!.getSdp() };
|
|
@@ -882,6 +887,7 @@ export class Firefox60 extends HandlerInterface
|
|
|
882
887
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
883
888
|
|
|
884
889
|
transceiver.direction = 'recvonly';
|
|
890
|
+
this._remoteSdp!.resumeReceivingMediaSection(localId);
|
|
885
891
|
}
|
|
886
892
|
|
|
887
893
|
const offer = { type: 'offer', sdp: this._remoteSdp!.getSdp() };
|
package/src/handlers/Safari12.ts
CHANGED
|
@@ -419,6 +419,8 @@ export class Safari12 extends HandlerInterface
|
|
|
419
419
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
420
420
|
|
|
421
421
|
transceiver.sender.replaceTrack(null);
|
|
422
|
+
transceiver.stop();
|
|
423
|
+
|
|
422
424
|
this._pc.removeTrack(transceiver.sender);
|
|
423
425
|
this._remoteSdp!.closeMediaSection(transceiver.mid!);
|
|
424
426
|
|
|
@@ -454,6 +456,7 @@ export class Safari12 extends HandlerInterface
|
|
|
454
456
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
455
457
|
|
|
456
458
|
transceiver.direction = 'inactive';
|
|
459
|
+
this._remoteSdp!.pauseMediaSection(localId);
|
|
457
460
|
|
|
458
461
|
const offer = await this._pc.createOffer();
|
|
459
462
|
|
|
@@ -485,6 +488,7 @@ export class Safari12 extends HandlerInterface
|
|
|
485
488
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
486
489
|
|
|
487
490
|
transceiver.direction = 'sendonly';
|
|
491
|
+
this._remoteSdp!.resumeSendingMediaSection(localId);
|
|
488
492
|
|
|
489
493
|
const offer = await this._pc.createOffer();
|
|
490
494
|
|
|
@@ -814,6 +818,7 @@ export class Safari12 extends HandlerInterface
|
|
|
814
818
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
815
819
|
|
|
816
820
|
transceiver.direction = 'inactive';
|
|
821
|
+
this._remoteSdp!.pauseMediaSection(localId);
|
|
817
822
|
}
|
|
818
823
|
|
|
819
824
|
const offer = { type: 'offer', sdp: this._remoteSdp!.getSdp() };
|
|
@@ -847,6 +852,7 @@ export class Safari12 extends HandlerInterface
|
|
|
847
852
|
throw new Error('associated RTCRtpTransceiver not found');
|
|
848
853
|
|
|
849
854
|
transceiver.direction = 'recvonly';
|
|
855
|
+
this._remoteSdp!.resumeReceivingMediaSection(localId);
|
|
850
856
|
}
|
|
851
857
|
|
|
852
858
|
const offer = { type: 'offer', sdp: this._remoteSdp!.getSdp() };
|
|
@@ -101,9 +101,16 @@ export abstract class MediaSection
|
|
|
101
101
|
this._mediaObject.icePwd = iceParameters.password;
|
|
102
102
|
}
|
|
103
103
|
|
|
104
|
-
|
|
104
|
+
pause(): void
|
|
105
105
|
{
|
|
106
106
|
this._mediaObject.direction = 'inactive';
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
abstract resume(): void;
|
|
110
|
+
|
|
111
|
+
disable(): void
|
|
112
|
+
{
|
|
113
|
+
this.pause();
|
|
107
114
|
|
|
108
115
|
delete this._mediaObject.ext;
|
|
109
116
|
delete this._mediaObject.ssrcs;
|
|
@@ -111,21 +118,14 @@ export abstract class MediaSection
|
|
|
111
118
|
delete this._mediaObject.simulcast;
|
|
112
119
|
delete this._mediaObject.simulcast_03;
|
|
113
120
|
delete this._mediaObject.rids;
|
|
121
|
+
delete this._mediaObject.extmapAllowMixed;
|
|
114
122
|
}
|
|
115
123
|
|
|
116
124
|
close(): void
|
|
117
125
|
{
|
|
118
|
-
this.
|
|
126
|
+
this.disable();
|
|
119
127
|
|
|
120
128
|
this._mediaObject.port = 0;
|
|
121
|
-
|
|
122
|
-
delete this._mediaObject.ext;
|
|
123
|
-
delete this._mediaObject.ssrcs;
|
|
124
|
-
delete this._mediaObject.ssrcGroups;
|
|
125
|
-
delete this._mediaObject.simulcast;
|
|
126
|
-
delete this._mediaObject.simulcast_03;
|
|
127
|
-
delete this._mediaObject.rids;
|
|
128
|
-
delete this._mediaObject.extmapAllowMixed;
|
|
129
129
|
}
|
|
130
130
|
}
|
|
131
131
|
|
|
@@ -442,6 +442,11 @@ export class AnswerMediaSection extends MediaSection
|
|
|
442
442
|
break;
|
|
443
443
|
}
|
|
444
444
|
}
|
|
445
|
+
|
|
446
|
+
resume(): void
|
|
447
|
+
{
|
|
448
|
+
this._mediaObject.direction = 'recvonly';
|
|
449
|
+
}
|
|
445
450
|
}
|
|
446
451
|
|
|
447
452
|
export class OfferMediaSection extends MediaSection
|
|
@@ -672,6 +677,11 @@ export class OfferMediaSection extends MediaSection
|
|
|
672
677
|
this._mediaObject.setup = 'actpass';
|
|
673
678
|
}
|
|
674
679
|
|
|
680
|
+
resume(): void
|
|
681
|
+
{
|
|
682
|
+
this._mediaObject.direction = 'sendonly';
|
|
683
|
+
}
|
|
684
|
+
|
|
675
685
|
planBReceive(
|
|
676
686
|
{
|
|
677
687
|
offerRtpParameters,
|
|
@@ -268,30 +268,37 @@ export class RemoteSdp
|
|
|
268
268
|
}
|
|
269
269
|
}
|
|
270
270
|
|
|
271
|
-
|
|
271
|
+
pauseMediaSection(mid: string): void
|
|
272
272
|
{
|
|
273
|
-
const
|
|
273
|
+
const mediaSection = this._findMediaSection(mid);
|
|
274
274
|
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
throw new Error(`no media section found with mid '${mid}'`);
|
|
278
|
-
}
|
|
275
|
+
mediaSection.pause();
|
|
276
|
+
}
|
|
279
277
|
|
|
280
|
-
|
|
278
|
+
resumeSendingMediaSection(mid: string): void
|
|
279
|
+
{
|
|
280
|
+
const mediaSection = this._findMediaSection(mid);
|
|
281
281
|
|
|
282
|
-
mediaSection.
|
|
282
|
+
mediaSection.resume();
|
|
283
283
|
}
|
|
284
284
|
|
|
285
|
-
|
|
285
|
+
resumeReceivingMediaSection(mid: string): void
|
|
286
286
|
{
|
|
287
|
-
const
|
|
287
|
+
const mediaSection = this._findMediaSection(mid);
|
|
288
288
|
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
289
|
+
mediaSection.resume();
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
disableMediaSection(mid: string): void
|
|
293
|
+
{
|
|
294
|
+
const mediaSection = this._findMediaSection(mid);
|
|
293
295
|
|
|
294
|
-
|
|
296
|
+
mediaSection.disable();
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
closeMediaSection(mid: string): void
|
|
300
|
+
{
|
|
301
|
+
const mediaSection = this._findMediaSection(mid);
|
|
295
302
|
|
|
296
303
|
// NOTE: Closing the first m section is a pain since it invalidates the
|
|
297
304
|
// bundled transport, so let's avoid it.
|
|
@@ -442,6 +449,18 @@ export class RemoteSdp
|
|
|
442
449
|
}
|
|
443
450
|
}
|
|
444
451
|
|
|
452
|
+
_findMediaSection(mid: string): MediaSection
|
|
453
|
+
{
|
|
454
|
+
const idx = this._midToIndex.get(mid);
|
|
455
|
+
|
|
456
|
+
if (idx === undefined)
|
|
457
|
+
{
|
|
458
|
+
throw new Error(`no media section found with mid '${mid}'`);
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
return this._mediaSections[idx];
|
|
462
|
+
}
|
|
463
|
+
|
|
445
464
|
_regenerateBundleMids(): void
|
|
446
465
|
{
|
|
447
466
|
if (!this._dtlsParameters)
|