mediasoup-client 3.22.0 → 3.23.1

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  import { EnhancedEventEmitter } from './enhancedEvents';
2
2
  import { Transport, type TransportOptions } from './Transport';
3
- import { type HandlerFactory } from './handlers/HandlerInterface';
3
+ import type { HandlerFactory, HandlerForcedRtpExtensions } from './handlers/HandlerInterface';
4
4
  import type { RtpCapabilities, MediaKind } from './RtpParameters';
5
5
  import type { AppData } from './types';
6
6
  export type BuiltinHandlerName = 'Chrome111' | 'Chrome74' | 'Firefox120' | 'Safari12' | 'ReactNative106';
@@ -13,6 +13,10 @@ export type DeviceOptions = {
13
13
  * Custom handler factory.
14
14
  */
15
15
  handlerFactory?: HandlerFactory;
16
+ /**
17
+ * Enable or disable RTP extensions.
18
+ */
19
+ forcedRtpExtensions?: HandlerForcedRtpExtensions;
16
20
  };
17
21
  /**
18
22
  * @remarks
@@ -62,13 +66,13 @@ export declare class Device {
62
66
  *
63
67
  * @throws {UnsupportedError} if device is not supported.
64
68
  */
65
- static factory({ handlerName, handlerFactory, }?: DeviceOptions): Promise<Device>;
69
+ static factory({ handlerName, handlerFactory, forcedRtpExtensions, }?: DeviceOptions): Promise<Device>;
66
70
  /**
67
71
  * Create a new Device to connect to mediasoup server.
68
72
  *
69
73
  * @throws {UnsupportedError} if device is not supported.
70
74
  */
71
- constructor({ handlerName, handlerFactory }?: DeviceOptions);
75
+ constructor({ handlerName, handlerFactory, forcedRtpExtensions, }?: DeviceOptions);
72
76
  /**
73
77
  * The RTC handler name.
74
78
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Device.d.ts","sourceRoot":"","sources":["../src/Device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Device.d.ts","sourceRoot":"","sources":["../src/Device.ts"],"names":[],"mappings":"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"}
package/lib/Device.js CHANGED
@@ -106,7 +106,7 @@ class Device {
106
106
  *
107
107
  * @throws {UnsupportedError} if device is not supported.
108
108
  */
