mediasoup-client 3.18.6 → 3.18.7
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 +15 -0
- package/lib/Device.d.ts.map +1 -1
- package/lib/Device.js +42 -9
- package/lib/handlers/Chrome111.d.ts.map +1 -1
- package/lib/handlers/Chrome111.js +5 -3
- package/lib/handlers/Chrome74.d.ts.map +1 -1
- package/lib/handlers/Chrome74.js +5 -4
- package/lib/handlers/FakeHandler.d.ts.map +1 -1
- package/lib/handlers/FakeHandler.js +2 -2
- package/lib/handlers/Firefox120.d.ts.map +1 -1
- package/lib/handlers/Firefox120.js +5 -4
- package/lib/handlers/HandlerInterface.d.ts +9 -6
- package/lib/handlers/HandlerInterface.d.ts.map +1 -1
- package/lib/handlers/ReactNative106.d.ts.map +1 -1
- package/lib/handlers/ReactNative106.js +5 -4
- package/lib/handlers/Safari12.d.ts.map +1 -1
- package/lib/handlers/Safari12.js +5 -4
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/ortc.d.ts +5 -0
- package/lib/ortc.d.ts.map +1 -1
- package/lib/ortc.js +63 -48
- package/lib/test/test.js +14 -2
- package/package.json +6 -6
package/lib/Device.d.ts
CHANGED
|
@@ -54,6 +54,7 @@ export declare class Device {
|
|
|
54
54
|
private _loaded;
|
|
55
55
|
private _getSendExtendedRtpCapabilities?;
|
|
56
56
|
private _recvRtpCapabilities?;
|
|
57
|
+
private _sendRtpCapabilities?;
|
|
57
58
|
private readonly _canProduceByKind;
|
|
58
59
|
private _sctpCapabilities?;
|
|
59
60
|
protected readonly _observer: DeviceObserver;
|
|
@@ -81,9 +82,23 @@ export declare class Device {
|
|
|
81
82
|
/**
|
|
82
83
|
* RTP capabilities of the Device for receiving media.
|
|
83
84
|
*
|
|
85
|
+
* @deprecated Use {@link recvRtpCapabilities} instead.
|
|
86
|
+
*
|
|
84
87
|
* @throws {InvalidStateError} if not loaded.
|
|
85
88
|
*/
|
|
86
89
|
get rtpCapabilities(): RtpCapabilities;
|
|
90
|
+
/**
|
|
91
|
+
* RTP capabilities of the Device for receiving media.
|
|
92
|
+
*
|
|
93
|
+
* @throws {InvalidStateError} if not loaded.
|
|
94
|
+
*/
|
|
95
|
+
get recvRtpCapabilities(): RtpCapabilities;
|
|
96
|
+
/**
|
|
97
|
+
* RTP capabilities of the Device for sending media.
|
|
98
|
+
*
|
|
99
|
+
* @throws {InvalidStateError} if not loaded.
|
|
100
|
+
*/
|
|
101
|
+
get sendRtpCapabilities(): RtpCapabilities;
|
|
87
102
|
/**
|
|
88
103
|
* SCTP capabilities of the Device.
|
|
89
104
|
*
|
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,EAAE,KAAK,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAMlE,OAAO,KAAK,EACX,eAAe,EACf,SAAS,EAET,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIvC,MAAM,MAAM,kBAAkB,GAC3B,WAAW,GACX,UAAU,GACV,YAAY,GACZ,UAAU,GACV,gBAAgB,CAAC;AAEpB,MAAM,MAAM,aAAa,GAAG;IAC3B;;OAEG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC;;OAEG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;CAChC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG;IAC7B,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC7C,QAAQ,EAAE,uBAAuB,CAAC;IAClC,MAAM,EAAE,OAAO,CAAC;IAChB,oBAAoB,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACxE,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAChC,SAAS,GACT,WAAW,GACX,aAAa,GACb,KAAK,GACL,OAAO,GACP,OAAO,GACP,SAAS,GACT,SAAS,CAAC;AAMb;;GAEG;AACH,wBAAgB,YAAY,CAC3B,SAAS,CAAC,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,eAAe,GAC7B,kBAAkB,GAAG,SAAS,CAYhC;AAED;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACtC,SAAS,CAAC,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,eAAe,GAC7B,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAYzC;AAED,MAAM,MAAM,cAAc,GAAG,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;AAExE,MAAM,MAAM,oBAAoB,GAAG;IAClC,YAAY,EAAE,CAAC,SAAS,CAAC,CAAC;CAC1B,CAAC;AAEF,qBAAa,MAAM;IAElB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiB;IAEjD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IAEtC,OAAO,CAAC,OAAO,CAAS;IAGxB,OAAO,CAAC,+BAA+B,CAAC,CAEX;IAE7B,OAAO,CAAC,oBAAoB,CAAC,CAAkB;IAE/C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAGhC;IAEF,OAAO,CAAC,iBAAiB,CAAC,CAAmB;IAE7C,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,cAAc,CACM;IAElD;;;;;OAKG;WACU,OAAO,CAAC,EACpB,WAAW,EACX,cAAc,GACd,GAAE,aAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IAoBvC;;;;OAIG;gBACS,EAAE,WAAW,EAAE,cAAc,EAAE,GAAE,aAAkB;IAgE/D;;OAEG;IACH,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED;;;;OAIG;IACH,IAAI,eAAe,IAAI,eAAe,
|
|
1
|
+
{"version":3,"file":"Device.d.ts","sourceRoot":"","sources":["../src/Device.ts"],"names":[],"mappings":"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"}
|
package/lib/Device.js
CHANGED
|
@@ -58,6 +58,8 @@ class Device {
|
|
|
58
58
|
_getSendExtendedRtpCapabilities;
|
|
59
59
|
// Local RTP capabilities for receiving media.
|
|
60
60
|
_recvRtpCapabilities;
|
|
61
|
+
// Local RTP capabilities for sending media.
|
|
62
|
+
_sendRtpCapabilities;
|
|
61
63
|
// Whether we can produce audio/video based on remote RTP capabilities.
|
|
62
64
|
_canProduceByKind = {
|
|
63
65
|
audio: false,
|
|
@@ -155,14 +157,35 @@ class Device {
|
|
|
155
157
|
/**
|
|
156
158
|
* RTP capabilities of the Device for receiving media.
|
|
157
159
|
*
|
|
160
|
+
* @deprecated Use {@link recvRtpCapabilities} instead.
|
|
161
|
+
*
|
|
158
162
|
* @throws {InvalidStateError} if not loaded.
|
|
159
163
|
*/
|
|
160
164
|
get rtpCapabilities() {
|
|
165
|
+
return this.recvRtpCapabilities;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* RTP capabilities of the Device for receiving media.
|
|
169
|
+
*
|
|
170
|
+
* @throws {InvalidStateError} if not loaded.
|
|
171
|
+
*/
|
|
172
|
+
get recvRtpCapabilities() {
|
|
161
173
|
if (!this._loaded) {
|
|
162
174
|
throw new errors_1.InvalidStateError('not loaded');
|
|
163
175
|
}
|
|
164
176
|
return this._recvRtpCapabilities;
|
|
165
177
|
}
|
|
178
|
+
/**
|
|
179
|
+
* RTP capabilities of the Device for sending media.
|
|
180
|
+
*
|
|
181
|
+
* @throws {InvalidStateError} if not loaded.
|
|
182
|
+
*/
|
|
183
|
+
get sendRtpCapabilities() {
|
|
184
|
+
if (!this._loaded) {
|
|
185
|
+
throw new errors_1.InvalidStateError('not loaded');
|
|
186
|
+
}
|
|
187
|
+
return this._sendRtpCapabilities;
|
|
188
|
+
}
|
|
166
189
|
/**
|
|
167
190
|
* SCTP capabilities of the Device.
|
|
168
191
|
*
|
|
@@ -190,23 +213,33 @@ class Device {
|
|
|
190
213
|
// This may throw.
|
|
191
214
|
ortc.validateAndNormalizeRtpCapabilities(clonedRouterRtpCapabilities);
|
|
192
215
|
const { getNativeRtpCapabilities, getNativeSctpCapabilities } = this._handlerFactory;
|
|
193
|
-
const
|
|
216
|
+
const clonedNativeRecvRtpCapabilities = utils.clone(await getNativeRtpCapabilities({ direction: 'recvonly' }));
|
|
217
|
+
logger.debug('load() | got native receiving RTP capabilities:%o', clonedNativeRecvRtpCapabilities);
|
|
194
218
|
// This may throw.
|
|
195
|
-
ortc.validateAndNormalizeRtpCapabilities(
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
219
|
+
ortc.validateAndNormalizeRtpCapabilities(clonedNativeRecvRtpCapabilities);
|
|
220
|
+
const clonedNativeSendRtpCapabilities = utils.clone(await getNativeRtpCapabilities({ direction: 'sendonly' }));
|
|
221
|
+
logger.debug('load() | got native sending RTP capabilities:%o', clonedNativeSendRtpCapabilities);
|
|
222
|
+
// This may throw.
|
|
223
|
+
ortc.validateAndNormalizeRtpCapabilities(clonedNativeSendRtpCapabilities);
|
|
224
|
+
this._getSendExtendedRtpCapabilities = (nativeSendRtpCapabilities) => {
|
|
225
|
+
return utils.clone(ortc.getExtendedRtpCapabilities(nativeSendRtpCapabilities, clonedRouterRtpCapabilities, preferLocalCodecsOrder));
|
|
199
226
|
};
|
|
200
|
-
const recvExtendedRtpCapabilities = ortc.getExtendedRtpCapabilities(
|
|
227
|
+
const recvExtendedRtpCapabilities = ortc.getExtendedRtpCapabilities(clonedNativeRecvRtpCapabilities, clonedRouterRtpCapabilities,
|
|
201
228
|
/* preferLocalCodecsOrder */ false);
|
|
202
229
|
// Generate our receiving RTP capabilities for receiving media.
|
|
203
230
|
this._recvRtpCapabilities = ortc.getRecvRtpCapabilities(recvExtendedRtpCapabilities);
|
|
231
|
+
logger.debug('load() | got receiving RTP capabilities:%o', this._recvRtpCapabilities);
|
|
204
232
|
// This may throw.
|
|
205
233
|
ortc.validateAndNormalizeRtpCapabilities(this._recvRtpCapabilities);
|
|
206
|
-
|
|
234
|
+
const sendExtendedRtpCapabilities = ortc.getExtendedRtpCapabilities(clonedNativeSendRtpCapabilities, clonedRouterRtpCapabilities, preferLocalCodecsOrder);
|
|
235
|
+
// Generate our sending RTP capabilities for sending media.
|
|
236
|
+
this._sendRtpCapabilities = ortc.getSendRtpCapabilities(sendExtendedRtpCapabilities);
|
|
237
|
+
logger.debug('load() | got sending RTP capabilities:%o', this._sendRtpCapabilities);
|
|
238
|
+
// This may throw.
|
|
239
|
+
ortc.validateAndNormalizeRtpCapabilities(this._sendRtpCapabilities);
|
|
207
240
|
// Check whether we can produce audio/video.
|
|
208
|
-
this._canProduceByKind.audio = ortc.canSend('audio', this.
|
|
209
|
-
this._canProduceByKind.video = ortc.canSend('video', this.
|
|
241
|
+
this._canProduceByKind.audio = ortc.canSend('audio', this._sendRtpCapabilities);
|
|
242
|
+
this._canProduceByKind.video = ortc.canSend('video', this._sendRtpCapabilities);
|
|
210
243
|
// Generate our SCTP capabilities.
|
|
211
244
|
this._sctpCapabilities = await getNativeSctpCapabilities();
|
|
212
245
|
// This may throw.
|
|
@@ -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;AAa5D,OAAO,KAAK,EACX,cAAc,EACd,gBAAgB,EAChB,aAAa,
|
|
1
|
+
{"version":3,"file":"Chrome111.d.ts","sourceRoot":"","sources":["../../src/handlers/Chrome111.ts"],"names":[],"mappings":"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"}
|
|
@@ -45,8 +45,8 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
45
45
|
return {
|
|
46
46
|
name: NAME,
|
|
47
47
|
factory: (options) => new Chrome111(options),
|
|
48
|
-
getNativeRtpCapabilities: async () => {
|
|
49
|
-
logger.debug('getNativeRtpCapabilities()');
|
|
48
|
+
getNativeRtpCapabilities: async ({ direction, }) => {
|
|
49
|
+
logger.debug('getNativeRtpCapabilities() [direction:%o]', direction);
|
|
50
50
|
let pc = new RTCPeerConnection({
|
|
51
51
|
iceServers: [],
|
|
52
52
|
iceTransportPolicy: 'all',
|
|
@@ -54,10 +54,11 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
54
54
|
rtcpMuxPolicy: 'require',
|
|
55
55
|
});
|
|
56
56
|
try {
|
|
57
|
-
pc.addTransceiver('audio');
|
|
57
|
+
pc.addTransceiver('audio', { direction });
|
|
58
58
|
// Create video transceiver with scalability mode in order to retrieve
|
|
59
59
|
// Dependency Descriptor header extension.
|
|
60
60
|
pc.addTransceiver('video', {
|
|
61
|
+
direction,
|
|
61
62
|
sendEncodings: [{ scalabilityMode: 'L3T3' }],
|
|
62
63
|
});
|
|
63
64
|
const offer = await pc.createOffer();
|
|
@@ -75,6 +76,7 @@ class Chrome111 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
75
76
|
pc?.close();
|
|
76
77
|
}
|
|
77
78
|
catch (error2) { }
|
|
79
|
+
// eslint-disable-next-line no-useless-assignment
|
|
78
80
|
pc = undefined;
|
|
79
81
|
throw error;
|
|
80
82
|
}
|
|
@@ -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;AAc5D,OAAO,KAAK,EACX,cAAc,EACd,aAAa,EACb,gBAAgB,
|
|
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
|
@@ -45,8 +45,8 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
45
45
|
return {
|
|
46
46
|
name: NAME,
|
|
47
47
|
factory: (options) => new Chrome74(options),
|
|
48
|
-
getNativeRtpCapabilities: async () => {
|
|
49
|
-
logger.debug('getNativeRtpCapabilities()');
|
|
48
|
+
getNativeRtpCapabilities: async ({ direction, }) => {
|
|
49
|
+
logger.debug('getNativeRtpCapabilities() [direction:%o]', direction);
|
|
50
50
|
let pc = new RTCPeerConnection({
|
|
51
51
|
iceServers: [],
|
|
52
52
|
iceTransportPolicy: 'all',
|
|
@@ -54,8 +54,8 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
54
54
|
rtcpMuxPolicy: 'require',
|
|
55
55
|
});
|
|
56
56
|
try {
|
|
57
|
-
pc.addTransceiver('audio');
|
|
58
|
-
pc.addTransceiver('video');
|
|
57
|
+
pc.addTransceiver('audio', { direction });
|
|
58
|
+
pc.addTransceiver('video', { direction });
|
|
59
59
|
const offer = await pc.createOffer();
|
|
60
60
|
try {
|
|
61
61
|
pc.close();
|
|
@@ -71,6 +71,7 @@ class Chrome74 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
71
71
|
pc?.close();
|
|
72
72
|
}
|
|
73
73
|
catch (error2) { }
|
|
74
|
+
// eslint-disable-next-line no-useless-assignment
|
|
74
75
|
pc = undefined;
|
|
75
76
|
throw error;
|
|
76
77
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FakeHandler.d.ts","sourceRoot":"","sources":["../../src/handlers/FakeHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAKzD,OAAO,KAAK,EACX,aAAa,EACb,cAAc,EAEd,iBAAiB,EACjB,eAAe,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EACX,eAAe,EAIf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAQ1D,OAAO,KAAK,EACX,cAAc,EACd,gBAAgB,EAChB,aAAa,
|
|
1
|
+
{"version":3,"file":"FakeHandler.d.ts","sourceRoot":"","sources":["../../src/handlers/FakeHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,8 +36,8 @@ class FakeHandler extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
36
36
|
return {
|
|
37
37
|
name: NAME,
|
|
38
38
|
factory: (options) => new FakeHandler(options, fakeParameters),
|
|
39
|
-
getNativeRtpCapabilities: async () => {
|
|
40
|
-
logger.debug('getNativeRtpCapabilities()');
|
|
39
|
+
getNativeRtpCapabilities: async ({ direction, }) => {
|
|
40
|
+
logger.debug('getNativeRtpCapabilities() [direction:%o]', direction);
|
|
41
41
|
return FakeHandler.getLocalRtpCapabilities(fakeParameters);
|
|
42
42
|
},
|
|
43
43
|
getNativeSctpCapabilities: async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Firefox120.d.ts","sourceRoot":"","sources":["../../src/handlers/Firefox120.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAKzD,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,cAAc,CAAC;AAY5D,OAAO,KAAK,EACX,cAAc,EACd,gBAAgB,EAChB,aAAa,
|
|
1
|
+
{"version":3,"file":"Firefox120.d.ts","sourceRoot":"","sources":["../../src/handlers/Firefox120.ts"],"names":[],"mappings":"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"}
|
|
@@ -42,8 +42,8 @@ class Firefox120 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
42
42
|
return {
|
|
43
43
|
name: NAME,
|
|
44
44
|
factory: (options) => new Firefox120(options),
|
|
45
|
-
getNativeRtpCapabilities: async () => {
|
|
46
|
-
logger.debug('getNativeRtpCapabilities()');
|
|
45
|
+
getNativeRtpCapabilities: async ({ direction, }) => {
|
|
46
|
+
logger.debug('getNativeRtpCapabilities() [direction:%o]', direction);
|
|
47
47
|
let pc = new RTCPeerConnection({
|
|
48
48
|
iceServers: [],
|
|
49
49
|
iceTransportPolicy: 'all',
|
|
@@ -58,9 +58,9 @@ class Firefox120 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
58
58
|
const fakeStream = canvas.captureStream();
|
|
59
59
|
const fakeVideoTrack = fakeStream.getVideoTracks()[0];
|
|
60
60
|
try {
|
|
61
|
-
pc.addTransceiver('audio', { direction
|
|
61
|
+
pc.addTransceiver('audio', { direction });
|
|
62
62
|
pc.addTransceiver(fakeVideoTrack, {
|
|
63
|
-
direction
|
|
63
|
+
direction,
|
|
64
64
|
sendEncodings: [
|
|
65
65
|
{ rid: 'r0', maxBitrate: 100000 },
|
|
66
66
|
{ rid: 'r1', maxBitrate: 500000 },
|
|
@@ -97,6 +97,7 @@ class Firefox120 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
97
97
|
pc?.close();
|
|
98
98
|
}
|
|
99
99
|
catch (error2) { }
|
|
100
|
+
// eslint-disable-next-line no-useless-assignment
|
|
100
101
|
pc = undefined;
|
|
101
102
|
throw error;
|
|
102
103
|
}
|
|
@@ -4,6 +4,12 @@ import type { ProducerCodecOptions, ProducerHeaderExtensionOptions, OnRtpSenderC
|
|
|
4
4
|
import type { OnRtpReceiverCallback } from '../Consumer';
|
|
5
5
|
import type { RtpCapabilities, RtpCodecCapability, RtpParameters, RtpEncodingParameters, ExtendedRtpCapabilities } from '../RtpParameters';
|
|
6
6
|
import type { SctpCapabilities, SctpParameters, SctpStreamParameters } from '../SctpParameters';
|
|
7
|
+
export type HandlerFactory = {
|
|
8
|
+
name: string;
|
|
9
|
+
factory: (options: HandlerOptions) => HandlerInterface;
|
|
10
|
+
getNativeRtpCapabilities(options: HandlerGetNativeRtpCapabilitiesOptions): Promise<RtpCapabilities>;
|
|
11
|
+
getNativeSctpCapabilities(): Promise<SctpCapabilities>;
|
|
12
|
+
};
|
|
7
13
|
export type HandlerOptions = {
|
|
8
14
|
direction: 'send' | 'recv';
|
|
9
15
|
iceParameters: IceParameters;
|
|
@@ -13,13 +19,10 @@ export type HandlerOptions = {
|
|
|
13
19
|
iceServers?: RTCIceServer[];
|
|
14
20
|
iceTransportPolicy?: RTCIceTransportPolicy;
|
|
15
21
|
additionalSettings?: Partial<RTCConfiguration>;
|
|
16
|
-
getSendExtendedRtpCapabilities: (
|
|
22
|
+
getSendExtendedRtpCapabilities: (nativeSendRtpCapabilities: RtpCapabilities) => ExtendedRtpCapabilities;
|
|
17
23
|
};
|
|
18
|
-
export type
|
|
19
|
-
|
|
20
|
-
factory: (options: HandlerOptions) => HandlerInterface;
|
|
21
|
-
getNativeRtpCapabilities(): Promise<RtpCapabilities>;
|
|
22
|
-
getNativeSctpCapabilities(): Promise<SctpCapabilities>;
|
|
24
|
+
export type HandlerGetNativeRtpCapabilitiesOptions = {
|
|
25
|
+
direction: Extract<RTCRtpTransceiverDirection, 'sendonly' | 'recvonly'>;
|
|
23
26
|
};
|
|
24
27
|
export type HandlerSendOptions = {
|
|
25
28
|
track: MediaStreamTrack;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HandlerInterface.d.ts","sourceRoot":"","sources":["../../src/handlers/HandlerInterface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EACX,oBAAoB,EACpB,8BAA8B,EAC9B,mBAAmB,EACnB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,KAAK,EACX,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,qBAAqB,EACrB,uBAAuB,EACvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACX,gBAAgB,EAChB,cAAc,EACd,oBAAoB,EACpB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,MAAM,cAAc,GAAG;IAC5B,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,cAAc,EAAE,cAAc,CAAC;IAC/B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC;IAC5B,kBAAkB,CAAC,EAAE,qBAAqB,CAAC;IAC3C,kBAAkB,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC/C,8BAA8B,EAAE,CAC/B,
|
|
1
|
+
{"version":3,"file":"HandlerInterface.d.ts","sourceRoot":"","sources":["../../src/handlers/HandlerInterface.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactNative106.d.ts","sourceRoot":"","sources":["../../src/handlers/ReactNative106.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAKzD,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,cAAc,CAAC;AAc5D,OAAO,KAAK,EACX,cAAc,EACd,gBAAgB,EAChB,aAAa,
|
|
1
|
+
{"version":3,"file":"ReactNative106.d.ts","sourceRoot":"","sources":["../../src/handlers/ReactNative106.ts"],"names":[],"mappings":"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"}
|
|
@@ -45,8 +45,8 @@ class ReactNative106 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
45
45
|
return {
|
|
46
46
|
name: NAME,
|
|
47
47
|
factory: (options) => new ReactNative106(options),
|
|
48
|
-
getNativeRtpCapabilities: async () => {
|
|
49
|
-
logger.debug('getNativeRtpCapabilities()');
|
|
48
|
+
getNativeRtpCapabilities: async ({ direction, }) => {
|
|
49
|
+
logger.debug('getNativeRtpCapabilities() [direction:%o]', direction);
|
|
50
50
|
let pc = new RTCPeerConnection({
|
|
51
51
|
iceServers: [],
|
|
52
52
|
iceTransportPolicy: 'all',
|
|
@@ -54,8 +54,8 @@ class ReactNative106 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
54
54
|
rtcpMuxPolicy: 'require',
|
|
55
55
|
});
|
|
56
56
|
try {
|
|
57
|
-
pc.addTransceiver('audio');
|
|
58
|
-
pc.addTransceiver('video');
|
|
57
|
+
pc.addTransceiver('audio', { direction });
|
|
58
|
+
pc.addTransceiver('video', { direction });
|
|
59
59
|
const offer = await pc.createOffer();
|
|
60
60
|
try {
|
|
61
61
|
pc.close();
|
|
@@ -71,6 +71,7 @@ class ReactNative106 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
71
71
|
pc?.close();
|
|
72
72
|
}
|
|
73
73
|
catch (error2) { }
|
|
74
|
+
// eslint-disable-next-line no-useless-assignment
|
|
74
75
|
pc = undefined;
|
|
75
76
|
throw error;
|
|
76
77
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Safari12.d.ts","sourceRoot":"","sources":["../../src/handlers/Safari12.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAKzD,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,cAAc,CAAC;AAa5D,OAAO,KAAK,EACX,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,cAAc,
|
|
1
|
+
{"version":3,"file":"Safari12.d.ts","sourceRoot":"","sources":["../../src/handlers/Safari12.ts"],"names":[],"mappings":"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"}
|
package/lib/handlers/Safari12.js
CHANGED
|
@@ -45,8 +45,8 @@ class Safari12 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
45
45
|
return {
|
|
46
46
|
name: NAME,
|
|
47
47
|
factory: (options) => new Safari12(options),
|
|
48
|
-
getNativeRtpCapabilities: async () => {
|
|
49
|
-
logger.debug('getNativeRtpCapabilities()');
|
|
48
|
+
getNativeRtpCapabilities: async ({ direction, }) => {
|
|
49
|
+
logger.debug('getNativeRtpCapabilities() [direction:%o]', direction);
|
|
50
50
|
let pc = new RTCPeerConnection({
|
|
51
51
|
iceServers: [],
|
|
52
52
|
iceTransportPolicy: 'all',
|
|
@@ -54,8 +54,8 @@ class Safari12 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
54
54
|
rtcpMuxPolicy: 'require',
|
|
55
55
|
});
|
|
56
56
|
try {
|
|
57
|
-
pc.addTransceiver('audio');
|
|
58
|
-
pc.addTransceiver('video');
|
|
57
|
+
pc.addTransceiver('audio', { direction });
|
|
58
|
+
pc.addTransceiver('video', { direction });
|
|
59
59
|
const offer = await pc.createOffer();
|
|
60
60
|
try {
|
|
61
61
|
pc.close();
|
|
@@ -71,6 +71,7 @@ class Safari12 extends enhancedEvents_1.EnhancedEventEmitter {
|
|
|
71
71
|
pc?.close();
|
|
72
72
|
}
|
|
73
73
|
catch (error2) { }
|
|
74
|
+
// eslint-disable-next-line no-useless-assignment
|
|
74
75
|
pc = undefined;
|
|
75
76
|
throw error;
|
|
76
77
|
}
|
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
package/lib/ortc.d.ts
CHANGED
|
@@ -35,6 +35,11 @@ export declare function getExtendedRtpCapabilities(localCaps: RtpCapabilities, r
|
|
|
35
35
|
* RTP capabilities.
|
|
36
36
|
*/
|
|
37
37
|
export declare function getRecvRtpCapabilities(extendedRtpCapabilities: ExtendedRtpCapabilities): RtpCapabilities;
|
|
38
|
+
/**
|
|
39
|
+
* Generate RTP capabilities for sending media based on the given extended
|
|
40
|
+
* RTP capabilities.
|
|
41
|
+
*/
|
|
42
|
+
export declare function getSendRtpCapabilities(extendedRtpCapabilities: ExtendedRtpCapabilities): RtpCapabilities;
|
|
38
43
|
/**
|
|
39
44
|
* Generate RTP parameters of the given kind for sending media.
|
|
40
45
|
* NOTE: mid, encodings and rtcp fields are left empty.
|
package/lib/ortc.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ortc.d.ts","sourceRoot":"","sources":["../src/ortc.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,eAAe,EACf,SAAS,EACT,kBAAkB,EAElB,aAAa,EACb,kBAAkB,EAKlB,uBAAuB,EAGvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EACX,gBAAgB,EAEhB,oBAAoB,EACpB,MAAM,kBAAkB,CAAC;AAO1B;;;;GAIG;AACH,wBAAgB,mCAAmC,CAClD,IAAI,EAAE,eAAe,GACnB,IAAI,CA0BN;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAiD7E;AAED;;;;GAIG;AACH,wBAAgB,wCAAwC,CACvD,MAAM,EAAE,oBAAoB,GAC1B,IAAI,CA8DN;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAWrE;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACzC,SAAS,EAAE,eAAe,EAC1B,UAAU,EAAE,eAAe,EAC3B,sBAAsB,EAAE,OAAO,GAC7B,uBAAuB,CAiJzB;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACrC,uBAAuB,EAAE,uBAAuB,GAC9C,eAAe,
|
|
1
|
+
{"version":3,"file":"ortc.d.ts","sourceRoot":"","sources":["../src/ortc.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,eAAe,EACf,SAAS,EACT,kBAAkB,EAElB,aAAa,EACb,kBAAkB,EAKlB,uBAAuB,EAGvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EACX,gBAAgB,EAEhB,oBAAoB,EACpB,MAAM,kBAAkB,CAAC;AAO1B;;;;GAIG;AACH,wBAAgB,mCAAmC,CAClD,IAAI,EAAE,eAAe,GACnB,IAAI,CA0BN;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAiD7E;AAED;;;;GAIG;AACH,wBAAgB,wCAAwC,CACvD,MAAM,EAAE,oBAAoB,GAC1B,IAAI,CA8DN;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAWrE;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACzC,SAAS,EAAE,eAAe,EAC1B,UAAU,EAAE,eAAe,EAC3B,sBAAsB,EAAE,OAAO,GAC7B,uBAAuB,CAiJzB;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACrC,uBAAuB,EAAE,uBAAuB,GAC9C,eAAe,CAEjB;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACrC,uBAAuB,EAAE,uBAAuB,GAC9C,eAAe,CAEjB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACtC,IAAI,EAAE,SAAS,EACf,uBAAuB,EAAE,uBAAuB,GAC9C,aAAa,CA8Df;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAC5C,IAAI,EAAE,SAAS,EACf,uBAAuB,EAAE,uBAAuB,GAC9C,aAAa,CA+Ff;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAC3B,MAAM,EAAE,kBAAkB,EAAE,EAC5B,QAAQ,CAAC,EAAE,kBAAkB,GAC3B,kBAAkB,EAAE,CA+BtB;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAC5C,kBAAkB,EAAE,aAAa,GAC/B,aAAa,CAoBf;AAED;;GAEG;AACH,wBAAgB,OAAO,CACtB,IAAI,EAAE,SAAS,EACf,eAAe,EAAE,eAAe,GAC9B,OAAO,CAET;AAED;;;GAGG;AACH,wBAAgB,UAAU,CACzB,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe,GAC9B,OAAO,CAaT"}
|
package/lib/ortc.js
CHANGED
|
@@ -6,6 +6,7 @@ exports.validateAndNormalizeSctpStreamParameters = validateAndNormalizeSctpStrea
|
|
|
6
6
|
exports.validateSctpCapabilities = validateSctpCapabilities;
|
|
7
7
|
exports.getExtendedRtpCapabilities = getExtendedRtpCapabilities;
|
|
8
8
|
exports.getRecvRtpCapabilities = getRecvRtpCapabilities;
|
|
9
|
+
exports.getSendRtpCapabilities = getSendRtpCapabilities;
|
|
9
10
|
exports.getSendingRtpParameters = getSendingRtpParameters;
|
|
10
11
|
exports.getSendingRemoteRtpParameters = getSendingRemoteRtpParameters;
|
|
11
12
|
exports.reduceCodecs = reduceCodecs;
|
|
@@ -278,54 +279,14 @@ function getExtendedRtpCapabilities(localCaps, remoteCaps, preferLocalCodecsOrde
|
|
|
278
279
|
* RTP capabilities.
|
|
279
280
|
*/
|
|
280
281
|
function getRecvRtpCapabilities(extendedRtpCapabilities) {
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
preferredPayloadType: extendedCodec.remotePayloadType,
|
|
290
|
-
clockRate: extendedCodec.clockRate,
|
|
291
|
-
channels: extendedCodec.channels,
|
|
292
|
-
parameters: extendedCodec.localParameters,
|
|
293
|
-
rtcpFeedback: extendedCodec.rtcpFeedback,
|
|
294
|
-
};
|
|
295
|
-
rtpCapabilities.codecs.push(codec);
|
|
296
|
-
// Add RTX codec.
|
|
297
|
-
if (!extendedCodec.remoteRtxPayloadType) {
|
|
298
|
-
continue;
|
|
299
|
-
}
|
|
300
|
-
const rtxCodec = {
|
|
301
|
-
kind: extendedCodec.kind,
|
|
302
|
-
mimeType: `${extendedCodec.kind}/rtx`,
|
|
303
|
-
preferredPayloadType: extendedCodec.remoteRtxPayloadType,
|
|
304
|
-
clockRate: extendedCodec.clockRate,
|
|
305
|
-
parameters: {
|
|
306
|
-
apt: extendedCodec.remotePayloadType,
|
|
307
|
-
},
|
|
308
|
-
rtcpFeedback: [],
|
|
309
|
-
};
|
|
310
|
-
rtpCapabilities.codecs.push(rtxCodec);
|
|
311
|
-
// TODO: In the future, we need to add FEC, CN, etc, codecs.
|
|
312
|
-
}
|
|
313
|
-
for (const extendedExtension of extendedRtpCapabilities.headerExtensions) {
|
|
314
|
-
// Ignore RTP extensions not valid for receiving.
|
|
315
|
-
if (extendedExtension.direction !== 'sendrecv' &&
|
|
316
|
-
extendedExtension.direction !== 'recvonly') {
|
|
317
|
-
continue;
|
|
318
|
-
}
|
|
319
|
-
const ext = {
|
|
320
|
-
kind: extendedExtension.kind,
|
|
321
|
-
uri: extendedExtension.uri,
|
|
322
|
-
preferredId: extendedExtension.recvId,
|
|
323
|
-
preferredEncrypt: extendedExtension.encrypt ?? false,
|
|
324
|
-
direction: extendedExtension.direction,
|
|
325
|
-
};
|
|
326
|
-
rtpCapabilities.headerExtensions.push(ext);
|
|
327
|
-
}
|
|
328
|
-
return rtpCapabilities;
|
|
282
|
+
return getRtpCapabilities({ direction: 'recvonly', extendedRtpCapabilities });
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Generate RTP capabilities for sending media based on the given extended
|
|
286
|
+
* RTP capabilities.
|
|
287
|
+
*/
|
|
288
|
+
function getSendRtpCapabilities(extendedRtpCapabilities) {
|
|
289
|
+
return getRtpCapabilities({ direction: 'sendonly', extendedRtpCapabilities });
|
|
329
290
|
}
|
|
330
291
|
/**
|
|
331
292
|
* Generate RTP parameters of the given kind for sending media.
|
|
@@ -824,6 +785,60 @@ function validateNumSctpStreams(numStreams) {
|
|
|
824
785
|
throw new TypeError('missing numStreams.MIS');
|
|
825
786
|
}
|
|
826
787
|
}
|
|
788
|
+
/**
|
|
789
|
+
* Generate RTP capabilities for sending or receiving media based on the given
|
|
790
|
+
* extended RTP capabilities.
|
|
791
|
+
*/
|
|
792
|
+
function getRtpCapabilities({ direction, extendedRtpCapabilities, }) {
|
|
793
|
+
const rtpCapabilities = {
|
|
794
|
+
codecs: [],
|
|
795
|
+
headerExtensions: [],
|
|
796
|
+
};
|
|
797
|
+
for (const extendedCodec of extendedRtpCapabilities.codecs) {
|
|
798
|
+
const codec = {
|
|
799
|
+
kind: extendedCodec.kind,
|
|
800
|
+
mimeType: extendedCodec.mimeType,
|
|
801
|
+
preferredPayloadType: extendedCodec.remotePayloadType,
|
|
802
|
+
clockRate: extendedCodec.clockRate,
|
|
803
|
+
channels: extendedCodec.channels,
|
|
804
|
+
parameters: extendedCodec.localParameters,
|
|
805
|
+
rtcpFeedback: extendedCodec.rtcpFeedback,
|
|
806
|
+
};
|
|
807
|
+
rtpCapabilities.codecs.push(codec);
|
|
808
|
+
// Add RTX codec.
|
|
809
|
+
if (!extendedCodec.remoteRtxPayloadType) {
|
|
810
|
+
continue;
|
|
811
|
+
}
|
|
812
|
+
const rtxCodec = {
|
|
813
|
+
kind: extendedCodec.kind,
|
|
814
|
+
mimeType: `${extendedCodec.kind}/rtx`,
|
|
815
|
+
preferredPayloadType: extendedCodec.remoteRtxPayloadType,
|
|
816
|
+
clockRate: extendedCodec.clockRate,
|
|
817
|
+
parameters: {
|
|
818
|
+
apt: extendedCodec.remotePayloadType,
|
|
819
|
+
},
|
|
820
|
+
rtcpFeedback: [],
|
|
821
|
+
};
|
|
822
|
+
rtpCapabilities.codecs.push(rtxCodec);
|
|
823
|
+
// TODO: In the future, we need to add FEC, CN, etc, codecs.
|
|
824
|
+
}
|
|
825
|
+
for (const extendedExtension of extendedRtpCapabilities.headerExtensions) {
|
|
826
|
+
// Ignore RTP extensions not valid for the given direction.
|
|
827
|
+
if (extendedExtension.direction !== 'sendrecv' &&
|
|
828
|
+
extendedExtension.direction !== direction) {
|
|
829
|
+
continue;
|
|
830
|
+
}
|
|
831
|
+
const ext = {
|
|
832
|
+
kind: extendedExtension.kind,
|
|
833
|
+
uri: extendedExtension.uri,
|
|
834
|
+
preferredId: extendedExtension.recvId,
|
|
835
|
+
preferredEncrypt: extendedExtension.encrypt ?? false,
|
|
836
|
+
direction: extendedExtension.direction,
|
|
837
|
+
};
|
|
838
|
+
rtpCapabilities.headerExtensions.push(ext);
|
|
839
|
+
}
|
|
840
|
+
return rtpCapabilities;
|
|
841
|
+
}
|
|
827
842
|
function isRtxCodec(codec) {
|
|
828
843
|
if (!codec) {
|
|
829
844
|
return false;
|
package/lib/test/test.js
CHANGED
|
@@ -135,9 +135,15 @@ test('create a Device in Node with a valid handlerFactory succeeds', () => {
|
|
|
135
135
|
expect(device.handlerName).toBe('FakeHandler');
|
|
136
136
|
expect(device.loaded).toBe(false);
|
|
137
137
|
});
|
|
138
|
-
test('device.rtpCapabilities getter throws InvalidStateError if not loaded', () => {
|
|
138
|
+
test('device.rtpCapabilities (deprecated) getter throws InvalidStateError if not loaded', () => {
|
|
139
139
|
expect(() => ctx.device.rtpCapabilities).toThrow(errors_1.InvalidStateError);
|
|
140
140
|
});
|
|
141
|
+
test('device.recvRtpCapabilities getter throws InvalidStateError if not loaded', () => {
|
|
142
|
+
expect(() => ctx.device.recvRtpCapabilities).toThrow(errors_1.InvalidStateError);
|
|
143
|
+
});
|
|
144
|
+
test('device.sendRtpCapabilities getter throws InvalidStateError if not loaded', () => {
|
|
145
|
+
expect(() => ctx.device.sendRtpCapabilities).toThrow(errors_1.InvalidStateError);
|
|
146
|
+
});
|
|
141
147
|
test('device.sctpCapabilities getter throws InvalidStateError if not loaded', () => {
|
|
142
148
|
expect(() => ctx.device.sctpCapabilities).toThrow(errors_1.InvalidStateError);
|
|
143
149
|
});
|
|
@@ -183,6 +189,12 @@ test('device.load() rejects with InvalidStateError if already loaded', async ()
|
|
|
183
189
|
test('device.rtpCapabilities getter succeeds', () => {
|
|
184
190
|
expect(typeof ctx.loadedDevice.rtpCapabilities).toBe('object');
|
|
185
191
|
});
|
|
192
|
+
test('device.recvRtpCapabilities getter succeeds', () => {
|
|
193
|
+
expect(typeof ctx.loadedDevice.recvRtpCapabilities).toBe('object');
|
|
194
|
+
});
|
|
195
|
+
test('device.sendRtpCapabilities getter succeeds', () => {
|
|
196
|
+
expect(typeof ctx.loadedDevice.sendRtpCapabilities).toBe('object');
|
|
197
|
+
});
|
|
186
198
|
test('device.sctpCapabilities getter succeeds', () => {
|
|
187
199
|
expect(typeof ctx.loadedDevice.sctpCapabilities).toBe('object');
|
|
188
200
|
});
|
|
@@ -340,7 +352,7 @@ test('transport.produce() succeeds', async () => {
|
|
|
340
352
|
// Use disableTrackOnPause: false and zeroRtpOnPause: true
|
|
341
353
|
const videoProducer = await ctx.connectedSendTransport.produce({
|
|
342
354
|
track: videoTrack,
|
|
343
|
-
codec: ctx.loadedDevice.
|
|
355
|
+
codec: ctx.loadedDevice.sendRtpCapabilities.codecs.find(codec => codec.mimeType.toLowerCase() === 'video/vp9'),
|
|
344
356
|
encodings: videoEncodings,
|
|
345
357
|
disableTrackOnPause: false,
|
|
346
358
|
zeroRtpOnPause: true,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mediasoup-client",
|
|
3
|
-
"version": "3.18.
|
|
3
|
+
"version": "3.18.7",
|
|
4
4
|
"description": "mediasoup client side TypeScript library",
|
|
5
5
|
"contributors": [
|
|
6
6
|
"Iñaki Baz Castillo <ibc@aliax.net> (https://inakibaz.me)",
|
|
@@ -82,20 +82,20 @@
|
|
|
82
82
|
"supports-color": "^10.2.2"
|
|
83
83
|
},
|
|
84
84
|
"devDependencies": {
|
|
85
|
-
"@eslint/js": "^
|
|
85
|
+
"@eslint/js": "^10.0.1",
|
|
86
86
|
"@types/jest": "^30.0.0",
|
|
87
87
|
"@types/sdp-transform": "^2.15.0",
|
|
88
88
|
"@types/ua-parser-js": "^0.7.39",
|
|
89
|
-
"eslint": "^
|
|
89
|
+
"eslint": "^10.0.0",
|
|
90
90
|
"eslint-config-prettier": "^10.1.8",
|
|
91
|
-
"eslint-plugin-jest": "^29.
|
|
91
|
+
"eslint-plugin-jest": "^29.15.0",
|
|
92
92
|
"eslint-plugin-prettier": "^5.5.5",
|
|
93
|
-
"globals": "^17.
|
|
93
|
+
"globals": "^17.3.0",
|
|
94
94
|
"jest": "^30.2.0",
|
|
95
95
|
"open-cli": "^8.0.0",
|
|
96
96
|
"prettier": "^3.8.1",
|
|
97
97
|
"ts-jest": "^29.4.6",
|
|
98
98
|
"typescript": "^5.9.3",
|
|
99
|
-
"typescript-eslint": "^8.
|
|
99
|
+
"typescript-eslint": "^8.56.0"
|
|
100
100
|
}
|
|
101
101
|
}
|