@whereby.com/media 1.28.0 → 1.30.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 +23 -0
- package/dist/index.cjs +60 -118
- package/dist/index.d.cts +3 -11
- package/dist/index.d.mts +3 -11
- package/dist/index.d.ts +3 -11
- package/dist/index.mjs +61 -117
- package/dist/legacy-esm.js +61 -117
- package/package.json +85 -75
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(
|
|
626
|
-
return __awaiter(this,
|
|
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();
|
|
@@ -1674,31 +1674,6 @@ class RtcStream {
|
|
|
1674
1674
|
}
|
|
1675
1675
|
}
|
|
1676
1676
|
|
|
1677
|
-
const lowPixelCount = 320 * 180;
|
|
1678
|
-
const lowBitratePerPixel = 150000 / lowPixelCount;
|
|
1679
|
-
const highPixelCount = 1280 * 720;
|
|
1680
|
-
const highBitratePerPixel = 1000000 / highPixelCount;
|
|
1681
|
-
const bitrateChangePerPixel = (highBitratePerPixel - lowBitratePerPixel) / (highPixelCount - lowPixelCount);
|
|
1682
|
-
function getOptimalBitrate(width, height, frameRate) {
|
|
1683
|
-
let targetPixelCount = width * height;
|
|
1684
|
-
if (targetPixelCount < lowPixelCount)
|
|
1685
|
-
targetPixelCount = lowPixelCount;
|
|
1686
|
-
if (targetPixelCount > highPixelCount)
|
|
1687
|
-
targetPixelCount = highPixelCount;
|
|
1688
|
-
let targetBitratePerPixel = lowBitratePerPixel;
|
|
1689
|
-
if (targetPixelCount > highPixelCount)
|
|
1690
|
-
targetBitratePerPixel = highBitratePerPixel;
|
|
1691
|
-
else if (targetPixelCount > lowPixelCount) {
|
|
1692
|
-
targetBitratePerPixel += (targetPixelCount - lowPixelCount) * bitrateChangePerPixel;
|
|
1693
|
-
}
|
|
1694
|
-
let targetBitrate = width * height * targetBitratePerPixel;
|
|
1695
|
-
if (frameRate <= 15)
|
|
1696
|
-
targetBitrate = targetBitrate * 0.7;
|
|
1697
|
-
else if (frameRate <= 24)
|
|
1698
|
-
targetBitrate = targetBitrate * 0.9;
|
|
1699
|
-
return targetBitrate;
|
|
1700
|
-
}
|
|
1701
|
-
|
|
1702
1677
|
const word = "[a-fA-F\\d:]";
|
|
1703
1678
|
const boundry = (options) => options && options.includeBoundaries ? `(?:(?<=\\s|^)(?=${word})|(?<=${word})(?=\\s|$))` : "";
|
|
1704
1679
|
const v4 = "(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}";
|
|
@@ -2008,9 +1983,9 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
|
|
|
2008
1983
|
return this._pc.getStats();
|
|
2009
1984
|
});
|
|
2010
1985
|
}
|
|
2011
|
-
send(
|
|
2012
|
-
|
|
2013
|
-
|
|
1986
|
+
send(_a) {
|
|
1987
|
+
return __awaiter(this, arguments, void 0, function* ({ track, encodings, codecOptions, codec, onRtpSender }) {
|
|
1988
|
+
var _b;
|
|
2014
1989
|
this.assertNotClosed();
|
|
2015
1990
|
this.assertSendDirection();
|
|
2016
1991
|
logger$9.debug("send() [kind:%s, track.id:%s]", track.kind, track.id);
|
|
@@ -2058,7 +2033,7 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
|
|
|
2058
2033
|
let offerMediaObject = localSdpObject.media[mediaSectionIdx.idx];
|
|
2059
2034
|
if (!this._transportReady) {
|
|
2060
2035
|
yield this.setupTransport({
|
|
2061
|
-
localDtlsRole: (
|
|
2036
|
+
localDtlsRole: (_b = this._forcedLocalDtlsRole) !== null && _b !== void 0 ? _b : "client",
|
|
2062
2037
|
localSdpObject,
|
|
2063
2038
|
});
|
|
2064
2039
|
}
|
|
@@ -2234,9 +2209,9 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
|
|
|
2234
2209
|
return transceiver.sender.getStats();
|
|
2235
2210
|
});
|
|
2236
2211
|
}
|
|
2237
|
-
sendDataChannel(
|
|
2238
|
-
|
|
2239
|
-
|
|
2212
|
+
sendDataChannel(_a) {
|
|
2213
|
+
return __awaiter(this, arguments, void 0, function* ({ ordered, maxPacketLifeTime, maxRetransmits, label, protocol, }) {
|
|
2214
|
+
var _b;
|
|
2240
2215
|
this.assertNotClosed();
|
|
2241
2216
|
this.assertSendDirection();
|
|
2242
2217
|
const options = {
|
|
@@ -2256,7 +2231,7 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
|
|
|
2256
2231
|
const offerMediaObject = localSdpObject.media.find((m) => m.type === "application");
|
|
2257
2232
|
if (!this._transportReady) {
|
|
2258
2233
|
yield this.setupTransport({
|
|
2259
|
-
localDtlsRole: (
|
|
2234
|
+
localDtlsRole: (_b = this._forcedLocalDtlsRole) !== null && _b !== void 0 ? _b : "client",
|
|
2260
2235
|
localSdpObject,
|
|
2261
2236
|
});
|
|
2262
2237
|
}
|
|
@@ -2278,8 +2253,8 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
|
|
|
2278
2253
|
});
|
|
2279
2254
|
}
|
|
2280
2255
|
receive(optionsList) {
|
|
2281
|
-
var _a, _b;
|
|
2282
2256
|
return __awaiter(this, void 0, void 0, function* () {
|
|
2257
|
+
var _a, _b;
|
|
2283
2258
|
this.assertNotClosed();
|
|
2284
2259
|
this.assertRecvDirection();
|
|
2285
2260
|
const results = [];
|
|
@@ -2426,9 +2401,9 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
|
|
|
2426
2401
|
return transceiver.receiver.getStats();
|
|
2427
2402
|
});
|
|
2428
2403
|
}
|
|
2429
|
-
receiveDataChannel(
|
|
2430
|
-
|
|
2431
|
-
|
|
2404
|
+
receiveDataChannel(_a) {
|
|
2405
|
+
return __awaiter(this, arguments, void 0, function* ({ sctpStreamParameters, label, protocol, }) {
|
|
2406
|
+
var _b;
|
|
2432
2407
|
this.assertNotClosed();
|
|
2433
2408
|
this.assertRecvDirection();
|
|
2434
2409
|
const { streamId, ordered, maxPacketLifeTime, maxRetransmits } = sctpStreamParameters;
|
|
@@ -2451,7 +2426,7 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
|
|
|
2451
2426
|
if (!this._transportReady) {
|
|
2452
2427
|
const localSdpObject = sdpTransform__namespace.parse(answer.sdp);
|
|
2453
2428
|
yield this.setupTransport({
|
|
2454
|
-
localDtlsRole: (
|
|
2429
|
+
localDtlsRole: (_b = this._forcedLocalDtlsRole) !== null && _b !== void 0 ? _b : "client",
|
|
2455
2430
|
localSdpObject,
|
|
2456
2431
|
});
|
|
2457
2432
|
}
|
|
@@ -2462,8 +2437,8 @@ class Safari17 extends HandlerInterface_js.HandlerInterface {
|
|
|
2462
2437
|
return { dataChannel };
|
|
2463
2438
|
});
|
|
2464
2439
|
}
|
|
2465
|
-
setupTransport(
|
|
2466
|
-
return __awaiter(this,
|
|
2440
|
+
setupTransport(_a) {
|
|
2441
|
+
return __awaiter(this, arguments, void 0, function* ({ localDtlsRole, localSdpObject, }) {
|
|
2467
2442
|
if (!localSdpObject) {
|
|
2468
2443
|
localSdpObject = sdpTransform__namespace.parse(this._pc.localDescription.sdp);
|
|
2469
2444
|
}
|
|
@@ -2576,14 +2551,6 @@ const VIDEO_SETTINGS_VP9_LOW_BANDWIDTH_KEY = {
|
|
|
2576
2551
|
const SCREEN_SHARE_SETTINGS = {
|
|
2577
2552
|
encodings: [{}],
|
|
2578
2553
|
};
|
|
2579
|
-
const SCREEN_SHARE_SETTINGS_LOW_BANDWIDTH = {
|
|
2580
|
-
encodings: [
|
|
2581
|
-
{
|
|
2582
|
-
maxBitrate: 600000,
|
|
2583
|
-
maxFramerate: 2,
|
|
2584
|
-
},
|
|
2585
|
-
],
|
|
2586
|
-
};
|
|
2587
2554
|
const SCREEN_SHARE_SIMULCAST_SETTINGS = {
|
|
2588
2555
|
encodings: [
|
|
2589
2556
|
{ scaleResolutionDownBy: 2, dtx: true, maxBitrate: 500000 },
|
|
@@ -2604,7 +2571,7 @@ const SCREEN_SHARE_SETTINGS_VP9 = {
|
|
|
2604
2571
|
encodings: [{ dtx: true }],
|
|
2605
2572
|
};
|
|
2606
2573
|
const getMediaSettings = (kind, isScreenShare, features, isSomeoneAlreadyPresenting = false) => {
|
|
2607
|
-
const { lowDataModeEnabled, simulcastScreenshareOn,
|
|
2574
|
+
const { lowDataModeEnabled, simulcastScreenshareOn, vp9On, svcKeyScalabilityModeOn } = features;
|
|
2608
2575
|
if (kind === "audio") {
|
|
2609
2576
|
return AUDIO_SETTINGS;
|
|
2610
2577
|
}
|
|
@@ -2612,7 +2579,6 @@ const getMediaSettings = (kind, isScreenShare, features, isSomeoneAlreadyPresent
|
|
|
2612
2579
|
const isVp9Available = isChrome && vp9On;
|
|
2613
2580
|
if (isScreenShare) {
|
|
2614
2581
|
return getScreenShareMediaSettings({
|
|
2615
|
-
lowBandwidth: lowBandwidth,
|
|
2616
2582
|
isVp9Available,
|
|
2617
2583
|
isSomeoneAlreadyPresenting,
|
|
2618
2584
|
simulcastScreenshareOn,
|
|
@@ -2620,7 +2586,7 @@ const getMediaSettings = (kind, isScreenShare, features, isSomeoneAlreadyPresent
|
|
|
2620
2586
|
}
|
|
2621
2587
|
else {
|
|
2622
2588
|
return getCameraMediaSettings({
|
|
2623
|
-
lowBandwidth:
|
|
2589
|
+
lowBandwidth: lowDataModeEnabled,
|
|
2624
2590
|
isVp9Available,
|
|
2625
2591
|
svcKeyScalabilityModeOn,
|
|
2626
2592
|
});
|
|
@@ -2642,14 +2608,12 @@ const getCameraMediaSettings = ({ lowBandwidth, isVp9Available, svcKeyScalabilit
|
|
|
2642
2608
|
}
|
|
2643
2609
|
return VIDEO_SETTINGS_HD;
|
|
2644
2610
|
};
|
|
2645
|
-
const getScreenShareMediaSettings = ({
|
|
2611
|
+
const getScreenShareMediaSettings = ({ isVp9Available, isSomeoneAlreadyPresenting, simulcastScreenshareOn, }) => {
|
|
2646
2612
|
if (isSomeoneAlreadyPresenting) {
|
|
2647
2613
|
if (isVp9Available)
|
|
2648
2614
|
return ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9;
|
|
2649
2615
|
return ADDITIONAL_SCREEN_SHARE_SETTINGS;
|
|
2650
2616
|
}
|
|
2651
|
-
if (lowBandwidth && !isVp9Available)
|
|
2652
|
-
return SCREEN_SHARE_SETTINGS_LOW_BANDWIDTH;
|
|
2653
2617
|
if (isVp9Available)
|
|
2654
2618
|
return SCREEN_SHARE_SETTINGS_VP9;
|
|
2655
2619
|
if (simulcastScreenshareOn)
|
|
@@ -2783,8 +2747,8 @@ class ReconnectManager extends EventEmitter {
|
|
|
2783
2747
|
socket.on(PROTOCOL_RESPONSES.SCREENSHARE_STOPPED, (payload) => this._onScreenshareChanged(payload, false));
|
|
2784
2748
|
}
|
|
2785
2749
|
_onRoomJoined(payload) {
|
|
2786
|
-
var _a;
|
|
2787
2750
|
return __awaiter(this, void 0, void 0, function* () {
|
|
2751
|
+
var _a;
|
|
2788
2752
|
this.reconnectThresholdInMs = (payload.disconnectTimeout || 0) * 0.8;
|
|
2789
2753
|
if (payload === null || payload === void 0 ? void 0 : payload.error) {
|
|
2790
2754
|
this.emit(PROTOCOL_RESPONSES.ROOM_JOINED, payload);
|
|
@@ -4009,12 +3973,12 @@ class P2pRtcManager {
|
|
|
4009
3973
|
if (numPeers > 7) {
|
|
4010
3974
|
numPeers = 7;
|
|
4011
3975
|
}
|
|
4012
|
-
|
|
3976
|
+
const bandwidth = this._features.bandwidth
|
|
4013
3977
|
? parseInt(this._features.bandwidth, 10)
|
|
4014
3978
|
: {
|
|
4015
|
-
1:
|
|
4016
|
-
2:
|
|
4017
|
-
3:
|
|
3979
|
+
1: 0,
|
|
3980
|
+
2: 384,
|
|
3981
|
+
3: 256,
|
|
4018
3982
|
4: 192,
|
|
4019
3983
|
5: 128,
|
|
4020
3984
|
6: 128,
|
|
@@ -4023,22 +3987,6 @@ class P2pRtcManager {
|
|
|
4023
3987
|
if (bandwidth === undefined) {
|
|
4024
3988
|
return 0;
|
|
4025
3989
|
}
|
|
4026
|
-
if (this._features.adjustBitratesFromResolution) {
|
|
4027
|
-
const cameraStream = this._getLocalCameraStream();
|
|
4028
|
-
if (cameraStream) {
|
|
4029
|
-
const cameraTrack = cameraStream && cameraStream.getVideoTracks()[0];
|
|
4030
|
-
if (cameraTrack) {
|
|
4031
|
-
const { width, height, frameRate } = cameraTrack.getSettings();
|
|
4032
|
-
if (width && height && frameRate) {
|
|
4033
|
-
const optimalBandwidth = Math.round(getOptimalBitrate(width, height, frameRate) / 1000);
|
|
4034
|
-
bandwidth = Math.min(optimalBandwidth, bandwidth || optimalBandwidth);
|
|
4035
|
-
}
|
|
4036
|
-
}
|
|
4037
|
-
}
|
|
4038
|
-
}
|
|
4039
|
-
if (this._features.higherP2PBitrates && !this._features.lowBandwidth) {
|
|
4040
|
-
bandwidth = bandwidth * 1.5;
|
|
4041
|
-
}
|
|
4042
3990
|
this._forEachPeerConnection((session) => {
|
|
4043
3991
|
session.changeBandwidth(bandwidth);
|
|
4044
3992
|
});
|
|
@@ -5294,8 +5242,8 @@ class VegaRtcManager {
|
|
|
5294
5242
|
this._emitToPWA(rtcManagerEvents.SFU_CONNECTION_CLOSED);
|
|
5295
5243
|
}
|
|
5296
5244
|
_join() {
|
|
5297
|
-
var _a, _b;
|
|
5298
5245
|
return __awaiter(this, void 0, void 0, function* () {
|
|
5246
|
+
var _a, _b;
|
|
5299
5247
|
logger$3.info("join()");
|
|
5300
5248
|
this._emitToPWA(rtcManagerEvents.SFU_CONNECTION_OPEN);
|
|
5301
5249
|
try {
|
|
@@ -5328,8 +5276,8 @@ class VegaRtcManager {
|
|
|
5328
5276
|
});
|
|
5329
5277
|
}
|
|
5330
5278
|
_createTransport(send) {
|
|
5331
|
-
var _a;
|
|
5332
5279
|
return __awaiter(this, void 0, void 0, function* () {
|
|
5280
|
+
var _a;
|
|
5333
5281
|
const creator = send ? "createSendTransport" : "createRecvTransport";
|
|
5334
5282
|
const transportOptions = yield this._vegaConnection.request("createTransport", {
|
|
5335
5283
|
producing: send,
|
|
@@ -5384,7 +5332,7 @@ class VegaRtcManager {
|
|
|
5384
5332
|
transport.removeListener("connectionstatechange", onConnectionStateListener);
|
|
5385
5333
|
});
|
|
5386
5334
|
if (send) {
|
|
5387
|
-
transport === null || transport === void 0 ? void 0 : transport.on("produce", (
|
|
5335
|
+
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) {
|
|
5388
5336
|
var _b;
|
|
5389
5337
|
try {
|
|
5390
5338
|
const { paused } = appData;
|
|
@@ -5401,10 +5349,10 @@ class VegaRtcManager {
|
|
|
5401
5349
|
errback(error);
|
|
5402
5350
|
}
|
|
5403
5351
|
}));
|
|
5404
|
-
transport === null || transport === void 0 ? void 0 : transport.on("producedata", (
|
|
5405
|
-
var
|
|
5352
|
+
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) {
|
|
5353
|
+
var _b;
|
|
5406
5354
|
try {
|
|
5407
|
-
const { id } = yield ((
|
|
5355
|
+
const { id } = yield ((_b = this._vegaConnection) === null || _b === void 0 ? void 0 : _b.request("produceData", {
|
|
5408
5356
|
transportId: transport.id,
|
|
5409
5357
|
sctpStreamParameters,
|
|
5410
5358
|
appData,
|
|
@@ -5422,8 +5370,8 @@ class VegaRtcManager {
|
|
|
5422
5370
|
}
|
|
5423
5371
|
});
|
|
5424
5372
|
}
|
|
5425
|
-
_restartIce(
|
|
5426
|
-
return __awaiter(this,
|
|
5373
|
+
_restartIce(transport_1) {
|
|
5374
|
+
return __awaiter(this, arguments, void 0, function* (transport, retried = 0) {
|
|
5427
5375
|
if (!transport || !("closed" in transport) || !("connectionState" in transport)) {
|
|
5428
5376
|
logger$3.info("_restartIce: No transport or property closed or connectionState!");
|
|
5429
5377
|
return;
|
|
@@ -5577,8 +5525,8 @@ class VegaRtcManager {
|
|
|
5577
5525
|
this._micScoreProducer = null;
|
|
5578
5526
|
}
|
|
5579
5527
|
_replaceMicTrack() {
|
|
5580
|
-
var _a;
|
|
5581
5528
|
return __awaiter(this, void 0, void 0, function* () {
|
|
5529
|
+
var _a;
|
|
5582
5530
|
logger$3.info("_replaceMicTrack()");
|
|
5583
5531
|
if (!this._micTrack || !this._micProducer || this._micProducer.closed)
|
|
5584
5532
|
return;
|
|
@@ -5647,8 +5595,8 @@ class VegaRtcManager {
|
|
|
5647
5595
|
}
|
|
5648
5596
|
}
|
|
5649
5597
|
_internalSendWebcam() {
|
|
5650
|
-
var _a;
|
|
5651
5598
|
return __awaiter(this, void 0, void 0, function* () {
|
|
5599
|
+
var _a;
|
|
5652
5600
|
logger$3.info("_internalSendWebcam()");
|
|
5653
5601
|
if (!this._sendTransport ||
|
|
5654
5602
|
this._webcamProducer ||
|
|
@@ -5657,7 +5605,7 @@ class VegaRtcManager {
|
|
|
5657
5605
|
return;
|
|
5658
5606
|
}
|
|
5659
5607
|
this._webcamProducerPromise = (() => __awaiter(this, void 0, void 0, function* () {
|
|
5660
|
-
var
|
|
5608
|
+
var _a;
|
|
5661
5609
|
try {
|
|
5662
5610
|
const currentPaused = this._webcamPaused;
|
|
5663
5611
|
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: {
|
|
@@ -5679,7 +5627,7 @@ class VegaRtcManager {
|
|
|
5679
5627
|
this._webcamProducerPromise = null;
|
|
5680
5628
|
this._qualityMonitor.removeProducer(this._selfId, producer.id);
|
|
5681
5629
|
});
|
|
5682
|
-
if (this._webcamTrack && this._webcamTrack !== ((
|
|
5630
|
+
if (this._webcamTrack && this._webcamTrack !== ((_a = this._webcamProducer) === null || _a === void 0 ? void 0 : _a.track)) {
|
|
5683
5631
|
this._webcamProducerPromise = null;
|
|
5684
5632
|
this._replaceWebcamTrack();
|
|
5685
5633
|
}
|
|
@@ -5695,9 +5643,6 @@ class VegaRtcManager {
|
|
|
5695
5643
|
this._stopProducer(this._webcamProducer);
|
|
5696
5644
|
this._webcamProducer = null;
|
|
5697
5645
|
}
|
|
5698
|
-
if (this._features.lowBandwidth && this._screenVideoTrack) {
|
|
5699
|
-
(_c = this._webcamProducer) === null || _c === void 0 ? void 0 : _c.setMaxSpatialLayer(0);
|
|
5700
|
-
}
|
|
5701
5646
|
}
|
|
5702
5647
|
}))();
|
|
5703
5648
|
});
|
|
@@ -5756,7 +5701,6 @@ class VegaRtcManager {
|
|
|
5756
5701
|
return __awaiter(this, void 0, void 0, function* () {
|
|
5757
5702
|
logger$3.info("_internalSendScreenVideo()");
|
|
5758
5703
|
this._screenVideoProducerPromise = (() => __awaiter(this, void 0, void 0, function* () {
|
|
5759
|
-
var _a, _b;
|
|
5760
5704
|
try {
|
|
5761
5705
|
if (!this._screenVideoTrack || !this._sendTransport || this._screenVideoProducer) {
|
|
5762
5706
|
this._screenVideoProducerPromise = null;
|
|
@@ -5782,9 +5726,6 @@ class VegaRtcManager {
|
|
|
5782
5726
|
});
|
|
5783
5727
|
if (this._screenVideoTrack !== this._screenVideoProducer.track)
|
|
5784
5728
|
yield this._replaceScreenVideoTrack();
|
|
5785
|
-
if (this._features.lowBandwidth) {
|
|
5786
|
-
(_a = this._webcamProducer) === null || _a === void 0 ? void 0 : _a.setMaxSpatialLayer(0);
|
|
5787
|
-
}
|
|
5788
5729
|
}
|
|
5789
5730
|
catch (error) {
|
|
5790
5731
|
logger$3.error("screenVideoProducer failed:%o", error);
|
|
@@ -5794,9 +5735,6 @@ class VegaRtcManager {
|
|
|
5794
5735
|
if (!this._screenVideoTrack) {
|
|
5795
5736
|
yield this._stopProducer(this._screenVideoProducer);
|
|
5796
5737
|
this._screenVideoProducer = null;
|
|
5797
|
-
if (this._features.lowBandwidth) {
|
|
5798
|
-
(_b = this._webcamProducer) === null || _b === void 0 ? void 0 : _b.setMaxSpatialLayer(Number.MAX_VALUE);
|
|
5799
|
-
}
|
|
5800
5738
|
}
|
|
5801
5739
|
}
|
|
5802
5740
|
}))();
|
|
@@ -5962,7 +5900,6 @@ class VegaRtcManager {
|
|
|
5962
5900
|
}
|
|
5963
5901
|
}
|
|
5964
5902
|
removeStream(streamId, _stream, requestedByClientId) {
|
|
5965
|
-
var _a;
|
|
5966
5903
|
logger$3.info("removeStream() [streamId:%s, requestedByClientId:%s]", streamId, requestedByClientId);
|
|
5967
5904
|
this._emitToSignal(PROTOCOL_REQUESTS.STOP_SCREENSHARE, {
|
|
5968
5905
|
streamId: OUTBOUND_SCREEN_OUTBOUND_STREAM_ID,
|
|
@@ -5974,9 +5911,6 @@ class VegaRtcManager {
|
|
|
5974
5911
|
this._stopProducer(this._screenAudioProducer);
|
|
5975
5912
|
this._screenAudioProducer = null;
|
|
5976
5913
|
this._screenAudioTrack = null;
|
|
5977
|
-
if (this._features.lowBandwidth) {
|
|
5978
|
-
(_a = this._webcamProducer) === null || _a === void 0 ? void 0 : _a.setMaxSpatialLayer(Number.MAX_VALUE);
|
|
5979
|
-
}
|
|
5980
5914
|
}
|
|
5981
5915
|
_onMicAnalyserScoreUpdated(data) {
|
|
5982
5916
|
var _a, _b;
|
|
@@ -6295,11 +6229,11 @@ class VegaRtcManager {
|
|
|
6295
6229
|
}
|
|
6296
6230
|
});
|
|
6297
6231
|
}
|
|
6298
|
-
_onConsumerClosed(
|
|
6299
|
-
|
|
6300
|
-
|
|
6232
|
+
_onConsumerClosed(_a) {
|
|
6233
|
+
return __awaiter(this, arguments, void 0, function* ({ consumerId, reason }) {
|
|
6234
|
+
var _b;
|
|
6301
6235
|
logger$3.info("_onConsumerClosed()", { consumerId, reason });
|
|
6302
|
-
(
|
|
6236
|
+
(_b = this._consumers.get(consumerId)) === null || _b === void 0 ? void 0 : _b.close();
|
|
6303
6237
|
});
|
|
6304
6238
|
}
|
|
6305
6239
|
_onConsumerPaused({ consumerId }) {
|
|
@@ -6358,8 +6292,8 @@ class VegaRtcManager {
|
|
|
6358
6292
|
this._syncIncomingStreamsWithPWA(clientId);
|
|
6359
6293
|
});
|
|
6360
6294
|
}
|
|
6361
|
-
_onDataConsumerClosed(
|
|
6362
|
-
return __awaiter(this,
|
|
6295
|
+
_onDataConsumerClosed(_a) {
|
|
6296
|
+
return __awaiter(this, arguments, void 0, function* ({ dataConsumerId, reason }) {
|
|
6363
6297
|
logger$3.info("_onDataConsumerClosed()", { dataConsumerId, reason });
|
|
6364
6298
|
const consumer = this._dataConsumers.get(dataConsumerId);
|
|
6365
6299
|
consumer === null || consumer === void 0 ? void 0 : consumer.close();
|
|
@@ -6761,6 +6695,16 @@ const issueDetectors = [
|
|
|
6761
6695
|
},
|
|
6762
6696
|
noTrackStatsIssueDetector,
|
|
6763
6697
|
dryTrackIssueDetector,
|
|
6698
|
+
{
|
|
6699
|
+
id: "denoiser-context-suspended",
|
|
6700
|
+
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); },
|
|
6701
|
+
check: ({ track }) => {
|
|
6702
|
+
var _a;
|
|
6703
|
+
if (!track || !("_denoiserCtx" in track))
|
|
6704
|
+
return false;
|
|
6705
|
+
return ((_a = track._denoiserCtx) === null || _a === void 0 ? void 0 : _a.state) === "suspended";
|
|
6706
|
+
},
|
|
6707
|
+
},
|
|
6764
6708
|
{
|
|
6765
6709
|
id: "low-layer0-bitrate",
|
|
6766
6710
|
enabled: ({ hasLiveTrack, ssrc0, kind, client }) => hasLiveTrack && kind === "video" && !!ssrc0 && !!(ssrc0 === null || ssrc0 === void 0 ? void 0 : ssrc0.height) && !client.isPresentation,
|
|
@@ -7399,8 +7343,8 @@ class BandwidthTester extends EventEmitter {
|
|
|
7399
7343
|
this.emit("close");
|
|
7400
7344
|
}
|
|
7401
7345
|
_start() {
|
|
7402
|
-
var _a, _b;
|
|
7403
7346
|
return __awaiter(this, void 0, void 0, function* () {
|
|
7347
|
+
var _a, _b;
|
|
7404
7348
|
logger$1.info("_start()");
|
|
7405
7349
|
this._connectTime = Date.now() - this._startTime;
|
|
7406
7350
|
if (this._connectTime > 5000) {
|
|
@@ -7452,8 +7396,8 @@ class BandwidthTester extends EventEmitter {
|
|
|
7452
7396
|
});
|
|
7453
7397
|
}
|
|
7454
7398
|
_createTransport(send) {
|
|
7455
|
-
var _a;
|
|
7456
7399
|
return __awaiter(this, void 0, void 0, function* () {
|
|
7400
|
+
var _a;
|
|
7457
7401
|
const creator = send ? "createSendTransport" : "createRecvTransport";
|
|
7458
7402
|
const transportOptions = yield this._vegaConnection.request("createTransport", {
|
|
7459
7403
|
producing: send,
|
|
@@ -7472,7 +7416,7 @@ class BandwidthTester extends EventEmitter {
|
|
|
7472
7416
|
callback();
|
|
7473
7417
|
});
|
|
7474
7418
|
if (send) {
|
|
7475
|
-
transport === null || transport === void 0 ? void 0 : transport.on("produce", (
|
|
7419
|
+
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) {
|
|
7476
7420
|
try {
|
|
7477
7421
|
const { paused } = appData;
|
|
7478
7422
|
const { id } = yield this._vegaConnection.request("produce", {
|
|
@@ -7861,9 +7805,9 @@ function replaceTracksInStream(stream, newStream, only) {
|
|
|
7861
7805
|
});
|
|
7862
7806
|
return replacedTracks;
|
|
7863
7807
|
}
|
|
7864
|
-
function getStream(
|
|
7865
|
-
|
|
7866
|
-
|
|
7808
|
+
function getStream(constraintOpt_1) {
|
|
7809
|
+
return __awaiter(this, arguments, void 0, function* (constraintOpt, { replaceStream, fallback = true } = {}) {
|
|
7810
|
+
var _a;
|
|
7867
7811
|
let error;
|
|
7868
7812
|
let newConstraints;
|
|
7869
7813
|
let retryConstraintOpt;
|
|
@@ -8101,7 +8045,6 @@ exports.ReconnectManager = ReconnectManager;
|
|
|
8101
8045
|
exports.RtcManagerDispatcher = RtcManagerDispatcher;
|
|
8102
8046
|
exports.RtcStream = RtcStream;
|
|
8103
8047
|
exports.SCREEN_SHARE_SETTINGS = SCREEN_SHARE_SETTINGS;
|
|
8104
|
-
exports.SCREEN_SHARE_SETTINGS_LOW_BANDWIDTH = SCREEN_SHARE_SETTINGS_LOW_BANDWIDTH;
|
|
8105
8048
|
exports.SCREEN_SHARE_SETTINGS_VP9 = SCREEN_SHARE_SETTINGS_VP9;
|
|
8106
8049
|
exports.SCREEN_SHARE_SIMULCAST_SETTINGS = SCREEN_SHARE_SIMULCAST_SETTINGS;
|
|
8107
8050
|
exports.STREAM_TYPES = STREAM_TYPES;
|
|
@@ -8153,7 +8096,6 @@ exports.getMediasoupDevice = getMediasoupDevice;
|
|
|
8153
8096
|
exports.getNumFailedStatsReports = getNumFailedStatsReports;
|
|
8154
8097
|
exports.getNumFailedTrackSsrcLookups = getNumFailedTrackSsrcLookups;
|
|
8155
8098
|
exports.getNumMissingTrackSsrcLookups = getNumMissingTrackSsrcLookups;
|
|
8156
|
-
exports.getOptimalBitrate = getOptimalBitrate;
|
|
8157
8099
|
exports.getPeerConnectionIndex = getPeerConnectionIndex;
|
|
8158
8100
|
exports.getStats = getStats;
|
|
8159
8101
|
exports.getStream = getStream;
|
package/dist/index.d.cts
CHANGED
|
@@ -66,7 +66,7 @@ type IssuesAndMetricsByView = {
|
|
|
66
66
|
aggregated: IssuesAndMetricsAggregated;
|
|
67
67
|
};
|
|
68
68
|
declare const getIssuesAndMetrics: () => {
|
|
69
|
-
[
|
|
69
|
+
[clientId: string]: IssuesAndMetrics | IssuesAndMetricsAggregated;
|
|
70
70
|
aggregated: IssuesAndMetricsAggregated;
|
|
71
71
|
};
|
|
72
72
|
declare function subscribeIssues(subscription: {
|
|
@@ -663,12 +663,6 @@ declare const VIDEO_SETTINGS_VP9_LOW_BANDWIDTH_KEY: {
|
|
|
663
663
|
declare const SCREEN_SHARE_SETTINGS: {
|
|
664
664
|
encodings: {}[];
|
|
665
665
|
};
|
|
666
|
-
declare const SCREEN_SHARE_SETTINGS_LOW_BANDWIDTH: {
|
|
667
|
-
encodings: {
|
|
668
|
-
maxBitrate: number;
|
|
669
|
-
maxFramerate: number;
|
|
670
|
-
}[];
|
|
671
|
-
};
|
|
672
666
|
declare const SCREEN_SHARE_SIMULCAST_SETTINGS: {
|
|
673
667
|
encodings: {
|
|
674
668
|
scaleResolutionDownBy: number;
|
|
@@ -698,7 +692,6 @@ declare const SCREEN_SHARE_SETTINGS_VP9: {
|
|
|
698
692
|
declare const getMediaSettings: (kind: string, isScreenShare: boolean, features: {
|
|
699
693
|
lowDataModeEnabled?: boolean;
|
|
700
694
|
simulcastScreenshareOn?: boolean;
|
|
701
|
-
lowBandwidth?: boolean;
|
|
702
695
|
vp9On?: boolean;
|
|
703
696
|
svcKeyScalabilityModeOn?: boolean;
|
|
704
697
|
}, isSomeoneAlreadyPresenting?: boolean) => {
|
|
@@ -719,8 +712,6 @@ declare function sortCodecs(codecs: Codec[], features: {
|
|
|
719
712
|
preferHardwareDecodingOn?: boolean;
|
|
720
713
|
}): Promise<Codec[]>;
|
|
721
714
|
|
|
722
|
-
declare function getOptimalBitrate(width: number, height: number, frameRate: number): number;
|
|
723
|
-
|
|
724
715
|
declare class ReconnectManager extends EventEmitter {
|
|
725
716
|
_socket: any;
|
|
726
717
|
_clients: any;
|
|
@@ -1817,4 +1808,5 @@ declare class RtcStream {
|
|
|
1817
1808
|
static getTypeFromId(id: string): string;
|
|
1818
1809
|
}
|
|
1819
1810
|
|
|
1820
|
-
export { ADDITIONAL_SCREEN_SHARE_SETTINGS, ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9, AUDIO_SETTINGS,
|
|
1811
|
+
export { ADDITIONAL_SCREEN_SHARE_SETTINGS, ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MAXIMUM_TURN_BANDWIDTH, MAXIMUM_TURN_BANDWIDTH_UNLIMITED, 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, isRelayed, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, _default as rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
|
|
1812
|
+
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
|
-
[
|
|
69
|
+
[clientId: string]: IssuesAndMetrics | IssuesAndMetricsAggregated;
|
|
70
70
|
aggregated: IssuesAndMetricsAggregated;
|
|
71
71
|
};
|
|
72
72
|
declare function subscribeIssues(subscription: {
|
|
@@ -663,12 +663,6 @@ declare const VIDEO_SETTINGS_VP9_LOW_BANDWIDTH_KEY: {
|
|
|
663
663
|
declare const SCREEN_SHARE_SETTINGS: {
|
|
664
664
|
encodings: {}[];
|
|
665
665
|
};
|
|
666
|
-
declare const SCREEN_SHARE_SETTINGS_LOW_BANDWIDTH: {
|
|
667
|
-
encodings: {
|
|
668
|
-
maxBitrate: number;
|
|
669
|
-
maxFramerate: number;
|
|
670
|
-
}[];
|
|
671
|
-
};
|
|
672
666
|
declare const SCREEN_SHARE_SIMULCAST_SETTINGS: {
|
|
673
667
|
encodings: {
|
|
674
668
|
scaleResolutionDownBy: number;
|
|
@@ -698,7 +692,6 @@ declare const SCREEN_SHARE_SETTINGS_VP9: {
|
|
|
698
692
|
declare const getMediaSettings: (kind: string, isScreenShare: boolean, features: {
|
|
699
693
|
lowDataModeEnabled?: boolean;
|
|
700
694
|
simulcastScreenshareOn?: boolean;
|
|
701
|
-
lowBandwidth?: boolean;
|
|
702
695
|
vp9On?: boolean;
|
|
703
696
|
svcKeyScalabilityModeOn?: boolean;
|
|
704
697
|
}, isSomeoneAlreadyPresenting?: boolean) => {
|
|
@@ -719,8 +712,6 @@ declare function sortCodecs(codecs: Codec[], features: {
|
|
|
719
712
|
preferHardwareDecodingOn?: boolean;
|
|
720
713
|
}): Promise<Codec[]>;
|
|
721
714
|
|
|
722
|
-
declare function getOptimalBitrate(width: number, height: number, frameRate: number): number;
|
|
723
|
-
|
|
724
715
|
declare class ReconnectManager extends EventEmitter {
|
|
725
716
|
_socket: any;
|
|
726
717
|
_clients: any;
|
|
@@ -1817,4 +1808,5 @@ declare class RtcStream {
|
|
|
1817
1808
|
static getTypeFromId(id: string): string;
|
|
1818
1809
|
}
|
|
1819
1810
|
|
|
1820
|
-
export { ADDITIONAL_SCREEN_SHARE_SETTINGS, ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9, AUDIO_SETTINGS,
|
|
1811
|
+
export { ADDITIONAL_SCREEN_SHARE_SETTINGS, ADDITIONAL_SCREEN_SHARE_SETTINGS_VP9, AUDIO_SETTINGS, BandwidthTester, EVENTS, KNOCK_MESSAGES, KalmanFilter, Logger, MAXIMUM_TURN_BANDWIDTH, MAXIMUM_TURN_BANDWIDTH_UNLIMITED, 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, isRelayed, maybeRejectNoH264, maybeTurnOnly, modifyMediaCapabilities, removePeerConnection, replaceSSRCs, replaceTracksInStream, _default as rtcManagerEvents, rtcStats, setClientProvider, setCodecPreferenceSDP, setPeerConnectionsForTests, setVideoBandwidthUsingSetParameters, sortCodecs, standardDeviation, startPerformanceMonitor, stopStreamTracks, subscribeIssues, subscribeStats, turnServerOverride, variance };
|
|
1812
|
+
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 };
|