109
- static async factory({ handlerName, handlerFactory, } = {}) {
109
+ static async factory({ handlerName, handlerFactory, forcedRtpExtensions, } = {}) {
110
110
  logger.debug('factory()');
111
111
  if (handlerName && handlerFactory) {
112
112
  throw new TypeError('just one of handlerName or handlerInterface can be given');
@@ -117,14 +117,18 @@ class Device {
117
117
  throw new errors_1.UnsupportedError('device not supported');
118
118
  }
119
119
  }
120
- return new Device({ handlerName, handlerFactory });
120
+ return new Device({
121
+ handlerName,
122
+ handlerFactory,
123
+ forcedRtpExtensions,
124
+ });
121
125
  }
122
126
  /**
123
127
  * Create a new Device to connect to mediasoup server.
124
128
  *
125
129
  * @throws {UnsupportedError} if device is not supported.
126
130
  */
127
- constructor({ handlerName, handlerFactory } = {}) {
131
+ constructor({ handlerName, handlerFactory, forcedRtpExtensions, } = {}) {
128
132
  logger.debug('constructor()');
129
133
  if (handlerName && handlerFactory) {
130
134
  throw new TypeError('just one of handlerName or handlerInterface can be given');
@@ -147,23 +151,33 @@ class Device {
147
151
  }
148
152
  switch (handlerName) {
149
153
  case 'Chrome111': {
150
- this._handlerFactory = Chrome111_1.Chrome111.createFactory();
154
+ this._handlerFactory = Chrome111_1.Chrome111.createFactory({
155
+ forcedRtpExtensions,
156
+ });
151
157
  break;
152
158
  }
153
159
  case 'Chrome74': {
154
- this._handlerFactory = Chrome74_1.Chrome74.createFactory();
160
+ this._handlerFactory = Chrome74_1.Chrome74.createFactory({
161
+ forcedRtpExtensions,
162
+ });
155
163
  break;
156
164
  }
157
165
  case 'Firefox120': {
158
- this._handlerFactory = Firefox120_1.Firefox120.createFactory();
166
+ this._handlerFactory = Firefox120_1.Firefox120.createFactory({
167
+ forcedRtpExtensions,
168
+ });
159
169
  break;
160
170
  }
161
171
  case 'Safari12': {
162
- this._handlerFactory = Safari12_1.Safari12.createFactory();
172
+ this._handlerFactory = Safari12_1.Safari12.createFactory({
173
+ forcedRtpExtensions,
174
+ });
163
175
  break;
164
176
  }
165
177
  case 'ReactNative106': {
166
- this._handlerFactory = ReactNative106_1.ReactNative106.createFactory();
178
+ this._handlerFactory = ReactNative106_1.ReactNative106.createFactory({
179
+ forcedRtpExtensions,
180
+ });
167
181
  break;
168
182
  }
169
183
  default: {
package/lib/Producer.d.ts CHANGED
@@ -6,7 +6,6 @@ export type ProducerOptions<ProducerAppData extends AppData = AppData> = {
6
6
  streamId?: string;
7
7
  encodings?: RtpEncodingParameters[];
8
8
  codecOptions?: ProducerCodecOptions;
9
- headerExtensionOptions?: ProducerHeaderExtensionOptions;
10
9
  codec?: RtpCodecCapability;
11
10
  stopTracks?: boolean;
12
11
  disableTrackOnPause?: boolean;
@@ -31,9 +30,6 @@ export type ProducerCodecOptions = {
31
30
  videoGoogleMaxBitrate?: number;
32
31
  videoGoogleMinBitrate?: number;
33
32
  };
34
- export type ProducerHeaderExtensionOptions = {
35
- absCaptureTime?: boolean;
36
- };
37
33
  export type ProducerEvents = {
38
34
  transportclose: [];
39
35
  trackended: [];
@@ -1 +1 @@
1
- {"version":3,"file":"Producer.d.ts","sourceRoot":"","sources":["../src/Producer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Producer.d.ts","sourceRoot":"","sources":["../src/Producer.ts"],"names":[],"mappings":"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"}
@@ -241,7 +241,7 @@ export declare class Transport<TransportAppData extends AppData = AppData> exten
241
241
  /**
242
242
  * Create a Producer.
243
243
  */
244
- produce<ProducerAppData extends AppData = AppData>({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, stopTracks, disableTrackOnPause, zeroRtpOnPause, onRtpSender, appData, }?: ProducerOptions<ProducerAppData>): Promise<Producer<ProducerAppData>>;
244
+ produce<ProducerAppData extends AppData = AppData>({ track, streamId, encodings, codecOptions, codec, stopTracks, disableTrackOnPause, zeroRtpOnPause, onRtpSender, appData, }?: ProducerOptions<ProducerAppData>): Promise<Producer<ProducerAppData>>;
245
245
  /**
246
246
  * Create a Consumer to consume a remote Producer.
247
247
  */
@@ -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
@@ -291,7 +291,7 @@ class Transport extends enhancedEvents_1.EnhancedEventEmitter {
291
291
  /**
292
292
  * Create a Producer.
293
293
  */
294
- async produce({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, stopTracks = true, disableTrackOnPause = true, zeroRtpOnPause = false, onRtpSender, appData = {}, } = {}) {
294
+ async produce({ track, streamId, encodings, codecOptions, codec, stopTracks = true, disableTrackOnPause = true, zeroRtpOnPause = false, onRtpSender, appData = {}, } = {}) {
295
295
  logger.debug('produce() [track:%o]', track);
296
296
  if (this._closed) {
297
297
  throw new errors_1.InvalidStateError('closed');
@@ -369,7 +369,6 @@ class Transport extends enhancedEvents_1.EnhancedEventEmitter {
369
369
  streamId,
370
370
  encodings: normalizedEncodings,
371
371
  codecOptions,
372
- headerExtensionOptions,
373
372
  codec,
374
373
  onRtpSender,
375
374
  });
@@ -1,12 +1,13 @@
1
1
  import { EnhancedEventEmitter } from '../enhancedEvents';
2
2
  import type { IceParameters } from '../Transport';
3
- import type { HandlerFactory, HandlerInterface, HandlerEvents, HandlerSendOptions, HandlerSendResult, HandlerReceiveOptions, HandlerReceiveResult, HandlerSendDataChannelOptions, HandlerSendDataChannelResult, HandlerReceiveDataChannelOptions, HandlerReceiveDataChannelResult } from './HandlerInterface';
3
+ import type { HandlerFactoryOptions, HandlerFactory, HandlerInterface, HandlerEvents, HandlerSendOptions, HandlerSendResult, HandlerReceiveOptions, HandlerReceiveResult, HandlerSendDataChannelOptions, HandlerSendDataChannelResult, HandlerReceiveDataChannelOptions, HandlerReceiveDataChannelResult } from './HandlerInterface';
4
4
  export declare class Chrome111 extends EnhancedEventEmitter<HandlerEvents> implements HandlerInterface {
5
5
  private _closed;
6
6
  private _direction;
7
7
  private _sctpMaxReceiveMessageSize?;
8
8
  private _remoteSdp;
9
9
  private _getSendExtendedRtpCapabilities;
10
+ private _forcedRtpExtensions?;
10
11
  private _forcedLocalDtlsRole?;
11
12
  private _pc;
12
13
  private readonly _mapMidTransceiver;
@@ -17,7 +18,7 @@ export declare class Chrome111 extends EnhancedEventEmitter<HandlerEvents> imple
17
18
  /**
18
19
  * Creates a factory function.
19
20
  */
20
- static createFactory(): HandlerFactory;
21
+ static createFactory({ forcedRtpExtensions, }: HandlerFactoryOptions): HandlerFactory;
21
22
  private static getLocalRtpCapabilities;
22
23
  private constructor();
23
24
  get name(): string;
@@ -25,7 +26,7 @@ export declare class Chrome111 extends EnhancedEventEmitter<HandlerEvents> imple
25
26
  updateIceServers(iceServers: RTCIceServer[]): Promise<void>;
26
27
  restartIce(iceParameters: IceParameters): Promise<void>;
27
28
  getTransportStats(): Promise<RTCStatsReport>;
28
- send({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, onRtpSender, }: HandlerSendOptions): Promise<HandlerSendResult>;
29
+ send({ track, streamId, encodings, codecOptions, codec, onRtpSender, }: HandlerSendOptions): Promise<HandlerSendResult>;
29
30
  stopSending(localId: string): Promise<void>;
30
31
  pauseSending(localId: string): Promise<void>;
31
32
  resumeSending(localId: string): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"Chrome111.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome111.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Chrome111.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome111.ts"],"names":[],"mappings":"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"}
@@ -57,6 +57,7 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
57
57
  _remoteSdp;
58
58
  // Callback to request sending extended RTP capabilities on demand.
59
59
  _getSendExtendedRtpCapabilities;
60
+ _forcedRtpExtensions;
60
61
  // Initial server side DTLS role. If not 'auto', it will force the opposite
61
62
  // value in client side.
62
63
  _forcedLocalDtlsRole;
@@ -75,10 +76,10 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
75
76
  /**
76
77
  * Creates a factory function.
77
78
  */
78
- static createFactory() {
79
+ static createFactory({ forcedRtpExtensions, }) {
79
80
  return {
80
81
  name: NAME,
81
- factory: (options) => new Chrome111(options),
82
+ factory: (options) => new Chrome111({ ...options, forcedRtpExtensions }),
82
83
  getNativeRtpCapabilities: async ({ direction, }) => {
83
84
  logger.debug('getNativeRtpCapabilities() [direction:%o]', direction);
84
85
  let pc = new RTCPeerConnection({
@@ -88,13 +89,19 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
88
89
  rtcpMuxPolicy: 'require',
89
90
  });
90
91
  try {
91
- pc.addTransceiver('audio', { direction });
92
+ const audioTransceiver = pc.addTransceiver('audio', { direction });
93
+ if (forcedRtpExtensions) {
94
+ ortcUtils.applyForcedRtpExtensions(audioTransceiver, forcedRtpExtensions);
95
+ }
92
96
  // Create video transceiver with scalability mode in order to retrieve
93
97
  // Dependency Descriptor header extension.
94
- pc.addTransceiver('video', {
98
+ const videoTransceiver = pc.addTransceiver('video', {
95
99
  direction,
96
100
  sendEncodings: [{ scalabilityMode: 'L3T3' }],
97
101
  });
102
+ if (forcedRtpExtensions) {
103
+ ortcUtils.applyForcedRtpExtensions(videoTransceiver, forcedRtpExtensions);
104
+ }
98
105
  const offer = await pc.createOffer();
99
106
  try {
100
107
  pc.close();
@@ -117,7 +124,7 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
117
124
  },
118
125
  };
119
126
  }
120
- static getLocalRtpCapabilities(localSdpObject, extraHeaderExtensions = []) {
127
+ static getLocalRtpCapabilities(localSdpObject) {
121
128
  const nativeRtpCapabilities = sdpCommonUtils.extractRtpCapabilities({
122
129
  sdpObject: localSdpObject,
123
130
  });
@@ -125,12 +132,9 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
125
132
  ortc.validateAndNormalizeRtpCapabilities(nativeRtpCapabilities);
126
133
  // libwebrtc supports NACK for OPUS but doesn't announce it.
127
134
  ortcUtils.addNackSupportForOpus(nativeRtpCapabilities);
128
- for (const headerExtension of extraHeaderExtensions) {
129
- ortcUtils.addHeaderExtensionSupport(nativeRtpCapabilities, headerExtension);
130
- }
131
135
  return nativeRtpCapabilities;
132
136
  }
133
- constructor({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, getSendExtendedRtpCapabilities, }) {
137
+ constructor({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, getSendExtendedRtpCapabilities, forcedRtpExtensions, }) {
134
138
  super();
135
139
  logger.debug('constructor()');
136
140
  this._direction = direction;
@@ -143,6 +147,7 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
143
147
  sctpParameters,
144
148
  });
145
149
  this._getSendExtendedRtpCapabilities = getSendExtendedRtpCapabilities;
150
+ this._forcedRtpExtensions = forcedRtpExtensions;
146
151
  if (dtlsParameters.role && dtlsParameters.role !== 'auto') {
147
152
  this._forcedLocalDtlsRole =
148
153
  dtlsParameters.role === 'server' ? 'client' : 'server';
@@ -228,7 +233,7 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
228
233
  this.assertNotClosed();
229
234
  return this._pc.getStats();
230
235
  }
231
- async send({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, onRtpSender, }) {
236
+ async send({ track, streamId, encodings, codecOptions, codec, onRtpSender, }) {
232
237
  this.assertNotClosed();
233
238
  this.assertSendDirection();
234
239
  logger.debug('send() [kind:%s, track.id:%s, streamId:%s]', track.kind, track.id, streamId);
@@ -258,23 +263,18 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
258
263
  streams: [this._sendStream],
259
264
  sendEncodings: encodings,
260
265
  });
266
+ if (this._forcedRtpExtensions) {
267
+ ortcUtils.applyForcedRtpExtensions(transceiver, this._forcedRtpExtensions);
268
+ }
261
269
  if (onRtpSender) {
262
270
  onRtpSender(transceiver.sender);
263
271
  }
264
- let offer = await this._pc.createOffer();
272
+ const offer = await this._pc.createOffer();
265
273
  let localSdpObject = sdpTransform.parse(offer.sdp);
266
274
  if (localSdpObject.extmapAllowMixed) {
267
275
  this._remoteSdp.setSessionExtmapAllowMixed();
268
276
  }
269
- const extraHeaderExtensions = [];
270
- if (headerExtensionOptions?.absCaptureTime) {
271
- extraHeaderExtensions.push({
272
- uri: 'http://www.webrtc.org/experiments/rtp-hdrext/abs-capture-time',
273
- kind: track.kind,
274
- direction: 'sendonly',
275
- });
276
- }
277
- const nativeRtpCapabilities = Chrome111.getLocalRtpCapabilities(localSdpObject, extraHeaderExtensions);
277
+ const nativeRtpCapabilities = Chrome111.getLocalRtpCapabilities(localSdpObject);
278
278
  const sendExtendedRtpCapabilities = this._getSendExtendedRtpCapabilities(nativeRtpCapabilities);
279
279
  // Generic sending RTP parameters.
280
280
  const sendingRtpParameters = ortc.getSendingRtpParameters(track.kind, sendExtendedRtpCapabilities);
@@ -290,20 +290,6 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
290
290
  localSdpObject,
291
291
  });
292
292
  }
293
- // Optimize. Only generate a new offer if needed.
294
- if (headerExtensionOptions?.absCaptureTime) {
295
- const offerMediaObject = localSdpObject.media[mediaSectionIdx.idx];
296
- sdpCommonUtils.addHeaderExtension({
297
- offerMediaObject,
298
- headerExtensionUri: 'http://www.webrtc.org/experiments/rtp-hdrext/abs-capture-time',
299
- headerExtensionId: sendingRemoteRtpParameters.headerExtensions.find(headerExtension => headerExtension.uri ===
300
- 'http://www.webrtc.org/experiments/rtp-hdrext/abs-capture-time').id,
301
- });
302
- offer = {
303
- type: 'offer',
304
- sdp: sdpTransform.write(localSdpObject),
305
- };
306
- }
307
293
  logger.debug('send() | calling pc.setLocalDescription() [offer:%o]', offer);
308
294
  await this._pc.setLocalDescription(offer);
309
295
  // We can now get the transceiver.mid.
@@ -591,6 +577,9 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
591
577
  if (!transceiver) {
592
578
  throw new Error('transceiver not found');
593
579
  }
580
+ if (this._forcedRtpExtensions) {
581
+ ortcUtils.applyForcedRtpExtensions(transceiver, this._forcedRtpExtensions);
582
+ }
594
583
  onRtpReceiver(transceiver.receiver);
595
584
  }
596
585
  }
@@ -1,12 +1,13 @@
1
1
  import { EnhancedEventEmitter } from '../enhancedEvents';
2
2
  import type { IceParameters } from '../Transport';
3
- import type { HandlerFactory, HandlerEvents, HandlerInterface, HandlerSendOptions, HandlerSendResult, HandlerReceiveOptions, HandlerReceiveResult, HandlerSendDataChannelOptions, HandlerSendDataChannelResult, HandlerReceiveDataChannelOptions, HandlerReceiveDataChannelResult } from './HandlerInterface';
3
+ import type { HandlerFactoryOptions, HandlerFactory, HandlerEvents, HandlerInterface, HandlerSendOptions, HandlerSendResult, HandlerReceiveOptions, HandlerReceiveResult, HandlerSendDataChannelOptions, HandlerSendDataChannelResult, HandlerReceiveDataChannelOptions, HandlerReceiveDataChannelResult } from './HandlerInterface';
4
4
  export declare class Chrome74 extends EnhancedEventEmitter<HandlerEvents> implements HandlerInterface {
5
5
  private _closed;
6
6
  private _direction;
7
7
  private _sctpMaxReceiveMessageSize?;
8
8
  private _remoteSdp;
9
9
  private _getSendExtendedRtpCapabilities;
10
+ private _forcedRtpExtensions?;
10
11
  private _forcedLocalDtlsRole?;
11
12
  private _pc;
12
13
  private readonly _mapMidTransceiver;
@@ -17,7 +18,7 @@ export declare class Chrome74 extends EnhancedEventEmitter<HandlerEvents> implem
17
18
  /**
18
19
  * Creates a factory function.
19
20
  */
20
- static createFactory(): HandlerFactory;
21
+ static createFactory({ forcedRtpExtensions, }: HandlerFactoryOptions): HandlerFactory;
21
22
  private static getLocalRtpCapabilities;
22
23
  private constructor();
23
24
  get name(): string;
@@ -25,7 +26,7 @@ export declare class Chrome74 extends EnhancedEventEmitter<HandlerEvents> implem
25
26
  updateIceServers(iceServers: RTCIceServer[]): Promise<void>;
26
27
  restartIce(iceParameters: IceParameters): Promise<void>;
27
28
  getTransportStats(): Promise<RTCStatsReport>;
28
- send({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, }: HandlerSendOptions): Promise<HandlerSendResult>;
29
+ send({ track, streamId, encodings, codecOptions, codec, onRtpSender, }: HandlerSendOptions): Promise<HandlerSendResult>;
29
30
  stopSending(localId: string): Promise<void>;
30
31
  pauseSending(localId: string): Promise<void>;
31
32
  resumeSending(localId: string): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"Chrome74.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome74.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Chrome74.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome74.ts"],"names":[],"mappings":"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"}
@@ -57,6 +57,7 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
57
57
  _remoteSdp;
58
58
  // Callback to request sending extended RTP capabilities on demand.
59
59
  _getSendExtendedRtpCapabilities;
60
+ _forcedRtpExtensions;
60
61
  // Initial server side DTLS role. If not 'auto', it will force the opposite
61
62
  // value in client side.
62
63
  _forcedLocalDtlsRole;
@@ -75,10 +76,10 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
75
76
  /**
76
77
  * Creates a factory function.
77
78
  */
78
- static createFactory() {
79
+ static createFactory({ forcedRtpExtensions, }) {
79
80
  return {
80
81
  name: NAME,
81
- factory: (options) => new Chrome74(options),
82
+ factory: (options) => new Chrome74({ ...options, forcedRtpExtensions }),
82
83
  getNativeRtpCapabilities: async ({ direction, }) => {
83
84
  logger.debug('getNativeRtpCapabilities() [direction:%o]', direction);
84
85
  let pc = new RTCPeerConnection({
@@ -88,8 +89,14 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
88
89
  rtcpMuxPolicy: 'require',
89
90
  });
90
91
  try {
91
- pc.addTransceiver('audio', { direction });
92
- pc.addTransceiver('video', { direction });
92
+ const audioTransceiver = pc.addTransceiver('audio', { direction });
93
+ if (forcedRtpExtensions) {
94
+ ortcUtils.applyForcedRtpExtensions(audioTransceiver, forcedRtpExtensions);
95
+ }
96
+ const videoTransceiver = pc.addTransceiver('video', { direction });
97
+ if (forcedRtpExtensions) {
98
+ ortcUtils.applyForcedRtpExtensions(videoTransceiver, forcedRtpExtensions);
99
+ }
93
100
  const offer = await pc.createOffer();
94
101
  try {
95
102
  pc.close();
@@ -112,7 +119,7 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
112
119
  },
113
120
  };
114
121
  }
115
- static getLocalRtpCapabilities(localSdpObject, extraHeaderExtensions = []) {
122
+ static getLocalRtpCapabilities(localSdpObject) {
116
123
  const nativeRtpCapabilities = sdpCommonUtils.extractRtpCapabilities({
117
124
  sdpObject: localSdpObject,
118
125
  });
@@ -120,12 +127,9 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
120
127
  ortc.validateAndNormalizeRtpCapabilities(nativeRtpCapabilities);
121
128
  // libwebrtc supports NACK for OPUS but doesn't announce it.
122
129
  ortcUtils.addNackSupportForOpus(nativeRtpCapabilities);
123
- for (const headerExtension of extraHeaderExtensions) {
124
- ortcUtils.addHeaderExtensionSupport(nativeRtpCapabilities, headerExtension);
125
- }
126
130
  return nativeRtpCapabilities;
127
131
  }
128
- constructor({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, getSendExtendedRtpCapabilities, }) {
132
+ constructor({ direction, iceParameters, iceCandidates, dtlsParameters, sctpParameters, iceServers, iceTransportPolicy, additionalSettings, getSendExtendedRtpCapabilities, forcedRtpExtensions, }) {
129
133
  super();
130
134
  logger.debug('constructor()');
131
135
  this._direction = direction;
@@ -138,6 +142,7 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
138
142
  sctpParameters,
139
143
  });
140
144
  this._getSendExtendedRtpCapabilities = getSendExtendedRtpCapabilities;
145
+ this._forcedRtpExtensions = forcedRtpExtensions;
141
146
  if (dtlsParameters.role && dtlsParameters.role !== 'auto') {
142
147
  this._forcedLocalDtlsRole =
143
148
  dtlsParameters.role === 'server' ? 'client' : 'server';
@@ -223,7 +228,7 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
223
228
  this.assertNotClosed();
224
229
  return this._pc.getStats();
225
230
  }
226
- async send({ track, streamId, encodings, codecOptions, headerExtensionOptions, codec, }) {
231
+ async send({ track, streamId, encodings, codecOptions, codec, onRtpSender, }) {
227
232
  this.assertNotClosed();
228
233
  this.assertSendDirection();
229
234
  logger.debug('send() [kind:%s, track.id:%s, streamId:%s]', track.kind, track.id, streamId);
@@ -238,20 +243,18 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
238
243
  streams: [this._sendStream],
239
244
  sendEncodings: encodings,
240
245
  });
246
+ if (this._forcedRtpExtensions) {
247
+ ortcUtils.applyForcedRtpExtensions(transceiver, this._forcedRtpExtensions);
248
+ }
249
+ if (onRtpSender) {
250
+ onRtpSender(transceiver.sender);
251
+ }
241
252
  let offer = await this._pc.createOffer();
242
253
  let localSdpObject = sdpTransform.parse(offer.sdp);
243
254
  if (localSdpObject.extmapAllowMixed) {
244
255
  this._remoteSdp.setSessionExtmapAllowMixed();
245
256
  }
246
- const extraHeaderExtensions = [];
247
- if (headerExtensionOptions?.absCaptureTime) {
248
- extraHeaderExtensions.push({
249
- uri: 'http://www.webrtc.org/experiments/rtp-hdrext/abs-capture-time',
250
- kind: track.kind,
251
- direction: 'sendonly',
252
- });
253
- }
254
- const nativeRtpCapabilities = Chrome74.getLocalRtpCapabilities(localSdpObject, extraHeaderExtensions);
257
+ const nativeRtpCapabilities = Chrome74.getLocalRtpCapabilities(localSdpObject);
255
258
  const sendExtendedRtpCapabilities = this._getSendExtendedRtpCapabilities(nativeRtpCapabilities);
256
259
  // Generic sending RTP parameters.
257
260
  const sendingRtpParameters = ortc.getSendingRtpParameters(track.kind, sendExtendedRtpCapabilities);
@@ -288,20 +291,6 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
288
291
  };
289
292
  }
290
293
  logger.debug('send() | calling pc.setLocalDescription() [offer:%o]', offer);
291
- // Optimize. Only generate new offer if needed.
292
- if (headerExtensionOptions?.absCaptureTime) {
293
- offerMediaObject = localSdpObject.media[mediaSectionIdx.idx];
294
- sdpCommonUtils.addHeaderExtension({
295
- offerMediaObject,
296
- headerExtensionUri: 'http://www.webrtc.org/experiments/rtp-hdrext/abs-capture-time',
297
- headerExtensionId: sendingRemoteRtpParameters.headerExtensions.find(headerExtension => headerExtension.uri ===
298
- 'http://www.webrtc.org/experiments/rtp-hdrext/abs-capture-time').id,
299
- });
300
- offer = {
301
- type: 'offer',
302
- sdp: sdpTransform.write(localSdpObject),
303
- };
304
- }
305
294
  await this._pc.setLocalDescription(offer);
306
295
  // We can now get the transceiver.mid.
307
296
  const localId = transceiver.mid;
@@ -596,6 +585,22 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
596
585
  };
597
586
  logger.debug('receive() | calling pc.setRemoteDescription() [offer:%o]', offer);
598
587
  await this._pc.setRemoteDescription(offer);
588
+ for (const options of optionsList) {
589
+ const { trackId, onRtpReceiver } = options;
590
+ if (onRtpReceiver) {
591
+ const localId = mapLocalId.get(trackId);
592
+ const transceiver = this._pc
593
+ .getTransceivers()
594
+ .find((t) => t.mid === localId);
595
+ if (!transceiver) {
596
+ throw new Error('transceiver not found');
597
+ }
598
+ if (this._forcedRtpExtensions) {
599
+ ortcUtils.applyForcedRtpExtensions(transceiver, this._forcedRtpExtensions);
600
+ }
601
+ onRtpReceiver(transceiver.receiver);
602
+ }
603
+ }
599
604
  let answer = await this._pc.createAnswer();
600
605
  const localSdpObject = sdpTransform.parse(answer.sdp);
601
606
  for (const options of optionsList) {
@@ -1,12 +1,13 @@
1
1
  import { EnhancedEventEmitter } from '../enhancedEvents';
2
2
  import type { IceParameters } from '../Transport';
3
- import type { HandlerFactory, HandlerInterface, HandlerEvents, HandlerSendOptions, HandlerSendResult, HandlerReceiveOptions, HandlerReceiveResult, HandlerSendDataChannelOptions, HandlerSendDataChannelResult, HandlerReceiveDataChannelOptions, HandlerReceiveDataChannelResult } from './HandlerInterface';
3
+ import type { HandlerFactoryOptions, HandlerFactory, HandlerInterface, HandlerEvents, HandlerSendOptions, HandlerSendResult, HandlerReceiveOptions, HandlerReceiveResult, HandlerSendDataChannelOptions, HandlerSendDataChannelResult, HandlerReceiveDataChannelOptions, HandlerReceiveDataChannelResult } from './HandlerInterface';
4
4
  export declare class Firefox120 extends EnhancedEventEmitter<HandlerEvents> implements HandlerInterface {
5
5
  private _closed;
6
6
  private _direction;
7
7
  private _sctpMaxReceiveMessageSize?;
8
8
  private _remoteSdp;
9
9
  private _getSendExtendedRtpCapabilities;
10
+ private _forcedRtpExtensions?;
10
11
  private _pc;
11
12
  private readonly _mapMidTransceiver;
12
13
  private readonly _sendStream;
@@ -16,7 +17,7 @@ export declare class Firefox120 extends EnhancedEventEmitter<HandlerEvents> impl
16
17
  /**
17
18
  * Creates a factory function.
18
19
  */
19
- static createFactory(): HandlerFactory;
20
+ static createFactory({ forcedRtpExtensions, }: HandlerFactoryOptions): HandlerFactory;
20
21
  private static getLocalRtpCapabilities;
21
22
  private constructor();
22
23
  get name(): string;