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 +7 -3
- package/lib/Device.d.ts.map +1 -1
- package/lib/Device.js +22 -8
- package/lib/Producer.d.ts +0 -4
- package/lib/Producer.d.ts.map +1 -1
- package/lib/Transport.d.ts +1 -1
- package/lib/Transport.d.ts.map +1 -1
- package/lib/Transport.js +1 -2
- package/lib/handlers/Chrome111.d.ts +4 -3
- package/lib/handlers/Chrome111.d.ts.map +1 -1
- package/lib/handlers/Chrome111.js +23 -34
- package/lib/handlers/Chrome74.d.ts +4 -3
- package/lib/handlers/Chrome74.d.ts.map +1 -1
- package/lib/handlers/Chrome74.js +38 -33
- package/lib/handlers/Firefox120.d.ts +3 -2
- package/lib/handlers/Firefox120.d.ts.map +1 -1
- package/lib/handlers/Firefox120.js +19 -5
- package/lib/handlers/HandlerInterface.d.ts +9 -3
- package/lib/handlers/HandlerInterface.d.ts.map +1 -1
- package/lib/handlers/ReactNative106.d.ts +4 -3
- package/lib/handlers/ReactNative106.d.ts.map +1 -1
- package/lib/handlers/ReactNative106.js +22 -33
- package/lib/handlers/Safari12.d.ts +5 -4
- package/lib/handlers/Safari12.d.ts.map +1 -1
- package/lib/handlers/Safari12.js +22 -33
- package/lib/handlers/ortc/utils.d.ts +8 -9
- package/lib/handlers/ortc/utils.d.ts.map +1 -1
- package/lib/handlers/ortc/utils.js +30 -39
- package/lib/handlers/sdp/commonUtils.d.ts +1 -9
- package/lib/handlers/sdp/commonUtils.d.ts.map +1 -1
- package/lib/handlers/sdp/commonUtils.js +0 -13
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/ortc.js +15 -5
- package/npm-scripts.mjs +12 -2
- package/package.json +5 -5
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 {
|
|
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
|
*/
|
package/lib/Device.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Device.d.ts","sourceRoot":"","sources":["../src/Device.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAIxD,OAAO,EACN,SAAS,EACT,KAAK,gBAAgB,EAErB,MAAM,aAAa,CAAC;AACrB,OAAO,
|
|
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({
|
|
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: [];
|
package/lib/Producer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Producer.d.ts","sourceRoot":"","sources":["../src/Producer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,KAAK,EACX,SAAS,EACT,kBAAkB,EAClB,aAAa,EACb,qBAAqB,EACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIvC,MAAM,MAAM,eAAe,CAAC,eAAe,SAAS,OAAO,GAAG,OAAO,IAAI;IACxE,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,qBAAqB,EAAE,CAAC;IACpC,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC,
|
|
1
|
+
{"version":3,"file":"Producer.d.ts","sourceRoot":"","sources":["../src/Producer.ts"],"names":[],"mappings":"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"}
|
package/lib/Transport.d.ts
CHANGED
|
@@ -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,
|
|
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
|
*/
|
package/lib/Transport.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transport.d.ts","sourceRoot":"","sources":["../src/Transport.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Transport.d.ts","sourceRoot":"","sources":["../src/Transport.ts"],"names":[],"mappings":"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"}
|
package/lib/Transport.js
CHANGED
|
@@ -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,
|
|
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,
|
|
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":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAKzD,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,cAAc,CAAC;
|
|
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
|
|
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,
|
|
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
|
-
|
|
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
|
|
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,
|
|
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":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAIzD,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,cAAc,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
|
@@ -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
|
-
|
|
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
|
|
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,
|
|
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
|
|
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;
|