mediasoup-client 3.6.90 → 3.6.91

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/lib/Consumer.d.ts +115 -0
  2. package/lib/Consumer.d.ts.map +1 -0
  3. package/lib/Consumer.js +190 -0
  4. package/lib/DataConsumer.d.ts +93 -0
  5. package/lib/DataConsumer.d.ts.map +1 -0
  6. package/lib/DataConsumer.js +162 -0
  7. package/lib/DataProducer.d.ts +97 -0
  8. package/lib/DataProducer.d.ts.map +1 -0
  9. package/lib/DataProducer.js +180 -0
  10. package/lib/Device.d.ts +92 -0
  11. package/lib/Device.d.ts.map +1 -0
  12. package/lib/Device.js +463 -0
  13. package/lib/EnhancedEventEmitter.d.ts +24 -0
  14. package/lib/EnhancedEventEmitter.d.ts.map +1 -0
  15. package/lib/EnhancedEventEmitter.js +70 -0
  16. package/lib/Logger.d.ts +11 -0
  17. package/lib/Logger.d.ts.map +1 -0
  18. package/lib/Logger.js +37 -0
  19. package/lib/Producer.d.ts +169 -0
  20. package/lib/Producer.d.ts.map +1 -0
  21. package/lib/Producer.js +287 -0
  22. package/lib/RtpParameters.d.ts +306 -0
  23. package/lib/RtpParameters.d.ts.map +1 -0
  24. package/lib/RtpParameters.js +6 -0
  25. package/lib/SctpParameters.d.ts +68 -0
  26. package/lib/SctpParameters.d.ts.map +1 -0
  27. package/lib/SctpParameters.js +2 -0
  28. package/lib/Transport.d.ts +243 -0
  29. package/lib/Transport.d.ts.map +1 -0
  30. package/lib/Transport.js +824 -0
  31. package/lib/errors.d.ts +13 -0
  32. package/lib/errors.d.ts.map +1 -0
  33. package/lib/errors.js +39 -0
  34. package/lib/handlers/Chrome111.d.ts +49 -0
  35. package/lib/handlers/Chrome111.d.ts.map +1 -0
  36. package/lib/handlers/Chrome111.js +654 -0
  37. package/lib/handlers/Chrome55.d.ts +51 -0
  38. package/lib/handlers/Chrome55.d.ts.map +1 -0
  39. package/lib/handlers/Chrome55.js +538 -0
  40. package/lib/handlers/Chrome67.d.ts +51 -0
  41. package/lib/handlers/Chrome67.d.ts.map +1 -0
  42. package/lib/handlers/Chrome67.js +594 -0
  43. package/lib/handlers/Chrome70.d.ts +49 -0
  44. package/lib/handlers/Chrome70.d.ts.map +1 -0
  45. package/lib/handlers/Chrome70.js +623 -0
  46. package/lib/handlers/Chrome74.d.ts +49 -0
  47. package/lib/handlers/Chrome74.d.ts.map +1 -0
  48. package/lib/handlers/Chrome74.js +671 -0
  49. package/lib/handlers/Edge11.d.ts +55 -0
  50. package/lib/handlers/Edge11.d.ts.map +1 -0
  51. package/lib/handlers/Edge11.js +447 -0
  52. package/lib/handlers/FakeHandler.d.ts +49 -0
  53. package/lib/handlers/FakeHandler.d.ts.map +1 -0
  54. package/lib/handlers/FakeHandler.js +276 -0
  55. package/lib/handlers/Firefox60.d.ts +48 -0
  56. package/lib/handlers/Firefox60.d.ts.map +1 -0
  57. package/lib/handlers/Firefox60.js +681 -0
  58. package/lib/handlers/HandlerInterface.d.ts +97 -0
  59. package/lib/handlers/HandlerInterface.d.ts.map +1 -0
  60. package/lib/handlers/HandlerInterface.js +10 -0
  61. package/lib/handlers/ReactNative.d.ts +51 -0
  62. package/lib/handlers/ReactNative.d.ts.map +1 -0
  63. package/lib/handlers/ReactNative.js +554 -0
  64. package/lib/handlers/ReactNativeUnifiedPlan.d.ts +49 -0
  65. package/lib/handlers/ReactNativeUnifiedPlan.d.ts.map +1 -0
  66. package/lib/handlers/ReactNativeUnifiedPlan.js +690 -0
  67. package/lib/handlers/Safari11.d.ts +51 -0
  68. package/lib/handlers/Safari11.d.ts.map +1 -0
  69. package/lib/handlers/Safari11.js +588 -0
  70. package/lib/handlers/Safari12.d.ts +49 -0
  71. package/lib/handlers/Safari12.d.ts.map +1 -0
  72. package/lib/handlers/Safari12.js +644 -0
  73. package/lib/handlers/ortc/edgeUtils.d.ts +11 -0
  74. package/lib/handlers/ortc/edgeUtils.d.ts.map +1 -0
  75. package/lib/handlers/ortc/edgeUtils.js +86 -0
  76. package/lib/handlers/ortc/utils.d.ts +6 -0
  77. package/lib/handlers/ortc/utils.d.ts.map +1 -0
  78. package/lib/handlers/ortc/utils.js +19 -0
  79. package/lib/handlers/sdp/MediaSection.d.ts +68 -0
  80. package/lib/handlers/sdp/MediaSection.d.ts.map +1 -0
  81. package/lib/handlers/sdp/MediaSection.js +588 -0
  82. package/lib/handlers/sdp/RemoteSdp.d.ts +75 -0
  83. package/lib/handlers/sdp/RemoteSdp.d.ts.map +1 -0
  84. package/lib/handlers/sdp/RemoteSdp.js +303 -0
  85. package/lib/handlers/sdp/commonUtils.d.ts +24 -0
  86. package/lib/handlers/sdp/commonUtils.d.ts.map +1 -0
  87. package/lib/handlers/sdp/commonUtils.js +224 -0
  88. package/lib/handlers/sdp/plainRtpUtils.d.ts +14 -0
  89. package/lib/handlers/sdp/plainRtpUtils.d.ts.map +1 -0
  90. package/lib/handlers/sdp/plainRtpUtils.js +33 -0
  91. package/lib/handlers/sdp/planBUtils.d.ts +14 -0
  92. package/lib/handlers/sdp/planBUtils.d.ts.map +1 -0
  93. package/lib/handlers/sdp/planBUtils.js +155 -0
  94. package/lib/handlers/sdp/unifiedPlanUtils.d.ts +12 -0
  95. package/lib/handlers/sdp/unifiedPlanUtils.d.ts.map +1 -0
  96. package/lib/handlers/sdp/unifiedPlanUtils.js +131 -0
  97. package/lib/index.d.ts +14 -1435
  98. package/lib/index.d.ts.map +1 -0
  99. package/lib/index.js +43 -11884
  100. package/lib/ortc.d.ts +123 -0
  101. package/lib/ortc.d.ts.map +1 -0
  102. package/lib/ortc.js +943 -0
  103. package/lib/scalabilityModes.d.ts +6 -0
  104. package/lib/scalabilityModes.d.ts.map +1 -0
  105. package/lib/scalabilityModes.js +20 -0
  106. package/lib/tests/fakeParameters.d.ts +20 -0
  107. package/lib/tests/fakeParameters.d.ts.map +1 -0
  108. package/lib/tests/fakeParameters.js +659 -0
  109. package/lib/tests/test.d.ts +6 -0
  110. package/lib/tests/test.d.ts.map +1 -0
  111. package/lib/tests/test.js +1287 -0
  112. package/lib/tests/uaTestCases.d.ts +9 -0
  113. package/lib/tests/uaTestCases.d.ts.map +1 -0
  114. package/lib/tests/uaTestCases.js +85 -0
  115. package/lib/types.d.ts +15 -0
  116. package/lib/types.d.ts.map +1 -0
  117. package/lib/types.js +26 -0
  118. package/lib/utils.d.ts +9 -0
  119. package/lib/utils.d.ts.map +1 -0
  120. package/lib/utils.js +20 -0
  121. package/npm-scripts.mjs +2 -3
  122. package/package.json +1 -6
  123. package/lib/index.js.map +0 -1
  124. package/lib/index.mjs +0 -11860
  125. package/lib/index.mjs.map +0 -1
