mediasoup-client 3.6.54 → 3.6.57

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 (57) hide show
  1. package/lib/Consumer.d.ts.map +1 -1
  2. package/lib/Consumer.js +8 -0
  3. package/lib/Producer.d.ts +8 -0
  4. package/lib/Producer.d.ts.map +1 -1
  5. package/lib/Producer.js +5 -7
  6. package/lib/Transport.d.ts +3 -0
  7. package/lib/Transport.d.ts.map +1 -1
  8. package/lib/Transport.js +69 -8
  9. package/lib/handlers/Chrome55.d.ts +3 -1
  10. package/lib/handlers/Chrome55.d.ts.map +1 -1
  11. package/lib/handlers/Chrome55.js +17 -6
  12. package/lib/handlers/Chrome67.d.ts +3 -1
  13. package/lib/handlers/Chrome67.d.ts.map +1 -1
  14. package/lib/handlers/Chrome67.js +17 -6
  15. package/lib/handlers/Chrome70.d.ts +3 -1
  16. package/lib/handlers/Chrome70.d.ts.map +1 -1
  17. package/lib/handlers/Chrome70.js +20 -7
  18. package/lib/handlers/Chrome74.d.ts +3 -1
  19. package/lib/handlers/Chrome74.d.ts.map +1 -1
  20. package/lib/handlers/Chrome74.js +40 -7
  21. package/lib/handlers/Edge11.d.ts +3 -1
  22. package/lib/handlers/Edge11.d.ts.map +1 -1
  23. package/lib/handlers/Edge11.js +23 -12
  24. package/lib/handlers/FakeHandler.d.ts +3 -1
  25. package/lib/handlers/FakeHandler.d.ts.map +1 -1
  26. package/lib/handlers/FakeHandler.js +14 -3
  27. package/lib/handlers/Firefox60.d.ts +3 -1
  28. package/lib/handlers/Firefox60.d.ts.map +1 -1
  29. package/lib/handlers/Firefox60.js +42 -7
  30. package/lib/handlers/HandlerInterface.d.ts +4 -1
  31. package/lib/handlers/HandlerInterface.d.ts.map +1 -1
  32. package/lib/handlers/ReactNative.d.ts +3 -1
  33. package/lib/handlers/ReactNative.d.ts.map +1 -1
  34. package/lib/handlers/ReactNative.js +17 -6
  35. package/lib/handlers/Safari11.d.ts +3 -1
  36. package/lib/handlers/Safari11.d.ts.map +1 -1
  37. package/lib/handlers/Safari11.js +17 -6
  38. package/lib/handlers/Safari12.d.ts +3 -1
  39. package/lib/handlers/Safari12.d.ts.map +1 -1
  40. package/lib/handlers/Safari12.js +42 -7
  41. package/lib/index.d.ts +1 -1
  42. package/lib/index.js +1 -1
  43. package/package.json +5 -5
  44. package/src/Consumer.ts +14 -0
  45. package/src/Producer.ts +18 -15
  46. package/src/Transport.ts +109 -16
  47. package/src/handlers/Chrome55.ts +24 -7
  48. package/src/handlers/Chrome67.ts +24 -7
  49. package/src/handlers/Chrome70.ts +27 -7
  50. package/src/handlers/Chrome74.ts +75 -7
  51. package/src/handlers/Edge11.ts +31 -14
  52. package/src/handlers/FakeHandler.ts +19 -3
  53. package/src/handlers/Firefox60.ts +77 -7
  54. package/src/handlers/HandlerInterface.ts +6 -1
  55. package/src/handlers/ReactNative.ts +24 -7
  56. package/src/handlers/Safari11.ts +24 -7
  57. package/src/handlers/Safari12.ts +77 -7
@@ -67,6 +67,7 @@ class Chrome74 extends HandlerInterface_1.HandlerInterface {
67
67
  }
68
68
  catch (error) { }
69
69
  }
70
+ this.emit('@close');
70
71
  }
