@whereby.com/media 1.29.0 → 1.31.0

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/LICENCE.md ADDED
@@ -0,0 +1,23 @@
1
+ ## MIT License
2
+
3
+ Copyright (c) 2024 Whereby AS (https://www.whereby.com)
4
+ Permission is hereby granted, free of charge, to any person
5
+ obtaining a copy of this software and associated documentation
6
+ files (the "Software"), to deal in the Software without
7
+ restriction, including without limitation the rights to use,
8
+ copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the
10
+ Software is furnished to do so, subject to the following
11
+ conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
18
+ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
20
+ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
21
+ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
22
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
23
+ OTHER DEALINGS IN THE SOFTWARE.
package/dist/index.cjs CHANGED
@@ -115,7 +115,7 @@ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
115
115
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
116
116
  PERFORMANCE OF THIS SOFTWARE.
117
117
  ***************************************************************************** */
118
- /* global Reflect, Promise, SuppressedError, Symbol */
118
+ /* global Reflect, Promise, SuppressedError, Symbol, Iterator */
119
119
 
120
120
 
121
121
  function __awaiter(thisArg, _arguments, P, generator) {
@@ -622,8 +622,8 @@ const removeNonUpdatedStats = (statsByView, time) => {
622
622
  }
623
623
  });
624
624
  };