@@ -0,0 +1,659 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.generateDataConsumerRemoteParameters = exports.generateDataProducerRemoteParameters = exports.generateConsumerRemoteParameters = exports.generateProducerRemoteParameters = exports.generateTransportRemoteParameters = exports.generateLocalDtlsParameters = exports.generateNativeSctpCapabilities = exports.generateNativeRtpCapabilities = exports.generateRouterRtpCapabilities = void 0;
27
+ const utils = __importStar(require("../utils"));
28
+ function generateFakeUuid() {
29
+ return String(utils.generateRandomNumber());
30
+ }
31
+ function generateRouterRtpCapabilities() {
32
+ return {
33
+ codecs: [
34
+ {
35
+ mimeType: 'audio/opus',
36
+ kind: 'audio',
37
+ preferredPayloadType: 100,
38
+ clockRate: 48000,
39
+ channels: 2,
40
+ rtcpFeedback: [
41
+ { type: 'transport-cc' }
42
+ ],
43
+ parameters: {
44
+ useinbandfec: 1,
45
+ foo: 'bar'
46
+ }
47
+ },
48
+ {
49
+ mimeType: 'video/VP8',
50
+ kind: 'video',
51
+ preferredPayloadType: 101,
52
+ clockRate: 90000,
53
+ rtcpFeedback: [
54
+ { type: 'nack' },
55
+ { type: 'nack', parameter: 'pli' },
56
+ { type: 'ccm', parameter: 'fir' },
57
+ { type: 'goog-remb' },
58
+ { type: 'transport-cc' }
59
+ ],
60
+ parameters: {
61
+ 'x-google-start-bitrate': 1500
62
+ }
63
+ },
64
+ {
65
+ mimeType: 'video/rtx',
66
+ kind: 'video',
67
+ preferredPayloadType: 102,
68
+ clockRate: 90000,
69
+ rtcpFeedback: [],
70
+ parameters: {
71
+ apt: 101
72
+ }
73
+ },
74
+ {
75
+ mimeType: 'video/H264',
76
+ kind: 'video',
77
+ preferredPayloadType: 103,
78
+ clockRate: 90000,
79
+ rtcpFeedback: [
80
+ { type: 'nack' },
81
+ { type: 'nack', parameter: 'pli' },
82
+ { type: 'ccm', parameter: 'fir' },
83
+ { type: 'goog-remb' },
84
+ { type: 'transport-cc' }
85
+ ],
86
+ parameters: {
87
+ 'level-asymmetry-allowed': 1,
88
+ 'packetization-mode': 1,
89
+ 'profile-level-id': '42e01f'
90
+ }
91
+ },
92
+ {
93
+ mimeType: 'video/rtx',
94
+ kind: 'video',
95
+ preferredPayloadType: 104,
96
+ clockRate: 90000,
97
+ rtcpFeedback: [],
98
+ parameters: {
99
+ apt: 103
100
+ }
101
+ }
102
+ ],
103
+ headerExtensions: [
104
+ {
105
+ kind: 'audio',
106
+ uri: 'urn:ietf:params:rtp-hdrext:sdes:mid',
107
+ preferredId: 1,
108
+ preferredEncrypt: false,
109
+ direction: 'sendrecv'
110
+ },
111
+ {
112
+ kind: 'video',
113
+ uri: 'urn:ietf:params:rtp-hdrext:sdes:mid',
114
+ preferredId: 1,
115
+ preferredEncrypt: false,
116
+ direction: 'sendrecv'
117
+ },
118
+ {
119
+ kind: 'video',
120
+ uri: 'urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id',
121
+ preferredId: 2,
122
+ preferredEncrypt: false,
123
+ direction: 'recvonly'
124
+ },
125
+ {
126
+ kind: 'video',
127
+ uri: 'urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id',
128
+ preferredId: 3,
129
+ preferredEncrypt: false,
130
+ direction: 'recvonly'
131
+ },
132
+ {
133
+ kind: 'audio',
134
+ uri: 'http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time',
135
+ preferredId: 4,
136
+ preferredEncrypt: false,
137
+ direction: 'sendrecv'
138
+ },
139
+ {
140
+ kind: 'video',
141
+ uri: 'http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time',
142
+ preferredId: 4,
143
+ preferredEncrypt: false,
144
+ direction: 'sendrecv'
145
+ },
146
+ {
147
+ kind: 'audio',
148
+ uri: 'http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01',
149
+ preferredId: 5,
150
+ preferredEncrypt: false,
151
+ direction: 'recvonly'
152
+ },
153
+ {
154
+ kind: 'video',
155
+ uri: 'http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01',
156
+ preferredId: 5,
157
+ preferredEncrypt: false,
158
+ direction: 'sendrecv'
159
+ },
160
+ {
161
+ kind: 'video',
162
+ uri: 'http://tools.ietf.org/html/draft-ietf-avtext-framemarking-07',
163
+ preferredId: 6,
164
+ preferredEncrypt: false,
165
+ direction: 'sendrecv'
166
+ },
167
+ {
168
+ kind: 'video',
169
+ uri: 'urn:ietf:params:rtp-hdrext:framemarking',
170
+ preferredId: 7,
171
+ preferredEncrypt: false,
172
+ direction: 'sendrecv'
173
+ },
174
+ {
175
+ kind: 'audio',
176
+ uri: 'urn:ietf:params:rtp-hdrext:ssrc-audio-level',
177
+ preferredId: 10,
178
+ preferredEncrypt: false,
179
+ direction: 'sendrecv'
180
+ },
181
+ {
182
+ kind: 'video',
183
+ uri: 'urn:3gpp:video-orientation',
184
+ preferredId: 11,
185
+ preferredEncrypt: false,
186
+ direction: 'sendrecv'
187
+ },
188
+ {
189
+ kind: 'video',
190
+ uri: 'urn:ietf:params:rtp-hdrext:toffset',
191
+ preferredId: 12,
192
+ preferredEncrypt: false,
193
+ direction: 'sendrecv'
194
+ }
195
+ ]
196
+ };
197
+ }
198
+ exports.generateRouterRtpCapabilities = generateRouterRtpCapabilities;
199
+ function generateNativeRtpCapabilities() {
200
+ return {
201
+ codecs: [
202
+ {
203
+ mimeType: 'audio/opus',
204
+ kind: 'audio',
205
+ preferredPayloadType: 111,
206
+ clockRate: 48000,
207
+ channels: 2,
208
+ rtcpFeedback: [
209
+ { type: 'transport-cc' }
210
+ ],
211
+ parameters: {
212
+ minptime: 10,
213
+ useinbandfec: 1
214
+ }
215
+ },
216
+ {
217
+ mimeType: 'audio/ISAC',
218
+ kind: 'audio',
219
+ preferredPayloadType: 103,
220
+ clockRate: 16000,
221
+ channels: 1,
222
+ rtcpFeedback: [
223
+ { type: 'transport-cc' }
224
+ ],
225
+ parameters: {}
226
+ },
227
+ {
228
+ mimeType: 'audio/CN',
229
+ kind: 'audio',
230
+ preferredPayloadType: 106,
231
+ clockRate: 32000,
232
+ channels: 1,
233
+ rtcpFeedback: [
234
+ { type: 'transport-cc' }
235
+ ],
236
+ parameters: {}
237
+ },
238
+ {
239
+ mimeType: 'video/VP8',
240
+ kind: 'video',
241
+ preferredPayloadType: 96,
242
+ clockRate: 90000,
243
+ rtcpFeedback: [
244
+ { type: 'goog-remb' },
245
+ { type: 'transport-cc' },
246
+ { type: 'ccm', parameter: 'fir' },
247
+ { type: 'nack' },
248
+ { type: 'nack', parameter: 'pli' }
249
+ ],
250
+ parameters: {
251
+ baz: '1234abcd'
252
+ }
253
+ },
254
+ {
255
+ mimeType: 'video/rtx',
256
+ kind: 'video',
257
+ preferredPayloadType: 97,
258
+ clockRate: 90000,
259
+ rtcpFeedback: [],
260
+ parameters: {
261
+ apt: 96
262
+ }
263
+ }
264
+ ],
265
+ headerExtensions: [
266
+ {
267
+ kind: 'audio',
268
+ uri: 'urn:ietf:params:rtp-hdrext:sdes:mid',
269
+ preferredId: 1
270
+ },
271
+ {
272
+ kind: 'video',
273
+ uri: 'urn:ietf:params:rtp-hdrext:sdes:mid',
274
+ preferredId: 1
275
+ },
276
+ {
277
+ kind: 'video',
278
+ uri: 'urn:ietf:params:rtp-hdrext:toffset',
279
+ preferredId: 2
280
+ },
281
+ {
282
+ kind: 'video',
283
+ uri: 'http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time',
284
+ preferredId: 3
285
+ },
286
+ {
287
+ kind: 'video',
288
+ uri: 'urn:3gpp:video-orientation',
289
+ preferredId: 4
290
+ },
291
+ {
292
+ kind: 'video',
293
+ uri: 'http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01',
294
+ preferredId: 5
295
+ },
296
+ {
297
+ kind: 'video',
298
+ uri: 'http://www.webrtc.org/experiments/rtp-hdrext/playout-delay',
299
+ preferredId: 6
300
+ },
301
+ {
302
+ kind: 'video',
303
+ uri: 'http://www.webrtc.org/experiments/rtp-hdrext/video-content-type',
304
+ preferredId: 7
305
+ },
306
+ {
307
+ kind: 'video',
308
+ uri: 'http://www.webrtc.org/experiments/rtp-hdrext/video-timing',
309
+ preferredId: 8
310
+ },
311
+ {
312
+ kind: 'audio',
313
+ uri: 'urn:ietf:params:rtp-hdrext:ssrc-audio-level',
314
+ preferredId: 10
315
+ }
316
+ ]
317
+ };
318
+ }
319
+ exports.generateNativeRtpCapabilities = generateNativeRtpCapabilities;
320
+ function generateNativeSctpCapabilities() {
321
+ return {
322
+ numStreams: { OS: 2048, MIS: 2048 }
323
+ };
324
+ }
325
+ exports.generateNativeSctpCapabilities = generateNativeSctpCapabilities;
326
+ function generateLocalDtlsParameters() {
327
+ return {
328
+ fingerprints: [
329
+ {
330
+ algorithm: 'sha-256',
331
+ value: '82:5A:68:3D:36:C3:0A:DE:AF:E7:32:43:D2:88:83:57:AC:2D:65:E5:80:C4:B6:FB:AF:1A:A0:21:9F:6D:0C:AD'
332
+ }
333
+ ],
334
+ role: 'auto'
335
+ };
336
+ }
337
+ exports.generateLocalDtlsParameters = generateLocalDtlsParameters;
338
+ function generateTransportRemoteParameters() {
339
+ return {
340
+ id: generateFakeUuid(),
341
+ iceParameters: {
342
+ iceLite: true,
343
+ password: 'yku5ej8nvfaor28lvtrabcx0wkrpkztz',
344
+ usernameFragment: 'h3hk1iz6qqlnqlne'
345
+ },
346
+ iceCandidates: [
347
+ {
348
+ foundation: 'udpcandidate',
349
+ ip: '9.9.9.9',
350
+ port: 40533,
351
+ priority: 1078862079,
352
+ protocol: 'udp',
353
+ type: 'host',
354
+ tcpType: 'passive'
355
+ },
356
+ {
357
+ foundation: 'udpcandidate',
358
+ ip: '9:9:9:9:9:9',
359
+ port: 41333,
360
+ priority: 1078862089,
361
+ protocol: 'udp',
362
+ type: 'host',
363
+ tcpType: 'passive'
364
+ }
365
+ ],
366
+ dtlsParameters: {
367
+ fingerprints: [
368
+ {
369
+ algorithm: 'sha-256',
370
+ value: 'A9:F4:E0:D2:74:D3:0F:D9:CA:A5:2F:9F:7F:47:FA:F0:C4:72:DD:73:49:D0:3B:14:90:20:51:30:1B:90:8E:71'
371
+ },
372
+ {
373
+ algorithm: 'sha-384',
374
+ value: '03:D9:0B:87:13:98:F6:6D:BC:FC:92:2E:39:D4:E1:97:32:61:30:56:84:70:81:6E:D1:82:97:EA:D9:C1:21:0F:6B:C5:E7:7F:E1:97:0C:17:97:6E:CF:B3:EF:2E:74:B0'
375
+ },
376
+ {
377
+ algorithm: 'sha-512',
378
+ value: '84:27:A4:28:A4:73:AF:43:02:2A:44:68:FF:2F:29:5C:3B:11:9A:60:F4:A8:F0:F5:AC:A0:E3:49:3E:B1:34:53:A9:85:CE:51:9B:ED:87:5E:B8:F4:8E:3D:FA:20:51:B8:96:EE:DA:56:DC:2F:5C:62:79:15:23:E0:21:82:2B:2C'
379
+ }
380
+ ],
381
+ role: 'auto'
382
+ },
383
+ sctpParameters: {
384
+ port: 5000,
385
+ OS: 2048,
386
+ MIS: 2048,
387
+ maxMessageSize: 2000000
388
+ }
389
+ };
390
+ }
391
+ exports.generateTransportRemoteParameters = generateTransportRemoteParameters;
392
+ function generateProducerRemoteParameters() {
393
+ return {
394
+ id: generateFakeUuid()
395
+ };
396
+ }
397
+ exports.generateProducerRemoteParameters = generateProducerRemoteParameters;
398
+ function generateConsumerRemoteParameters({ id, codecMimeType } = {}) {
399
+ switch (codecMimeType) {
400
+ case 'audio/opus':
401
+ {
402
+ return {
403
+ id: id || generateFakeUuid(),
404
+ producerId: generateFakeUuid(),
405
+ kind: 'audio',
406
+ rtpParameters: {
407
+ codecs: [
408
+ {
409
+ mimeType: 'audio/opus',
410
+ payloadType: 100,
411
+ clockRate: 48000,
412
+ channels: 2,
413
+ rtcpFeedback: [
414
+ { type: 'transport-cc' }
415
+ ],
416
+ parameters: {
417
+ useinbandfec: 1,
418
+ foo: 'bar'
419
+ }
420
+ }
421
+ ],
422
+ encodings: [
423
+ {
424
+ ssrc: 46687003
425
+ }
426
+ ],
427
+ headerExtensions: [
428
+ {
429
+ uri: 'urn:ietf:params:rtp-hdrext:sdes:mid',
430
+ id: 1
431
+ },
432
+ {
433
+ uri: 'http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01',
434
+ id: 5
435
+ },
436
+ {
437
+ uri: 'urn:ietf:params:rtp-hdrext:ssrc-audio-level',
438
+ id: 10
439
+ }
440
+ ],
441
+ rtcp: {
442
+ cname: 'wB4Ql4lrsxYLjzuN',
443
+ reducedSize: true,
444
+ mux: true
445
+ }
446
+ }
447
+ };
448
+ }
449
+ case 'audio/ISAC':
450
+ {
451
+ return {
452
+ id: id || generateFakeUuid(),
453
+ producerId: generateFakeUuid(),
454
+ kind: 'audio',
455
+ rtpParameters: {
456
+ codecs: [
457
+ {
458
+ mimeType: 'audio/ISAC',
459
+ payloadType: 111,
460
+ clockRate: 16000,
461
+ channels: 1,
462
+ rtcpFeedback: [
463
+ { type: 'transport-cc' }
464
+ ],
465
+ parameters: {}
466
+ }
467
+ ],
468
+ encodings: [
469
+ {
470
+ ssrc: 46687004
471
+ }
472
+ ],
473
+ headerExtensions: [
474
+ {
475
+ uri: 'urn:ietf:params:rtp-hdrext:sdes:mid',
476
+ id: 1
477
+ },
478
+ {
479
+ uri: 'http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01',
480
+ id: 5
481
+ }
482
+ ],
483
+ rtcp: {
484
+ cname: 'wB4Ql4lrsxYLjzuN',
485
+ reducedSize: true,
486
+ mux: true
487
+ }
488
+ }
489
+ };
490
+ }
491
+ case 'video/VP8':
492
+ {
493
+ return {
494
+ id: id || generateFakeUuid(),
495
+ producerId: generateFakeUuid(),
496
+ kind: 'video',
497
+ rtpParameters: {
498
+ codecs: [
499
+ {
500
+ mimeType: 'video/VP8',
501
+ payloadType: 101,
502
+ clockRate: 90000,
503
+ rtcpFeedback: [
504
+ { type: 'nack' },
505
+ { type: 'nack', parameter: 'pli' },
506
+ { type: 'ccm', parameter: 'fir' },
507
+ { type: 'goog-remb' },
508
+ { type: 'transport-cc' }
509
+ ],
510
+ parameters: {
511
+ 'x-google-start-bitrate': 1500
512
+ }
513
+ },
514
+ {
515
+ mimeType: 'video/rtx',
516
+ payloadType: 102,
517
+ clockRate: 90000,
518
+ rtcpFeedback: [],
519
+ parameters: {
520
+ apt: 101
521
+ }
522
+ }
523
+ ],
524
+ encodings: [
525
+ {
526
+ ssrc: 99991111,
527
+ rtx: {
528
+ ssrc: 99991112
529
+ }
530
+ }
531
+ ],
532
+ headerExtensions: [
533
+ {
534
+ uri: 'urn:ietf:params:rtp-hdrext:sdes:mid',
535
+ id: 1
536
+ },
537
+ {
538
+ uri: 'http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time',
539
+ id: 4
540
+ },
541
+ {
542
+ uri: 'http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01',
543
+ id: 5
544
+ },
545
+ {
546
+ uri: 'urn:3gpp:video-orientation',
547
+ id: 11
548
+ },
549
+ {
550
+ uri: 'urn:ietf:params:rtp-hdrext:toffset',
551
+ id: 12
552
+ }
553
+ ],
554
+ rtcp: {
555
+ cname: 'wB4Ql4lrsxYLjzuN',
556
+ reducedSize: true,
557
+ mux: true
558
+ }
559
+ }
560
+ };
561
+ }
562
+ case 'video/H264':
563
+ {
564
+ return {
565
+ id: id || generateFakeUuid(),
566
+ producerId: generateFakeUuid(),
567
+ kind: 'video',
568
+ rtpParameters: {
569
+ codecs: [
570
+ {
571
+ mimeType: 'video/H264',
572
+ payloadType: 103,
573
+ clockRate: 90000,
574
+ rtcpFeedback: [
575
+ { type: 'nack' },
576
+ { type: 'nack', parameter: 'pli' },
577
+ { type: 'ccm', parameter: 'fir' },
578
+ { type: 'goog-remb' },
579
+ { type: 'transport-cc' }
580
+ ],
581
+ parameters: {
582
+ 'level-asymmetry-allowed': 1,
583
+ 'packetization-mode': 1,
584
+ 'profile-level-id': '42e01f'
585
+ }
586
+ },
587
+ {
588
+ mimeType: 'video/rtx',
589
+ payloadType: 104,
590
+ clockRate: 90000,
591
+ rtcpFeedback: [],
592
+ parameters: {
593
+ apt: 103
594
+ }
595
+ }
596
+ ],
597
+ encodings: [
598
+ {
599
+ ssrc: 99991113,
600
+ rtx: {
601
+ ssrc: 99991114
602
+ }
603
+ }
604
+ ],
605
+ headerExtensions: [
606
+ {
607
+ uri: 'urn:ietf:params:rtp-hdrext:sdes:mid',
608
+ id: 1
609
+ },
610
+ {
611
+ uri: 'http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time',
612
+ id: 4
613
+ },
614
+ {
615
+ uri: 'http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01',
616
+ id: 5
617
+ },
618
+ {
619
+ uri: 'urn:3gpp:video-orientation',
620
+ id: 11
621
+ },
622
+ {
623
+ uri: 'urn:ietf:params:rtp-hdrext:toffset',
624
+ id: 12
625
+ }
626
+ ],
627
+ rtcp: {
628
+ cname: 'wB4Ql4lrsxYLjzuN',
629
+ reducedSize: true,
630
+ mux: true
631
+ }
632
+ }
633
+ };
634
+ }
635
+ default:
636
+ {
637
+ throw new TypeError(`unknown codecMimeType "${codecMimeType}"`);
638
+ }
639
+ }
640
+ }
641
+ exports.generateConsumerRemoteParameters = generateConsumerRemoteParameters;
642
+ function generateDataProducerRemoteParameters() {
643
+ return {
644
+ id: generateFakeUuid()
645
+ };
646
+ }
647
+ exports.generateDataProducerRemoteParameters = generateDataProducerRemoteParameters;
648
+ function generateDataConsumerRemoteParameters({ id } = {}) {
649
+ return {
650
+ id: id || generateFakeUuid(),
651
+ dataProducerId: generateFakeUuid(),
652
+ sctpStreamParameters: {
653
+ streamId: 666,
654
+ maxPacketLifeTime: 5000,
655
+ maxRetransmits: undefined
656
+ }
657
+ };
658
+ }
659
+ exports.generateDataConsumerRemoteParameters = generateDataConsumerRemoteParameters;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * This test runs in Node so no browser auto-detection is done. Instead, a
3
+ * FakeHandler device is used.
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../../src/tests/test.ts"],"names":[],"mappings":"AAAA;;;GAGG"}