71
72
  async getNativeRtpCapabilities() {
72
73
  logger.debug('getNativeRtpCapabilities()');
@@ -313,6 +314,34 @@ class Chrome74 extends HandlerInterface_1.HandlerInterface {
313
314
  await this._pc.setRemoteDescription(answer);
314
315
  this._mapMidTransceiver.delete(localId);
315
316
  }
317
+ async pauseSending(localId) {
318
+ this._assertSendDirection();
319
+ logger.debug('pauseSending() [localId:%s]', localId);
320
+ const transceiver = this._mapMidTransceiver.get(localId);
321
+ if (!transceiver)
322
+ throw new Error('associated RTCRtpTransceiver not found');
323
+ transceiver.direction = 'inactive';
324
+ const offer = await this._pc.createOffer();
325
+ logger.debug('pauseSending() | calling pc.setLocalDescription() [offer:%o]', offer);
326
+ await this._pc.setLocalDescription(offer);
327
+ const answer = { type: 'answer', sdp: this._remoteSdp.getSdp() };
328
+ logger.debug('pauseSending() | calling pc.setRemoteDescription() [answer:%o]', answer);
329
+ await this._pc.setRemoteDescription(answer);
330
+ }
331
+ async resumeSending(localId) {
332
+ this._assertSendDirection();
333
+ logger.debug('resumeSending() [localId:%s]', localId);
334
+ const transceiver = this._mapMidTransceiver.get(localId);
335
+ if (!transceiver)
336
+ throw new Error('associated RTCRtpTransceiver not found');
337
+ transceiver.direction = 'sendonly';
338
+ const offer = await this._pc.createOffer();
339
+ logger.debug('resumeSending() | calling pc.setLocalDescription() [offer:%o]', offer);
340
+ await this._pc.setLocalDescription(offer);
341
+ const answer = { type: 'answer', sdp: this._remoteSdp.getSdp() };
342
+ logger.debug('resumeSending() | calling pc.setRemoteDescription() [answer:%o]', answer);
343
+ await this._pc.setRemoteDescription(answer);
344
+ }
316
345
  async replaceTrack(localId, track) {
317
346
  this._assertSendDirection();
318
347
  if (track) {
@@ -469,20 +498,24 @@ class Chrome74 extends HandlerInterface_1.HandlerInterface {
469
498
  }
470
499
  return results;
471
500
  }
472
- async stopReceiving(localId) {
501
+ async stopReceiving(localIds) {
473
502
  this._assertRecvDirection();
474
- logger.debug('stopReceiving() [localId:%s]', localId);
475
- const transceiver = this._mapMidTransceiver.get(localId);
476
- if (!transceiver)
477
- throw new Error('associated RTCRtpTransceiver not found');
478
- this._remoteSdp.closeMediaSection(transceiver.mid);
503
+ for (const localId of localIds) {
504
+ logger.debug('stopReceiving() [localId:%s]', localId);
505
+ const transceiver = this._mapMidTransceiver.get(localId);
506
+ if (!transceiver)
507
+ throw new Error('associated RTCRtpTransceiver not found');
508
+ this._remoteSdp.closeMediaSection(transceiver.mid);
509
+ }
479
510
  const offer = { type: 'offer', sdp: this._remoteSdp.getSdp() };
480
511
  logger.debug('stopReceiving() | calling pc.setRemoteDescription() [offer:%o]', offer);
481
512
  await this._pc.setRemoteDescription(offer);
482
513
  const answer = await this._pc.createAnswer();
483
514
  logger.debug('stopReceiving() | calling pc.setLocalDescription() [answer:%o]', answer);
484
515
  await this._pc.setLocalDescription(answer);
485
- this._mapMidTransceiver.delete(localId);
516
+ for (const localId of localIds) {
517
+ this._mapMidTransceiver.delete(localId);
518
+ }
486
519
  }
487
520
  async pauseReceiving(localIds) {
488
521
  this._assertRecvDirection();
@@ -34,13 +34,15 @@ export declare class Edge11 extends HandlerInterface {
34
34
  getTransportStats(): Promise<RTCStatsReport>;
35
35
  send({ track, encodings, codecOptions, codec }: HandlerSendOptions): Promise<HandlerSendResult>;
36
36
  stopSending(localId: string): Promise<void>;
37
+ pauseSending(localId: string): Promise<void>;
38
+ resumeSending(localId: string): Promise<void>;
37
39
  replaceTrack(localId: string, track: MediaStreamTrack | null): Promise<void>;
38
40
  setMaxSpatialLayer(localId: string, spatialLayer: number): Promise<void>;
39
41
  setRtpEncodingParameters(localId: string, params: any): Promise<void>;
40
42
  getSenderStats(localId: string): Promise<RTCStatsReport>;
41
43
  sendDataChannel(options: HandlerSendDataChannelOptions): Promise<HandlerSendDataChannelResult>;
42
44
  receive(optionsList: HandlerReceiveOptions[]): Promise<HandlerReceiveResult[]>;
43
- stopReceiving(localId: string): Promise<void>;
45
+ stopReceiving(localIds: string[]): Promise<void>;
44
46
  pauseReceiving(localIds: string[]): Promise<void>;
45
47
  resumeReceiving(localIds: string[]): Promise<void>;
46
48
  getReceiverStats(localId: string): Promise<RTCStatsReport>;
@@ -1 +1 @@
1
- {"version":3,"file":"Edge11.d.ts","sourceRoot":"","sources":["../../src/handlers/Edge11.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Edge11.d.ts","sourceRoot":"","sources":["../../src/handlers/Edge11.ts"],"names":[],"mappings":"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"}
@@ -84,6 +84,7 @@ class Edge11 extends HandlerInterface_1.HandlerInterface {
84
84
  }
85
85
  catch (error) { }
86
86
  }
87
+ this.emit('@close');
87
88
  }
88
89
  async getNativeRtpCapabilities() {
89
90
  logger.debug('getNativeRtpCapabilities()');
@@ -187,6 +188,14 @@ class Edge11 extends HandlerInterface_1.HandlerInterface {
187
188
  throw error;
188
189
  }
189
190
  }
191
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
192
+ async pauseSending(localId) {
193
+ // Unimplemented.
194
+ }
195
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
196
+ async resumeSending(localId) {
197
+ // Unimplemented.
198
+ }
190
199
  async replaceTrack(localId, track) {
191
200
  if (track) {
192
201
  logger.debug('replaceTrack() [localId:%s, track.id:%s]', localId, track.id);
@@ -267,18 +276,20 @@ class Edge11 extends HandlerInterface_1.HandlerInterface {
267
276
  }
268
277
  return results;
269
278
  }
270
- async stopReceiving(localId) {
271
- logger.debug('stopReceiving() [localId:%s]', localId);
272
- const rtpReceiver = this._rtpReceivers.get(localId);
273
- if (!rtpReceiver)
274
- throw new Error('RTCRtpReceiver not found');
275
- this._rtpReceivers.delete(localId);
276
- try {
277
- logger.debug('stopReceiving() | calling rtpReceiver.stop()');
278
- rtpReceiver.stop();
279
- }
280
- catch (error) {
281
- logger.warn('stopReceiving() | rtpReceiver.stop() failed:%o', error);
279
+ async stopReceiving(localIds) {
280
+ for (const localId of localIds) {
281
+ logger.debug('stopReceiving() [localId:%s]', localId);
282
+ const rtpReceiver = this._rtpReceivers.get(localId);
283
+ if (!rtpReceiver)
284
+ throw new Error('RTCRtpReceiver not found');
285
+ this._rtpReceivers.delete(localId);
286
+ try {
287
+ logger.debug('stopReceiving() | calling rtpReceiver.stop()');
288
+ rtpReceiver.stop();
289
+ }
290
+ catch (error) {
291
+ logger.warn('stopReceiving() | rtpReceiver.stop() failed:%o', error);
292
+ }
282
293
  }
283
294
  }
284
295
  async pauseReceiving(
@@ -31,13 +31,15 @@ export declare class FakeHandler extends HandlerInterface {
31
31
  getTransportStats(): Promise<RTCStatsReport>;
32
32
  send({ track, encodings, codecOptions, codec }: HandlerSendOptions): Promise<HandlerSendResult>;
33
33
  stopSending(localId: string): Promise<void>;
34
+ pauseSending(localId: string): Promise<void>;
35
+ resumeSending(localId: string): Promise<void>;
34
36
  replaceTrack(localId: string, track: MediaStreamTrack | null): Promise<void>;
35
37
  setMaxSpatialLayer(localId: string, spatialLayer: number): Promise<void>;
36
38
  setRtpEncodingParameters(localId: string, params: any): Promise<void>;
37
39
  getSenderStats(localId: string): Promise<RTCStatsReport>;
38
40
  sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol }: HandlerSendDataChannelOptions): Promise<HandlerSendDataChannelResult>;
39
41
  receive(optionsList: HandlerReceiveOptions[]): Promise<HandlerReceiveResult[]>;
40
- stopReceiving(localId: string): Promise<void>;
42
+ stopReceiving(localIds: string[]): Promise<void>;
41
43
  pauseReceiving(localIds: string[]): Promise<void>;
42
44
  resumeReceiving(localIds: string[]): Promise<void>;
43
45
  getReceiverStats(localId: string): Promise<RTCStatsReport>;
@@ -1 +1 @@
1
- {"version":3,"file":"FakeHandler.d.ts","sourceRoot":"","sources":["../../src/handlers/FakeHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FakeHandler.d.ts","sourceRoot":"","sources":["../../src/handlers/FakeHandler.ts"],"names":[],"mappings":"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"}
@@ -43,6 +43,7 @@ class FakeDataChannel extends EnhancedEventEmitter_1.EnhancedEventEmitter {
43
43
  }
44
44
  close() {
45
45
  this.safeEmit('close');
46
+ this.emit('@close');
46
47
  }
47
48
  send(data) {
48
49
  this.safeEmit('message', data);
@@ -152,6 +153,14 @@ class FakeHandler extends HandlerInterface_1.HandlerInterface {
152
153
  throw new Error('local track not found');
153
154
  this._tracks.delete(Number(localId));
154
155
  }
156
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
157
+ async pauseSending(localId) {
158
+ // Unimplemented.
159
+ }
160
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
161
+ async resumeSending(localId) {
162
+ // Unimplemented.
163
+ }
155
164
  async replaceTrack(localId, track) {
156
165
  if (track) {
157
166
  logger.debug('replaceTrack() [localId:%s, track.id:%s]', localId, track.id);
@@ -207,9 +216,11 @@ class FakeHandler extends HandlerInterface_1.HandlerInterface {
207
216
  }
208
217
  return results;
209
218
  }
210
- async stopReceiving(localId) {
211
- logger.debug('stopReceiving() [localId:%s]', localId);
212
- this._tracks.delete(Number(localId));
219
+ async stopReceiving(localIds) {
220
+ for (const localId of localIds) {
221
+ logger.debug('stopReceiving() [localId:%s]', localId);
222
+ this._tracks.delete(Number(localId));
223
+ }
213
224
  }
214
225
  async pauseReceiving(
215
226
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
@@ -28,13 +28,15 @@ export declare class Firefox60 extends HandlerInterface {
28
28
  getTransportStats(): Promise<RTCStatsReport>;
29
29
  send({ track, encodings, codecOptions, codec }: HandlerSendOptions): Promise<HandlerSendResult>;
30
30
  stopSending(localId: string): Promise<void>;
31
+ pauseSending(localId: string): Promise<void>;
32
+ resumeSending(localId: string): Promise<void>;
31
33
  replaceTrack(localId: string, track: MediaStreamTrack | null): Promise<void>;
32
34
  setMaxSpatialLayer(localId: string, spatialLayer: number): Promise<void>;
33
35
  setRtpEncodingParameters(localId: string, params: any): Promise<void>;
34
36
  getSenderStats(localId: string): Promise<RTCStatsReport>;
35
37
  sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol }: HandlerSendDataChannelOptions): Promise<HandlerSendDataChannelResult>;
36
38
  receive(optionsList: HandlerReceiveOptions[]): Promise<HandlerReceiveResult[]>;
37
- stopReceiving(localId: string): Promise<void>;
39
+ stopReceiving(localIds: string[]): Promise<void>;
38
40
  pauseReceiving(localIds: string[]): Promise<void>;
39
41
  resumeReceiving(localIds: string[]): Promise<void>;
40
42
  getReceiverStats(localId: string): Promise<RTCStatsReport>;
@@ -1 +1 @@
1
- {"version":3,"file":"Firefox60.d.ts","sourceRoot":"","sources":["../../src/handlers/Firefox60.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Firefox60.d.ts","sourceRoot":"","sources":["../../src/handlers/Firefox60.ts"],"names":[],"mappings":"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"}
@@ -67,6 +67,7 @@ class Firefox60 extends HandlerInterface_1.HandlerInterface {
67
67
  }
68
68
  catch (error) { }
69
69
  }
70
+ this.emit('@close');
70
71
  }
71
72
  async getNativeRtpCapabilities() {
72
73
  logger.debug('getNativeRtpCapabilities()');
@@ -325,6 +326,36 @@ class Firefox60 extends HandlerInterface_1.HandlerInterface {
325
326
  await this._pc.setRemoteDescription(answer);
326
327
  this._mapMidTransceiver.delete(localId);
327
328
  }
329
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
330
+ async pauseSending(localId) {
331
+ this._assertSendDirection();
332
+ logger.debug('pauseSending() [localId:%s]', localId);
333
+ const transceiver = this._mapMidTransceiver.get(localId);
334
+ if (!transceiver)
335
+ throw new Error('associated RTCRtpTransceiver not found');
336
+ transceiver.direction = 'inactive';
337
+ const offer = await this._pc.createOffer();
338
+ logger.debug('pauseSending() | calling pc.setLocalDescription() [offer:%o]', offer);
339
+ await this._pc.setLocalDescription(offer);
340
+ const answer = { type: 'answer', sdp: this._remoteSdp.getSdp() };
341
+ logger.debug('pauseSending() | calling pc.setRemoteDescription() [answer:%o]', answer);
342
+ await this._pc.setRemoteDescription(answer);
343
+ }
344
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
345
+ async resumeSending(localId) {
346
+ this._assertSendDirection();
347
+ logger.debug('resumeSending() [localId:%s]', localId);
348
+ const transceiver = this._mapMidTransceiver.get(localId);
349
+ if (!transceiver)
350
+ throw new Error('associated RTCRtpTransceiver not found');
351
+ transceiver.direction = 'sendonly';
352
+ const offer = await this._pc.createOffer();
353
+ logger.debug('resumeSending() | calling pc.setLocalDescription() [offer:%o]', offer);
354
+ await this._pc.setLocalDescription(offer);
355
+ const answer = { type: 'answer', sdp: this._remoteSdp.getSdp() };
356
+ logger.debug('resumeSending() | calling pc.setRemoteDescription() [answer:%o]', answer);
357
+ await this._pc.setRemoteDescription(answer);
358
+ }
328
359
  async replaceTrack(localId, track) {
329
360
  this._assertSendDirection();
330
361
  if (track) {
@@ -473,20 +504,24 @@ class Firefox60 extends HandlerInterface_1.HandlerInterface {
473
504
  }
474
505
  return results;
475
506
  }
476
- async stopReceiving(localId) {
507
+ async stopReceiving(localIds) {
477
508
  this._assertRecvDirection();
478
- logger.debug('stopReceiving() [localId:%s]', localId);
479
- const transceiver = this._mapMidTransceiver.get(localId);
480
- if (!transceiver)
481
- throw new Error('associated RTCRtpTransceiver not found');
482
- this._remoteSdp.closeMediaSection(transceiver.mid);
509
+ for (const localId of localIds) {
510
+ logger.debug('stopReceiving() [localId:%s]', localId);
511
+ const transceiver = this._mapMidTransceiver.get(localId);
512
+ if (!transceiver)
513
+ throw new Error('associated RTCRtpTransceiver not found');
514
+ this._remoteSdp.closeMediaSection(transceiver.mid);
515
+ }
483
516
  const offer = { type: 'offer', sdp: this._remoteSdp.getSdp() };
484
517
  logger.debug('stopReceiving() | calling pc.setRemoteDescription() [offer:%o]', offer);
485
518
  await this._pc.setRemoteDescription(offer);
486
519
  const answer = await this._pc.createAnswer();
487
520
  logger.debug('stopReceiving() | calling pc.setLocalDescription() [answer:%o]', answer);
488
521
  await this._pc.setLocalDescription(answer);
489
- this._mapMidTransceiver.delete(localId);
522
+ for (const localId of localIds) {
523
+ this._mapMidTransceiver.delete(localId);
524
+ }
490
525
  }
491
526
  async pauseReceiving(localIds) {
492
527
  this._assertRecvDirection();
@@ -51,6 +51,7 @@ export declare type HandlerReceiveDataChannelResult = {
51
51
  dataChannel: RTCDataChannel;
52
52
  };
53
53
  export declare type HandlerEvents = {
54
+ '@close': [];
54
55
  '@connect': [
55
56
  {
56
57
  dtlsParameters: DtlsParameters;
@@ -72,13 +73,15 @@ export declare abstract class HandlerInterface extends EnhancedEventEmitter<Hand
72
73
  abstract getTransportStats(): Promise<RTCStatsReport>;
73
74
  abstract send(options: HandlerSendOptions): Promise<HandlerSendResult>;
74
75
  abstract stopSending(localId: string): Promise<void>;
76
+ abstract pauseSending(localId: string): Promise<void>;
77
+ abstract resumeSending(localId: string): Promise<void>;
75
78
  abstract replaceTrack(localId: string, track: MediaStreamTrack | null): Promise<void>;
76
79
  abstract setMaxSpatialLayer(localId: string, spatialLayer: number): Promise<void>;
77
80
  abstract setRtpEncodingParameters(localId: string, params: any): Promise<void>;
78
81
  abstract getSenderStats(localId: string): Promise<RTCStatsReport>;
79
82
  abstract sendDataChannel(options: HandlerSendDataChannelOptions): Promise<HandlerSendDataChannelResult>;
80
83
  abstract receive(optionsList: HandlerReceiveOptions[]): Promise<HandlerReceiveResult[]>;
81
- abstract stopReceiving(localId: string): Promise<void>;
84
+ abstract stopReceiving(localIds: string[]): Promise<void>;
82
85
  abstract pauseReceiving(localIds: string[]): Promise<void>;
83
86
  abstract resumeReceiving(localIds: string[]): Promise<void>;
84
87
  abstract getReceiverStats(localId: string): Promise<RTCStatsReport>;
@@ -1 +1 @@
1
- {"version":3,"file":"HandlerInterface.d.ts","sourceRoot":"","sources":["../../src/handlers/HandlerInterface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HandlerInterface.d.ts","sourceRoot":"","sources":["../../src/handlers/HandlerInterface.ts"],"names":[],"mappings":"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"}
@@ -31,13 +31,15 @@ export declare class ReactNative extends HandlerInterface {
31
31
  getTransportStats(): Promise<RTCStatsReport>;
32
32
  send({ track, encodings, codecOptions, codec }: HandlerSendOptions): Promise<HandlerSendResult>;
33
33
  stopSending(localId: string): Promise<void>;
34
+ pauseSending(localId: string): Promise<void>;
35
+ resumeSending(localId: string): Promise<void>;
34
36
  replaceTrack(localId: string, track: MediaStreamTrack | null): Promise<void>;
35
37
  setMaxSpatialLayer(localId: string, spatialLayer: number): Promise<void>;
36
38
  setRtpEncodingParameters(localId: string, params: any): Promise<void>;
37
39
  getSenderStats(localId: string): Promise<RTCStatsReport>;
38
40
  sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol }: HandlerSendDataChannelOptions): Promise<HandlerSendDataChannelResult>;
39
41
  receive(optionsList: HandlerReceiveOptions[]): Promise<HandlerReceiveResult[]>;
40
- stopReceiving(localId: string): Promise<void>;
42
+ stopReceiving(localIds: string[]): Promise<void>;
41
43
  pauseReceiving(localIds: string[]): Promise<void>;
42
44
  resumeReceiving(localIds: string[]): Promise<void>;
43
45
  getReceiverStats(localId: string): Promise<RTCStatsReport>;
@@ -1 +1 @@
1
- {"version":3,"file":"ReactNative.d.ts","sourceRoot":"","sources":["../../src/handlers/ReactNative.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ReactNative.d.ts","sourceRoot":"","sources":["../../src/handlers/ReactNative.ts"],"names":[],"mappings":"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"}
@@ -76,6 +76,7 @@ class ReactNative extends HandlerInterface_1.HandlerInterface {
76
76
  }
77
77
  catch (error) { }
78
78
  }
79
+ this.emit('@close');
79
80
  }
80
81
  async getNativeRtpCapabilities() {
81
82
  logger.debug('getNativeRtpCapabilities()');
@@ -310,6 +311,14 @@ class ReactNative extends HandlerInterface_1.HandlerInterface {
310
311
  logger.debug('stopSending() | calling pc.setRemoteDescription() [answer:%o]', answer);
311
312
  await this._pc.setRemoteDescription(answer);
312
313
  }
314
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
315
+ async pauseSending(localId) {
316
+ // Unimplemented.
317
+ }
318
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
319
+ async resumeSending(localId) {
320
+ // Unimplemented.
321
+ }
313
322
  async replaceTrack(
314
323
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
315
324
  localId, track) {
@@ -440,13 +449,15 @@ class ReactNative extends HandlerInterface_1.HandlerInterface {
440
449
  }
441
450
  return results;
442
451
  }
443
- async stopReceiving(localId) {
452
+ async stopReceiving(localIds) {
444
453
  this._assertRecvDirection();
445
- logger.debug('stopReceiving() [localId:%s]', localId);
446
- const { mid, rtpParameters } = this._mapRecvLocalIdInfo.get(localId) || {};
447
- // Remove from the map.
448
- this._mapRecvLocalIdInfo.delete(localId);
449
- this._remoteSdp.planBStopReceiving({ mid: mid, offerRtpParameters: rtpParameters });
454
+ for (const localId of localIds) {
455
+ logger.debug('stopReceiving() [localId:%s]', localId);
456
+ const { mid, rtpParameters } = this._mapRecvLocalIdInfo.get(localId) || {};
457
+ // Remove from the map.
458
+ this._mapRecvLocalIdInfo.delete(localId);
459
+ this._remoteSdp.planBStopReceiving({ mid: mid, offerRtpParameters: rtpParameters });
460
+ }
450
461
  const offer = { type: 'offer', sdp: this._remoteSdp.getSdp() };
451
462
  logger.debug('stopReceiving() | calling pc.setRemoteDescription() [offer:%o]', offer);
452
463
  await this._pc.setRemoteDescription(offer);
@@ -31,13 +31,15 @@ export declare class Safari11 extends HandlerInterface {
31
31
  getTransportStats(): Promise<RTCStatsReport>;
32
32
  send({ track, encodings, codecOptions, codec }: HandlerSendOptions): Promise<HandlerSendResult>;
33
33
  stopSending(localId: string): Promise<void>;
34
+ pauseSending(localId: string): Promise<void>;
35
+ resumeSending(localId: string): Promise<void>;
34
36
  replaceTrack(localId: string, track: MediaStreamTrack | null): Promise<void>;
35
37
  setMaxSpatialLayer(localId: string, spatialLayer: number): Promise<void>;
36
38
  setRtpEncodingParameters(localId: string, params: any): Promise<void>;
37
39
  getSenderStats(localId: string): Promise<RTCStatsReport>;
38
40
  sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol }: HandlerSendDataChannelOptions): Promise<HandlerSendDataChannelResult>;
39
41
  receive(optionsList: HandlerReceiveOptions[]): Promise<HandlerReceiveResult[]>;
40
- stopReceiving(localId: string): Promise<void>;
42
+ stopReceiving(localIds: string[]): Promise<void>;
41
43
  getReceiverStats(localId: string): Promise<RTCStatsReport>;
42
44
  pauseReceiving(localIds: string[]): Promise<void>;
43
45
  resumeReceiving(localIds: string[]): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"Safari11.d.ts","sourceRoot":"","sources":["../../src/handlers/Safari11.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Safari11.d.ts","sourceRoot":"","sources":["../../src/handlers/Safari11.ts"],"names":[],"mappings":"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"}
@@ -71,6 +71,7 @@ class Safari11 extends HandlerInterface_1.HandlerInterface {
71
71
  }
72
72
  catch (error) { }
73
73
  }
74
+ this.emit('@close');
74
75
  }
75
76
  async getNativeRtpCapabilities() {
76
77
  logger.debug('getNativeRtpCapabilities()');
@@ -304,6 +305,14 @@ class Safari11 extends HandlerInterface_1.HandlerInterface {
304
305
  logger.debug('stopSending() | calling pc.setRemoteDescription() [answer:%o]', answer);
305
306
  await this._pc.setRemoteDescription(answer);
306
307
  }
308
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
309
+ async pauseSending(localId) {
310
+ // Unimplemented.
311
+ }
312
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
313
+ async resumeSending(localId) {
314
+ // Unimplemented.
315
+ }
307
316
  async replaceTrack(localId, track) {
308
317
  this._assertSendDirection();
309
318
  if (track) {
@@ -463,13 +472,15 @@ class Safari11 extends HandlerInterface_1.HandlerInterface {
463
472
  }
464
473
  return results;
465
474
  }
466
- async stopReceiving(localId) {
475
+ async stopReceiving(localIds) {
467
476
  this._assertRecvDirection();
468
- logger.debug('stopReceiving() [localId:%s]', localId);
469
- const { mid, rtpParameters } = this._mapRecvLocalIdInfo.get(localId) || {};
470
- // Remove from the map.
471
- this._mapRecvLocalIdInfo.delete(localId);
472
- this._remoteSdp.planBStopReceiving({ mid: mid, offerRtpParameters: rtpParameters });
477
+ for (const localId of localIds) {
478
+ logger.debug('stopReceiving() [localId:%s]', localId);
479
+ const { mid, rtpParameters } = this._mapRecvLocalIdInfo.get(localId) || {};
480
+ // Remove from the map.
481
+ this._mapRecvLocalIdInfo.delete(localId);
482
+ this._remoteSdp.planBStopReceiving({ mid: mid, offerRtpParameters: rtpParameters });
483
+ }
473
484
  const offer = { type: 'offer', sdp: this._remoteSdp.getSdp() };
474
485
  logger.debug('stopReceiving() | calling pc.setRemoteDescription() [offer:%o]', offer);
475
486
  await this._pc.setRemoteDescription(offer);
@@ -29,13 +29,15 @@ export declare class Safari12 extends HandlerInterface {
29
29
  getTransportStats(): Promise<RTCStatsReport>;
30
30
  send({ track, encodings, codecOptions, codec }: HandlerSendOptions): Promise<HandlerSendResult>;
31
31
  stopSending(localId: string): Promise<void>;
32
+ pauseSending(localId: string): Promise<void>;
33
+ resumeSending(localId: string): Promise<void>;
32
34
  replaceTrack(localId: string, track: MediaStreamTrack | null): Promise<void>;
33
35
  setMaxSpatialLayer(localId: string, spatialLayer: number): Promise<void>;
34
36
  setRtpEncodingParameters(localId: string, params: any): Promise<void>;
35
37
  getSenderStats(localId: string): Promise<RTCStatsReport>;
36
38
  sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol }: HandlerSendDataChannelOptions): Promise<HandlerSendDataChannelResult>;
37
39
  receive(optionsList: HandlerReceiveOptions[]): Promise<HandlerReceiveResult[]>;
38
- stopReceiving(localId: string): Promise<void>;
40
+ stopReceiving(localIds: string[]): Promise<void>;
39
41
  pauseReceiving(localIds: string[]): Promise<void>;
40
42
  resumeReceiving(localIds: string[]): Promise<void>;
41
43
  getReceiverStats(localId: string): Promise<RTCStatsReport>;
@@ -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;IAYP,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;IAkC3C,YAAY,CACjB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,GAAG,IAAI,GAC7C,OAAO,CAAC,IAAI,CAAC;IAsBV,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BxE,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBrE,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAYxD,eAAe,CACpB,EACC,OAAO,EACP,iBAAiB,EACjB,cAAc,EACd,KAAK,EACL,QAAQ,EACR,EAAE,6BAA6B,GAC9B,OAAO,CAAC,4BAA4B,CAAC;IAsElC,OAAO,CACZ,WAAW,EAAE,qBAAqB,EAAE,GACjC,OAAO,CAAC,oBAAoB,EAAE,CAAC;IA8F7B,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgC7C,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiCjD,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiClD,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAY1D,kBAAkB,CACvB,EAAE,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,gCAAgC,GACzE,OAAO,CAAC,+BAA+B,CAAC;YAgE7B,eAAe;IAuC7B,OAAO,CAAC,oBAAoB;IAS5B,OAAO,CAAC,oBAAoB;CAQ5B"}
1
+ {"version":3,"file":"Safari12.d.ts","sourceRoot":"","sources":["../../src/handlers/Safari12.ts"],"names":[],"mappings":"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"}