625
- function collectStats(state, { logger, interval }, immediate) {
626
- return __awaiter(this, void 0, void 0, function* () {
625
+ function collectStats(state_1, _a, immediate_1) {
626
+ return __awaiter(this, arguments, void 0, function* (state, { logger, interval }, immediate) {
627
627
  const collectStatsBound = collectStats.bind(null, state, { interval, logger });
628
628
  try {
629
629
  const clients = state.getClients();
@@ -1062,32 +1062,6 @@ function addAbsCaptureTimeExtMap(sdp) {
1062
1062
  return addExtMap(sdp, absCaptureTimeUri, true, true);
1063
1063
  }
1064
1064
 
1065
- function isRelayed(pc) {
1066
- return pc.getStats(null).then((result) => {
1067
- let localCandidateType;
1068
- let remoteCandidateType;
1069
- result.forEach((report) => {
1070
- if (report.type === "transport" && report.selectedCandidatePairId) {
1071
- const transport = result.get(report.selectedCandidatePairId);
1072
- if (!transport) {
1073
- return;
1074
- }
1075
- localCandidateType = result.get(transport.localCandidateId).candidateType;
1076
- remoteCandidateType = result.get(transport.remoteCandidateId).candidateType;
1077
- return;
1078
- }
1079
- if (report.type === "candidate-pair" && report.selected) {
1080
- localCandidateType = result.get(report.localCandidateId).candidateType;
1081
- remoteCandidateType = result.get(report.remoteCandidateId).candidateType;
1082
- }
1083
- });
1084
- return (localCandidateType === "relay" ||
1085
- localCandidateType === "relayed" ||
1086
- remoteCandidateType === "relay" ||
1087
- remoteCandidateType === "relayed");
1088
- });
1089
- }
1090
-
1091
1065
  function setVideoBandwidthUsingSetParameters(pc, bandwidth, logger = console) {
1092
1066
  const sender = pc.getSenders().find((s) => s.track && s.track.kind === "video");
1093
1067
  if (!sender) {
@@ -1111,15 +1085,11 @@ function setVideoBandwidthUsingSetParameters(pc, bandwidth, logger = console) {
1111
1085
  });
1112
1086
  }
1113
1087
 
1114
- const MAXIMUM_TURN_BANDWIDTH = 1280;
1115
- const MAXIMUM_TURN_BANDWIDTH_UNLIMITED = -1;
1116
- const MEDIA_JITTER_BUFFER_TARGET = 400;
1117
-
1118
1088
  var _a$5;
1119
1089
  const adapter$5 = (_a$5 = adapterRaw.default) !== null && _a$5 !== void 0 ? _a$5 : adapterRaw;
1120
1090
  const logger$a = new Logger();
1121
1091
  class Session {
1122
- constructor({ peerConnectionId, bandwidth, maximumTurnBandwidth, deprioritizeH264Encoding, }) {
1092
+ constructor({ peerConnectionId, bandwidth, deprioritizeH264Encoding, }) {
1123
1093
  this.peerConnectionId = peerConnectionId;
1124
1094
  this.relayCandidateSeen = false;
1125
1095
  this.serverReflexiveCandidateSeen = false;
@@ -1136,7 +1106,6 @@ class Session {
1136
1106
  totalRecv: 0,
1137
1107
  };
1138
1108
  this.bandwidth = bandwidth || 0;
1139
- this.maximumTurnBandwidth = maximumTurnBandwidth;
1140
1109
  this.pending = [];
1141
1110
  this.isOperationPending = false;
1142
1111
  this.streamIds = [];
@@ -1396,19 +1365,6 @@ class Session {
1396
1365
  });
1397
1366
  }
1398
1367
  }
1399
- maybeRestrictRelayBandwidth() {
1400
- if (this.maximumTurnBandwidth === MAXIMUM_TURN_BANDWIDTH_UNLIMITED) {
1401
- return;
1402
- }
1403
- if (!this.pc.getStats) {
1404
- return;
1405
- }
1406
- isRelayed(this.pc).then((isRelayed) => {
1407
- if (isRelayed && this.bandwidth === 0) {
1408
- this.changeBandwidth(this.maximumTurnBandwidth);
1409
- }
1410
- });
1411
- }
1412
1368
  changeBandwidth(bandwidth) {
1413
1369
  if (bandwidth === this.bandwidth) {
1414
1370
  return;
@@ -1439,6 +1395,8 @@ class Session {
1439
1395
  }
1440
1396
  }
1441
1397
 
1398
+ const MEDIA_JITTER_BUFFER_TARGET = 400;
1399
+
1442
1400
  var _a$4;
1443
1401
  const adapter$4 = (_a$4 = adapterRaw.default) !== null && _a$4 !== void 0 ? _a$4 : adapterRaw;
1444
1402
  function detectMicrophoneNotWorking(pc) {
@@ -1983,9 +1941,9 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
1983
1941
  return this._pc.getStats();
1984
1942
  });
1985
1943
  }
1986
- send({ track, encodings, codecOptions, codec, onRtpSender }) {
1987
- var _a;
1988
- return __awaiter(this, void 0, void 0, function* () {
1944
+ send(_a) {
1945
+ return __awaiter(this, arguments, void 0, function* ({ track, encodings, codecOptions, codec, onRtpSender }) {
1946
+ var _b;
1989
1947
  this.assertNotClosed();
1990
1948
  this.assertSendDirection();
1991
1949
  logger$9.debug("send() [kind:%s, track.id:%s]", track.kind, track.id);
@@ -2033,7 +1991,7 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
2033
1991
  let offerMediaObject = localSdpObject.media[mediaSectionIdx.idx];
2034
1992
  if (!this._transportReady) {
2035
1993
  yield this.setupTransport({
2036
- localDtlsRole: (_a = this._forcedLocalDtlsRole) !== null && _a !== void 0 ? _a : "client",
1994
+ localDtlsRole: (_b = this._forcedLocalDtlsRole) !== null && _b !== void 0 ? _b : "client",
2037
1995
  localSdpObject,
2038
1996
  });
2039
1997
  }
@@ -2209,9 +2167,9 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
2209
2167
  return transceiver.sender.getStats();
2210
2168
  });
2211
2169
  }
2212
- sendDataChannel({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol, }) {
2213
- var _a;
2214
- return __awaiter(this, void 0, void 0, function* () {
2170
+ sendDataChannel(_a) {
2171
+ return __awaiter(this, arguments, void 0, function* ({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol, }) {
2172
+ var _b;
2215
2173
  this.assertNotClosed();
2216
2174
  this.assertSendDirection();
2217
2175
  const options = {
@@ -2231,7 +2189,7 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
2231
2189
  const offerMediaObject = localSdpObject.media.find((m) => m.type === "application");
2232
2190
  if (!this._transportReady) {
2233
2191
  yield this.setupTransport({
2234
- localDtlsRole: (_a = this._forcedLocalDtlsRole) !== null && _a !== void 0 ? _a : "client",
2192
+ localDtlsRole: (_b = this._forcedLocalDtlsRole) !== null && _b !== void 0 ? _b : "client",
2235
2193
  localSdpObject,
2236
2194
  });
2237
2195
  }
@@ -2253,8 +2211,8 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
2253
2211
  });
2254
2212
  }
2255
2213
  receive(optionsList) {
2256
- var _a, _b;
2257
2214
  return __awaiter(this, void 0, void 0, function* () {
2215
+ var _a, _b;
2258
2216
  this.assertNotClosed();
2259
2217
  this.assertRecvDirection();
2260
2218
  const results = [];
@@ -2401,9 +2359,9 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
2401
2359
  return transceiver.receiver.getStats();
2402
2360
  });
2403
2361
  }
2404
- receiveDataChannel({ sctpStreamParameters, label, protocol, }) {
2405
- var _a;
2406
- return __awaiter(this, void 0, void 0, function* () {
2362
+ receiveDataChannel(_a) {
2363
+ return __awaiter(this, arguments, void 0, function* ({ sctpStreamParameters, label, protocol, }) {
2364
+ var _b;
2407
2365
  this.assertNotClosed();
2408
2366
  this.assertRecvDirection();
2409
2367
  const { streamId, ordered, maxPacketLifeTime, maxRetransmits } = sctpStreamParameters;
@@ -2426,7 +2384,7 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
2426
2384
  if (!this._transportReady) {
2427
2385
  const localSdpObject = sdpTransform__namespace.parse(answer.sdp);
2428
2386
  yield this.setupTransport({
2429
- localDtlsRole: (_a = this._forcedLocalDtlsRole) !== null && _a !== void 0 ? _a : "client",
2387
+ localDtlsRole: (_b = this._forcedLocalDtlsRole) !== null && _b !== void 0 ? _b : "client",
2430
2388
  localSdpObject,
2431
2389
  });
2432
2390
  }
@@ -2437,8 +2395,8 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
2437
2395
  return { dataChannel };
2438
2396
  });
2439
2397
  }
2440
- setupTransport({ localDtlsRole, localSdpObject, }) {
2441
- return __awaiter(this, void 0, void 0, function* () {
2398
+ setupTransport(_a) {
2399
+ return __awaiter(this, arguments, void 0, function* ({ localDtlsRole, localSdpObject, }) {
2442
2400
  if (!localSdpObject) {
2443
2401
  localSdpObject = sdpTransform__namespace.parse(this._pc.localDescription.sdp);
2444
2402
  }
@@ -2747,8 +2705,8 @@ class ReconnectManager extends EventEmitter {
2747
2705
  socket.on(PROTOCOL_RESPONSES.SCREENSHARE_STOPPED, (payload) => this._onScreenshareChanged(payload, false));
2748
2706
  }
2749
2707
  _onRoomJoined(payload) {
2750
- var _a;
2751
2708
  return __awaiter(this, void 0, void 0, function* () {
2709
+ var _a;
2752
2710
  this.reconnectThresholdInMs = (payload.disconnectTimeout || 0) * 0.8;
2753
2711
  if (payload === null || payload === void 0 ? void 0 : payload.error) {
2754
2712
  this.emit(PROTOCOL_RESPONSES.ROOM_JOINED, payload);
@@ -3257,9 +3215,6 @@ class P2pRtcManager {
3257
3215
  supportsScreenShareAudio() {
3258
3216
  return true;
3259
3217
  }
3260
- maybeRestrictRelayBandwidth(session) {
3261
- session.maybeRestrictRelayBandwidth();
3262
- }
3263
3218
  addNewStream(streamId, stream, audioPaused, videoPaused, beforeEffectTracks = []) {
3264
3219
  if (stream === this.localStreams[streamId]) {
3265
3220
  return;
@@ -3530,9 +3485,6 @@ class P2pRtcManager {
3530
3485
  this.peerConnections[peerConnectionId] = session = new Session({
3531
3486
  peerConnectionId,
3532
3487
  bandwidth: initialBandwidth,
3533
- maximumTurnBandwidth: this._features.unlimitedBandwidthWhenUsingRelayP2POn
3534
- ? MAXIMUM_TURN_BANDWIDTH_UNLIMITED
3535
- : MAXIMUM_TURN_BANDWIDTH,
3536
3488
  deprioritizeH264Encoding,
3537
3489
  });
3538
3490
  this.totalSessionsCreated++;
@@ -3637,9 +3589,6 @@ class P2pRtcManager {
3637
3589
  (pc.iceConnectionState.match(/connected|completed/) ||
3638
3590
  (browserName$1 === "chrome" && pc.localDescription && pc.localDescription.type === "answer"))) {
3639
3591
  session.wasEverConnected = true;
3640
- if (this._features.bandwidth !== "false") {
3641
- this.maybeRestrictRelayBandwidth(session);
3642
- }
3643
3592
  }
3644
3593
  if (this._isAudioOnlyMode) {
3645
3594
  session.setAudioOnly(true, this._screenshareVideoTrackIds);
@@ -5242,8 +5191,8 @@ class VegaRtcManager {
5242
5191
  this._emitToPWA(rtcManagerEvents.SFU_CONNECTION_CLOSED);
5243
5192
  }
5244
5193
  _join() {
5245
- var _a, _b;
5246
5194
  return __awaiter(this, void 0, void 0, function* () {
5195
+ var _a, _b;
5247
5196
  logger$3.info("join()");
5248
5197
  this._emitToPWA(rtcManagerEvents.SFU_CONNECTION_OPEN);
5249
5198
  try {
@@ -5276,8 +5225,8 @@ class VegaRtcManager {
5276
5225
  });
5277
5226
  }
5278
5227
  _createTransport(send) {
5279
- var _a;
5280
5228
  return __awaiter(this, void 0, void 0, function* () {
5229
+ var _a;
5281
5230
  const creator = send ? "createSendTransport" : "createRecvTransport";
5282
5231
  const transportOptions = yield this._vegaConnection.request("createTransport", {
5283
5232
  producing: send,
@@ -5332,7 +5281,7 @@ class VegaRtcManager {
5332
5281
  transport.removeListener("connectionstatechange", onConnectionStateListener);
5333
5282
  });
5334
5283
  if (send) {
5335
- transport === null || transport === void 0 ? void 0 : transport.on("produce", ({ kind, rtpParameters, appData, }, callback, errback) => __awaiter(this, void 0, void 0, function* () {
5284
+ transport === null || transport === void 0 ? void 0 : transport.on("produce", (_a, callback_1, errback_1) => __awaiter(this, [_a, callback_1, errback_1], void 0, function* ({ kind, rtpParameters, appData, }, callback, errback) {
5336
5285
  var _b;
5337
5286
  try {
5338
5287
  const { paused } = appData;
@@ -5349,10 +5298,10 @@ class VegaRtcManager {
5349
5298
  errback(error);
5350
5299
  }
5351
5300
  }));
5352
- transport === null || transport === void 0 ? void 0 : transport.on("producedata", ({ appData, sctpStreamParameters, }, callback, errback) => __awaiter(this, void 0, void 0, function* () {
5353
- var _c;
5301
+ transport === null || transport === void 0 ? void 0 : transport.on("producedata", (_a, callback_1, errback_1) => __awaiter(this, [_a, callback_1, errback_1], void 0, function* ({ appData, sctpStreamParameters, }, callback, errback) {
5302
+ var _b;
5354
5303
  try {
5355
- const { id } = yield ((_c = this._vegaConnection) === null || _c === void 0 ? void 0 : _c.request("produceData", {
5304
+ const { id } = yield ((_b = this._vegaConnection) === null || _b === void 0 ? void 0 : _b.request("produceData", {
5356
5305
  transportId: transport.id,
5357
5306
  sctpStreamParameters,
5358
5307
  appData,
@@ -5370,8 +5319,8 @@ class VegaRtcManager {
5370
5319
  }
5371
5320
  });
5372
5321
  }
5373
- _restartIce(transport, retried = 0) {
5374
- return __awaiter(this, void 0, void 0, function* () {
5322
+ _restartIce(transport_1) {
5323
+ return __awaiter(this, arguments, void 0, function* (transport, retried = 0) {
5375
5324
  if (!transport || !("closed" in transport) || !("connectionState" in transport)) {
5376
5325
  logger$3.info("_restartIce: No transport or property closed or connectionState!");
5377
5326
  return;
@@ -5525,8 +5474,8 @@ class VegaRtcManager {
5525
5474
  this._micScoreProducer = null;
5526
5475
  }
5527
5476
  _replaceMicTrack() {
5528
- var _a;
5529
5477
  return __awaiter(this, void 0, void 0, function* () {
5478
+ var _a;
5530
5479
  logger$3.info("_replaceMicTrack()");
5531
5480
  if (!this._micTrack || !this._micProducer || this._micProducer.closed)
5532
5481
  return;
@@ -5595,8 +5544,8 @@ class VegaRtcManager {
5595
5544
  }
5596
5545
  }
5597
5546
  _internalSendWebcam() {
5598
- var _a;
5599
5547
  return __awaiter(this, void 0, void 0, function* () {
5548
+ var _a;
5600
5549
  logger$3.info("_internalSendWebcam()");
5601
5550
  if (!this._sendTransport ||
5602
5551
  this._webcamProducer ||
@@ -5605,7 +5554,7 @@ class VegaRtcManager {
5605
5554
  return;
5606
5555
  }
5607
5556
  this._webcamProducerPromise = (() => __awaiter(this, void 0, void 0, function* () {
5608
- var _b;
5557
+ var _a;
5609
5558
  try {
5610
5559
  const currentPaused = this._webcamPaused;
5611
5560
  const producer = yield this._sendTransport.produce(Object.assign(Object.assign({ track: this._webcamTrack, disableTrackOnPause: false, stopTracks: false }, getMediaSettings("video", false, Object.assign(Object.assign({}, this._features), { vp9On: this._features.sfuVp9On }))), { appData: {
@@ -5627,7 +5576,7 @@ class VegaRtcManager {
5627
5576
  this._webcamProducerPromise = null;
5628
5577
  this._qualityMonitor.removeProducer(this._selfId, producer.id);
5629
5578
  });
5630
- if (this._webcamTrack && this._webcamTrack !== ((_b = this._webcamProducer) === null || _b === void 0 ? void 0 : _b.track)) {
5579
+ if (this._webcamTrack && this._webcamTrack !== ((_a = this._webcamProducer) === null || _a === void 0 ? void 0 : _a.track)) {
5631
5580
  this._webcamProducerPromise = null;
5632
5581
  this._replaceWebcamTrack();
5633
5582
  }
@@ -6229,11 +6178,11 @@ class VegaRtcManager {
6229
6178
  }
6230
6179
  });
6231
6180
  }
6232
- _onConsumerClosed({ consumerId, reason }) {
6233
- var _a;
6234
- return __awaiter(this, void 0, void 0, function* () {
6181
+ _onConsumerClosed(_a) {
6182
+ return __awaiter(this, arguments, void 0, function* ({ consumerId, reason }) {
6183
+ var _b;
6235
6184
  logger$3.info("_onConsumerClosed()", { consumerId, reason });
6236
- (_a = this._consumers.get(consumerId)) === null || _a === void 0 ? void 0 : _a.close();
6185
+ (_b = this._consumers.get(consumerId)) === null || _b === void 0 ? void 0 : _b.close();
6237
6186
  });
6238
6187
  }
6239
6188
  _onConsumerPaused({ consumerId }) {
@@ -6292,8 +6241,8 @@ class VegaRtcManager {
6292
6241
  this._syncIncomingStreamsWithPWA(clientId);
6293
6242
  });
6294
6243
  }
6295
- _onDataConsumerClosed({ dataConsumerId, reason }) {
6296
- return __awaiter(this, void 0, void 0, function* () {
6244
+ _onDataConsumerClosed(_a) {
6245
+ return __awaiter(this, arguments, void 0, function* ({ dataConsumerId, reason }) {
6297
6246
  logger$3.info("_onDataConsumerClosed()", { dataConsumerId, reason });
6298
6247
  const consumer = this._dataConsumers.get(dataConsumerId);
6299
6248
  consumer === null || consumer === void 0 ? void 0 : consumer.close();
@@ -6695,6 +6644,16 @@ const issueDetectors = [
6695
6644
  },
6696
6645
  noTrackStatsIssueDetector,
6697
6646
  dryTrackIssueDetector,
6647
+ {
6648
+ id: "denoiser-context-suspended",
6649
+ enabled: ({ client, kind }) => { var _a, _b; return client.isLocalClient && kind === "audio" && !!((_b = (_a = client.audio) === null || _a === void 0 ? void 0 : _a.track) === null || _b === void 0 ? void 0 : _b._denoiserCtx); },
6650
+ check: ({ track }) => {
6651
+ var _a;
6652
+ if (!track || !("_denoiserCtx" in track))
6653
+ return false;
6654
+ return ((_a = track._denoiserCtx) === null || _a === void 0 ? void 0 : _a.state) === "suspended";
6655
+ },
6656
+ },
6698
6657
  {
6699
6658
  id: "low-layer0-bitrate",
6700
6659
  enabled: ({ hasLiveTrack, ssrc0, kind, client }) => hasLiveTrack && kind === "video" && !!ssrc0 && !!(ssrc0 === null || ssrc0 === void 0 ? void 0 : ssrc0.height) && !client.isPresentation,
@@ -7333,8 +7292,8 @@ class BandwidthTester extends EventEmitter {
7333
7292
  this.emit("close");
7334
7293
  }
7335
7294
  _start() {
7336
- var _a, _b;
7337
7295
  return __awaiter(this, void 0, void 0, function* () {
7296
+ var _a, _b;
7338
7297
  logger$1.info("_start()");
7339
7298
  this._connectTime = Date.now() - this._startTime;
7340
7299
  if (this._connectTime > 5000) {
@@ -7386,8 +7345,8 @@ class BandwidthTester extends EventEmitter {
7386
7345
  });
7387
7346
  }
7388
7347
  _createTransport(send) {
7389
- var _a;
7390
7348
  return __awaiter(this, void 0, void 0, function* () {
7349
+ var _a;
7391
7350
  const creator = send ? "createSendTransport" : "createRecvTransport";
7392
7351
  const transportOptions = yield this._vegaConnection.request("createTransport", {
7393
7352
  producing: send,
@@ -7406,7 +7365,7 @@ class BandwidthTester extends EventEmitter {
7406
7365
  callback();
7407
7366
  });
7408
7367
  if (send) {
7409
- transport === null || transport === void 0 ? void 0 : transport.on("produce", ({ kind, rtpParameters, appData }, callback, errback) => __awaiter(this, void 0, void 0, function* () {
7368
+ transport === null || transport === void 0 ? void 0 : transport.on("produce", (_a, callback_1, errback_1) => __awaiter(this, [_a, callback_1, errback_1], void 0, function* ({ kind, rtpParameters, appData }, callback, errback) {
7410
7369
  try {
7411
7370
  const { paused } = appData;
7412
7371
  const { id } = yield this._vegaConnection.request("produce", {
@@ -7795,9 +7754,9 @@ function replaceTracksInStream(stream, newStream, only) {
7795
7754
  });
7796
7755
  return replacedTracks;
7797
7756
  }
7798
- function getStream(constraintOpt, { replaceStream, fallback = true } = {}) {
7799
- var _a;
7800
- return __awaiter(this, void 0, void 0, function* () {
7757
+ function getStream(constraintOpt_1) {
7758
+ return __awaiter(this, arguments, void 0, function* (constraintOpt, { replaceStream, fallback = true } = {}) {
7759
+ var _a;
7801
7760
  let error;
7802
7761
  let newConstraints;
7803
7762
  let retryConstraintOpt;
@@ -8021,8 +7980,6 @@ exports.EVENTS = EVENTS;
8021
7980
  exports.KNOCK_MESSAGES = KNOCK_MESSAGES;
8022
7981
  exports.KalmanFilter = KalmanFilter;
8023
7982
  exports.Logger = Logger;
8024
- exports.MAXIMUM_TURN_BANDWIDTH = MAXIMUM_TURN_BANDWIDTH;
8025
- exports.MAXIMUM_TURN_BANDWIDTH_UNLIMITED = MAXIMUM_TURN_BANDWIDTH_UNLIMITED;
8026
7983
  exports.MEDIA_JITTER_BUFFER_TARGET = MEDIA_JITTER_BUFFER_TARGET;
8027
7984
  exports.NoDevicesError = NoDevicesError;
8028
7985
  exports.P2pRtcManager = P2pRtcManager;
@@ -8095,7 +8052,6 @@ exports.getUserMedia = getUserMedia;
8095
8052
  exports.hasGetDisplayMedia = hasGetDisplayMedia;
8096
8053
  exports.ipRegex = ipRegex;
8097
8054
  exports.isMobile = isMobile;
8098
- exports.isRelayed = isRelayed;
8099
8055
  exports.maybeRejectNoH264 = maybeRejectNoH264;
8100
8056
  exports.maybeTurnOnly = maybeTurnOnly;
8101
8057
  exports.modifyMediaCapabilities = modifyMediaCapabilities;
package/dist/index.d.cts CHANGED
@@ -66,7 +66,7 @@ type IssuesAndMetricsByView = {
66
66
  aggregated: IssuesAndMetricsAggregated;
67
67
  };
68
68
  declare const getIssuesAndMetrics: () => {
69
- [x: string]: IssuesAndMetrics | IssuesAndMetricsAggregated;
69
+ [clientId: string]: IssuesAndMetrics | IssuesAndMetricsAggregated;
70
70
  aggregated: IssuesAndMetricsAggregated;
71
71
  };
72
72
  declare function subscribeIssues(subscription: {
@@ -256,8 +256,6 @@ declare class BandwidthTester extends EventEmitter {
256
256
 
257
257
  declare function detectMicrophoneNotWorking(pc: any): any;
258
258
 
259
- declare const MAXIMUM_TURN_BANDWIDTH = 1280;
260
- declare const MAXIMUM_TURN_BANDWIDTH_UNLIMITED = -1;
261
259
  declare const MEDIA_JITTER_BUFFER_TARGET = 400;
262
260
 
263
261
  declare enum RtcEventNames {
@@ -486,7 +484,6 @@ declare class P2pRtcManager implements RtcManager {
486
484
  isSfu: any;
487
485
  }): boolean;
488
486
  supportsScreenShareAudio(): boolean;
489
- maybeRestrictRelayBandwidth(session: any): void;
490
487
  addNewStream(streamId: string, stream: MediaStream, audioPaused: boolean, videoPaused: boolean, beforeEffectTracks?: CustomMediaStreamTrack[]): void;
491
488
  replaceTrack(oldTrack: CustomMediaStreamTrack | null, newTrack: CustomMediaStreamTrack): Promise<any[]>;
492
489
  disconnectAll(): void;
@@ -1254,7 +1251,6 @@ declare class Session {
1254
1251
  totalRecv: number;
1255
1252
  };
1256
1253
  bandwidth: any;
1257
- maximumTurnBandwidth: any;
1258
1254
  pending: any[];
1259
1255
  isOperationPending: boolean;
1260
1256
  streamIds: any[];
@@ -1272,10 +1268,9 @@ declare class Session {
1272
1268
  shouldAddLocalVideo: any;
1273
1269
  signalingState: any;
1274
1270
  srdComplete: any;
1275
- constructor({ peerConnectionId, bandwidth, maximumTurnBandwidth, deprioritizeH264Encoding, }: {
1271
+ constructor({ peerConnectionId, bandwidth, deprioritizeH264Encoding, }: {
1276
1272
  peerConnectionId: any;
1277
1273
  bandwidth: any;
1278
- maximumTurnBandwidth: any;
1279
1274
  deprioritizeH264Encoding: any;
1280
1275
  });
1281
1276
  setAndGetPeerConnection({ clientId, constraints, peerConnectionConfig, shouldAddLocalVideo, }: {
@@ -1296,7 +1291,6 @@ declare class Session {
1296
1291
  close(): void;
1297
1292
  hasConnectedPeerConnection(): any;
1298
1293
  replaceTrack(oldTrack: MediaStreamTrack, newTrack: MediaStreamTrack): any;
1299
- maybeRestrictRelayBandwidth(): void;
1300
1294
  changeBandwidth(bandwidth: any): void;
1301
1295
  setAudioOnly(enable: boolean, excludedTrackIds?: any[]): void;
1302
1296
  }
@@ -1331,8 +1325,6 @@ declare class SfuV2Parser {
1331
1325
  };
1332
1326
  }
1333
1327
 
1334
- declare function isRelayed(pc: any): any;
1335
-
1336
1328
  declare class VegaConnection extends EventEmitter$1 {
1337
1329
  wsUrl: string;
1338
1330
  protocol: string;
@@ -1808,4 +1800,5 @@ declare class RtcStream {
1808
1800
  static getTypeFromId(id: string): string;
1809
1801
  }
1810
1802
 
1811
- export { ADDITIONAL_SCREEN_SHARE_SETTINGS, ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9, AUDIO_SETTINGS, type AddSpotlightRequest, type AudioEnableRequest, type AudioEnableRequestedEvent, type AudioEnabledEvent, BandwidthTester, type BreakoutConfig, type BreakoutGroupJoinedEvent, type BreakoutSessionUpdatedEvent, type CannotJoinUnclaimedRoomError, type ChatMessage, type ClientKickedEvent, type ClientLeftEvent, type ClientMetadataPayload, type ClientMetadataReceivedEvent, type ClientRole, type ClientUnableToJoinEvent, type CloudRecordingStartedEvent, type Codec, type Credentials, type CustomMediaStreamTrack, EVENTS, type ForbiddenError, type ForbiddenErrorNames, type GetConstraintsOptions, type GetDeviceDataResult, type GetMediaConstraintsOptions, type GetStreamOptions, type GetStreamResult, type GetUpdatedDevicesResult, type HostPresenceControlsError, type IdentifyDeviceRequest, type InternalServerError, type IssuesAndMetricsByView, type JoinRoomRequest, KNOCK_MESSAGES, KalmanFilter, type KnockAcceptedEvent, type KnockRejectedEvent, type KnockRoomRequest, type KnockerLeftEvent, type LiveTranscriptionStartedEvent, type LiveTranscriptionStoppedEvent, Logger, MAXIMUM_TURN_BANDWIDTH, MAXIMUM_TURN_BANDWIDTH_UNLIMITED, MEDIA_JITTER_BUFFER_TARGET, type MaxViewerLimitReachedError, type NewClientEvent, NoDevicesError, type OrganizationPlanExhaustedError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, type RemoveSpotlightRequest, type RoleName, type RoomConcurrencyControlsError, type RoomFullError, type RoomJoinedErrors, type RoomJoinedEvent, type RoomJoinedSuccess, type RoomKnockedEvent, type RoomLockedError, type RoomLockedEvent, type RoomMeetingTimeExhaustedError, type RoomMode, type RoomSessionEndedEvent, type RtcClientConnectionStatusChangedPayload, RtcEventNames, type RtcEvents, type RtcLocalStreamTrackAddedPayload, type RtcLocalStreamTrackRemovedPayload, type RtcManager, type RtcManagerCreatedPayload, RtcManagerDispatcher, RtcStream, type RtcStreamAddedPayload, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SETTINGS_VP9, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, type ScreenshareStartedEvent, type ScreenshareStoppedEvent, type SendClientMetadataRequest, ServerSocket, Session, SfuV2Parser, type SignalClient, type SignalEvents, type SignalKnocker, type SignalRequests, type SocketConf, type SocketManager, type Spotlight, type SpotlightAddedEvent, type SpotlightRemovedEvent, type StatsMonitorOptions, type StatsMonitorState, type StatsSubscription, TYPES, type TrackStats, type TurnTransportProtocol, type UpdatedDeviceInfo, type UpdatedDevicesInfo, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_KEY, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH_KEY, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, type VideoEnableRequest, type VideoEnableRequestedEvent, type VideoEnabledEvent, type ViewStats, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDevice, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, isRelayed, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, _default as rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, type ssrcStats, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
1803
+ export { ADDITIONAL_SCREEN_SHARE_SETTINGS, ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MEDIA_JITTER_BUFFER_TARGET, NoDevicesError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, RtcEventNames, RtcManagerDispatcher, RtcStream, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SETTINGS_VP9, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, ServerSocket, Session, SfuV2Parser, TYPES, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_KEY, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH_KEY, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDevice, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, _default as rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
1804
+ export type { AddSpotlightRequest, AudioEnableRequest, AudioEnableRequestedEvent, AudioEnabledEvent, BreakoutConfig, BreakoutGroupJoinedEvent, BreakoutSessionUpdatedEvent, CannotJoinUnclaimedRoomError, ChatMessage, ClientKickedEvent, ClientLeftEvent, ClientMetadataPayload, ClientMetadataReceivedEvent, ClientRole, ClientUnableToJoinEvent, CloudRecordingStartedEvent, Codec, Credentials, CustomMediaStreamTrack, ForbiddenError, ForbiddenErrorNames, GetConstraintsOptions, GetDeviceDataResult, GetMediaConstraintsOptions, GetStreamOptions, GetStreamResult, GetUpdatedDevicesResult, HostPresenceControlsError, IdentifyDeviceRequest, InternalServerError, IssuesAndMetricsByView, JoinRoomRequest, KnockAcceptedEvent, KnockRejectedEvent, KnockRoomRequest, KnockerLeftEvent, LiveTranscriptionStartedEvent, LiveTranscriptionStoppedEvent, MaxViewerLimitReachedError, NewClientEvent, OrganizationPlanExhaustedError, RemoveSpotlightRequest, RoleName, RoomConcurrencyControlsError, RoomFullError, RoomJoinedErrors, RoomJoinedEvent, RoomJoinedSuccess, RoomKnockedEvent, RoomLockedError, RoomLockedEvent, RoomMeetingTimeExhaustedError, RoomMode, RoomSessionEndedEvent, RtcClientConnectionStatusChangedPayload, RtcEvents, RtcLocalStreamTrackAddedPayload, RtcLocalStreamTrackRemovedPayload, RtcManager, RtcManagerCreatedPayload, RtcStreamAddedPayload, ScreenshareStartedEvent, ScreenshareStoppedEvent, SendClientMetadataRequest, SignalClient, SignalEvents, SignalKnocker, SignalRequests, SocketConf, SocketManager, Spotlight, SpotlightAddedEvent, SpotlightRemovedEvent, StatsMonitorOptions, StatsMonitorState, StatsSubscription, TrackStats, TurnTransportProtocol, UpdatedDeviceInfo, UpdatedDevicesInfo, VideoEnableRequest, VideoEnableRequestedEvent, VideoEnabledEvent, ViewStats, ssrcStats };
package/dist/index.d.mts CHANGED
@@ -66,7 +66,7 @@ type IssuesAndMetricsByView = {
66
66
  aggregated: IssuesAndMetricsAggregated;
67
67
  };
68
68
  declare const getIssuesAndMetrics: () => {
69
- [x: string]: IssuesAndMetrics | IssuesAndMetricsAggregated;
69
+ [clientId: string]: IssuesAndMetrics | IssuesAndMetricsAggregated;
70
70
  aggregated: IssuesAndMetricsAggregated;
71
71
  };
72
72
  declare function subscribeIssues(subscription: {
@@ -256,8 +256,6 @@ declare class BandwidthTester extends EventEmitter {
256
256
 
257
257
  declare function detectMicrophoneNotWorking(pc: any): any;
258
258
 
259
- declare const MAXIMUM_TURN_BANDWIDTH = 1280;
260
- declare const MAXIMUM_TURN_BANDWIDTH_UNLIMITED = -1;
261
259
  declare const MEDIA_JITTER_BUFFER_TARGET = 400;
262
260
 
263
261
  declare enum RtcEventNames {
@@ -486,7 +484,6 @@ declare class P2pRtcManager implements RtcManager {
486
484
  isSfu: any;
487
485
  }): boolean;
488
486
  supportsScreenShareAudio(): boolean;
489
- maybeRestrictRelayBandwidth(session: any): void;
490
487
  addNewStream(streamId: string, stream: MediaStream, audioPaused: boolean, videoPaused: boolean, beforeEffectTracks?: CustomMediaStreamTrack[]): void;
491
488
  replaceTrack(oldTrack: CustomMediaStreamTrack | null, newTrack: CustomMediaStreamTrack): Promise<any[]>;
492
489
  disconnectAll(): void;
@@ -1254,7 +1251,6 @@ declare class Session {
1254
1251
  totalRecv: number;
1255
1252
  };
1256
1253
  bandwidth: any;
1257
- maximumTurnBandwidth: any;
1258
1254
  pending: any[];
1259
1255
  isOperationPending: boolean;
1260
1256
  streamIds: any[];
@@ -1272,10 +1268,9 @@ declare class Session {
1272
1268
  shouldAddLocalVideo: any;
1273
1269
  signalingState: any;
1274
1270
  srdComplete: any;
1275
- constructor({ peerConnectionId, bandwidth, maximumTurnBandwidth, deprioritizeH264Encoding, }: {
1271
+ constructor({ peerConnectionId, bandwidth, deprioritizeH264Encoding, }: {
1276
1272
  peerConnectionId: any;
1277
1273
  bandwidth: any;
1278
- maximumTurnBandwidth: any;
1279
1274
  deprioritizeH264Encoding: any;
1280
1275
  });
1281
1276
  setAndGetPeerConnection({ clientId, constraints, peerConnectionConfig, shouldAddLocalVideo, }: {
@@ -1296,7 +1291,6 @@ declare class Session {
1296
1291
  close(): void;
1297
1292
  hasConnectedPeerConnection(): any;
1298
1293
  replaceTrack(oldTrack: MediaStreamTrack, newTrack: MediaStreamTrack): any;
1299
- maybeRestrictRelayBandwidth(): void;
1300
1294
  changeBandwidth(bandwidth: any): void;
1301
1295
  setAudioOnly(enable: boolean, excludedTrackIds?: any[]): void;
1302
1296
  }
@@ -1331,8 +1325,6 @@ declare class SfuV2Parser {
1331
1325
  };
1332
1326
  }
1333
1327
 
1334
- declare function isRelayed(pc: any): any;
1335
-
1336
1328
  declare class VegaConnection extends EventEmitter$1 {
1337
1329
  wsUrl: string;
1338
1330
  protocol: string;
@@ -1808,4 +1800,5 @@ declare class RtcStream {
1808
1800
  static getTypeFromId(id: string): string;
1809
1801
  }
1810
1802
 
1811
- export { ADDITIONAL_SCREEN_SHARE_SETTINGS, ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9, AUDIO_SETTINGS, type AddSpotlightRequest, type AudioEnableRequest, type AudioEnableRequestedEvent, type AudioEnabledEvent, BandwidthTester, type BreakoutConfig, type BreakoutGroupJoinedEvent, type BreakoutSessionUpdatedEvent, type CannotJoinUnclaimedRoomError, type ChatMessage, type ClientKickedEvent, type ClientLeftEvent, type ClientMetadataPayload, type ClientMetadataReceivedEvent, type ClientRole, type ClientUnableToJoinEvent, type CloudRecordingStartedEvent, type Codec, type Credentials, type CustomMediaStreamTrack, EVENTS, type ForbiddenError, type ForbiddenErrorNames, type GetConstraintsOptions, type GetDeviceDataResult, type GetMediaConstraintsOptions, type GetStreamOptions, type GetStreamResult, type GetUpdatedDevicesResult, type HostPresenceControlsError, type IdentifyDeviceRequest, type InternalServerError, type IssuesAndMetricsByView, type JoinRoomRequest, KNOCK_MESSAGES, KalmanFilter, type KnockAcceptedEvent, type KnockRejectedEvent, type KnockRoomRequest, type KnockerLeftEvent, type LiveTranscriptionStartedEvent, type LiveTranscriptionStoppedEvent, Logger, MAXIMUM_TURN_BANDWIDTH, MAXIMUM_TURN_BANDWIDTH_UNLIMITED, MEDIA_JITTER_BUFFER_TARGET, type MaxViewerLimitReachedError, type NewClientEvent, NoDevicesError, type OrganizationPlanExhaustedError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, type RemoveSpotlightRequest, type RoleName, type RoomConcurrencyControlsError, type RoomFullError, type RoomJoinedErrors, type RoomJoinedEvent, type RoomJoinedSuccess, type RoomKnockedEvent, type RoomLockedError, type RoomLockedEvent, type RoomMeetingTimeExhaustedError, type RoomMode, type RoomSessionEndedEvent, type RtcClientConnectionStatusChangedPayload, RtcEventNames, type RtcEvents, type RtcLocalStreamTrackAddedPayload, type RtcLocalStreamTrackRemovedPayload, type RtcManager, type RtcManagerCreatedPayload, RtcManagerDispatcher, RtcStream, type RtcStreamAddedPayload, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SETTINGS_VP9, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, type ScreenshareStartedEvent, type ScreenshareStoppedEvent, type SendClientMetadataRequest, ServerSocket, Session, SfuV2Parser, type SignalClient, type SignalEvents, type SignalKnocker, type SignalRequests, type SocketConf, type SocketManager, type Spotlight, type SpotlightAddedEvent, type SpotlightRemovedEvent, type StatsMonitorOptions, type StatsMonitorState, type StatsSubscription, TYPES, type TrackStats, type TurnTransportProtocol, type UpdatedDeviceInfo, type UpdatedDevicesInfo, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_KEY, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH_KEY, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, type VideoEnableRequest, type VideoEnableRequestedEvent, type VideoEnabledEvent, type ViewStats, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDevice, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, isRelayed, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, _default as rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, type ssrcStats, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
1803
+ export { ADDITIONAL_SCREEN_SHARE_SETTINGS, ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MEDIA_JITTER_BUFFER_TARGET, NoDevicesError, P2pRtcManager, PROTOCOL_ERRORS, PROTOCOL_EVENTS, PROTOCOL_REQUESTS, PROTOCOL_RESPONSES, RELAY_MESSAGES, ReconnectManager, RtcEventNames, RtcManagerDispatcher, RtcStream, SCREEN_SHARE_SETTINGS, SCREEN_SHARE_SETTINGS_VP9, SCREEN_SHARE_SIMULCAST_SETTINGS, STREAM_TYPES, ServerSocket, Session, SfuV2Parser, TYPES, VIDEO_SETTINGS_HD, VIDEO_SETTINGS_SD, VIDEO_SETTINGS_VP9, VIDEO_SETTINGS_VP9_KEY, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH, VIDEO_SETTINGS_VP9_LOW_BANDWIDTH_KEY, VegaConnection, VegaMediaQualityMonitor, VegaRtcManager, addAbsCaptureTimeExtMap, addExtMap, assert, buildDeviceList, calculateStd, captureAudioSsrcMetrics, captureCandidatePairInfoMetrics, captureCommonSsrcMetrics, captureSsrcInfo, captureVideoSsrcMetrics, changeMediaDirection, cleanSdp, compareLocalDevices, createACFCalculator, createMicAnalyser, createWorker, deprioritizeH264, detectMicrophoneNotWorking, enumerate, external_stun_servers, filterMidExtension, filterMsidSemantic, fromLocation, generateByteString, getConstraints, getCurrentPeerConnections, getDeviceData, getDisplayMedia, getIssuesAndMetrics, getMediaConstraints, getMediaSettings, getMediasoupDevice, getNumFailedStatsReports, getNumFailedTrackSsrcLookups, getNumMissingTrackSsrcLookups, getPeerConnectionIndex, getStats, getStream, getUpdatedDevices, getUpdatedStats, getUserMedia, hasGetDisplayMedia, ipRegex, isMobile, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, _default as rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
1804
+ export type { AddSpotlightRequest, AudioEnableRequest, AudioEnableRequestedEvent, AudioEnabledEvent, BreakoutConfig, BreakoutGroupJoinedEvent, BreakoutSessionUpdatedEvent, CannotJoinUnclaimedRoomError, ChatMessage, ClientKickedEvent, ClientLeftEvent, ClientMetadataPayload, ClientMetadataReceivedEvent, ClientRole, ClientUnableToJoinEvent, CloudRecordingStartedEvent, Codec, Credentials, CustomMediaStreamTrack, ForbiddenError, ForbiddenErrorNames, GetConstraintsOptions, GetDeviceDataResult, GetMediaConstraintsOptions, GetStreamOptions, GetStreamResult, GetUpdatedDevicesResult, HostPresenceControlsError, IdentifyDeviceRequest, InternalServerError, IssuesAndMetricsByView, JoinRoomRequest, KnockAcceptedEvent, KnockRejectedEvent, KnockRoomRequest, KnockerLeftEvent, LiveTranscriptionStartedEvent, LiveTranscriptionStoppedEvent, MaxViewerLimitReachedError, NewClientEvent, OrganizationPlanExhaustedError, RemoveSpotlightRequest, RoleName, RoomConcurrencyControlsError, RoomFullError, RoomJoinedErrors, RoomJoinedEvent, RoomJoinedSuccess, RoomKnockedEvent, RoomLockedError, RoomLockedEvent, RoomMeetingTimeExhaustedError, RoomMode, RoomSessionEndedEvent, RtcClientConnectionStatusChangedPayload, RtcEvents, RtcLocalStreamTrackAddedPayload, RtcLocalStreamTrackRemovedPayload, RtcManager, RtcManagerCreatedPayload, RtcStreamAddedPayload, ScreenshareStartedEvent, ScreenshareStoppedEvent, SendClientMetadataRequest, SignalClient, SignalEvents, SignalKnocker, SignalRequests, SocketConf, SocketManager, Spotlight, SpotlightAddedEvent, SpotlightRemovedEvent, StatsMonitorOptions, StatsMonitorState, StatsSubscription, TrackStats, TurnTransportProtocol, UpdatedDeviceInfo, UpdatedDevicesInfo, VideoEnableRequest, VideoEnableRequestedEvent, VideoEnabledEvent, ViewStats, ssrcStats };