@voltkit-rtc/client 0.9.2 → 0.9.3
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/CHANGELOG.md +19 -0
- package/README.md +5 -2
- package/dist/cjs/diagnostics.d.ts +1 -1
- package/dist/cjs/diagnostics.js +1 -1
- package/dist/cjs/index.d.ts +36 -5
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +181 -23
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/diagnostics.d.ts +1 -1
- package/dist/esm/diagnostics.js +1 -1
- package/dist/esm/index.d.ts +36 -5
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +181 -23
- package/dist/esm/index.js.map +1 -1
- package/package.json +1 -1
- package/src/diagnostics.ts +1 -1
- package/src/index.ts +174 -23
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.9.3
|
|
4
|
+
|
|
5
|
+
Fixes from a tester report on the Flutter SDK 0.9.2, checked here too (the same classes of bug):
|
|
6
|
+
|
|
7
|
+
- **A device swap that fails no longer leaves the new device on, or breaks the one on air.** `switchDevice` with a
|
|
8
|
+
microphone released nothing when the swap failed after capture (a refused swap, or `unpublish()`/`close()` while it
|
|
9
|
+
ran), so the new microphone stayed open; with noise suppression, which drops its previous sound when given another
|
|
10
|
+
track, the microphone on air also went silent. A failed camera swap left the client's stream (`local`, and what a
|
|
11
|
+
reconnect publishes) on the new, stopped camera, and with video effects stopped the picture on air. Now the new
|
|
12
|
+
device and what was made from it are released, and the microphone or camera on air is put back through the
|
|
13
|
+
processor. The microphone's automatic recovery releases the default microphone if it cannot be put on air.
|
|
14
|
+
- **A hidden video stays at the smallest layer on servers that cannot pause it.** A quality (or Auto, or a ceiling)
|
|
15
|
+
picked for a video shown through `attachVideo` while it was hidden was asked for at once, spending data on a video
|
|
16
|
+
nobody could see. It now applies when the video is shown again.
|
|
17
|
+
- **A receive choice that fails is not applied later.** `setReceiveQuality` and `setPreferredLayers` stored the choice
|
|
18
|
+
before the server answered and kept it when the request failed, so it was applied on the next size change or
|
|
19
|
+
reconnect although the app was told it failed. A failed call (refused, or the connection lost before the answer)
|
|
20
|
+
now leaves the last accepted choice in place, and only the latest call can go back.
|
|
21
|
+
|
|
3
22
|
## 0.9.2
|
|
4
23
|
|
|
5
24
|
- **A quality a viewer picks is the quality they get.** `setReceiveQuality(producerId, '1080p' | '720p' | '480p')`
|
package/README.md
CHANGED
|
@@ -141,7 +141,9 @@ for a camera of the same size) and stops the one it replaces. A reconnect
|
|
|
141
141
|
captures the chosen device again. If you publish a canvas or another processed
|
|
142
142
|
track, capture the new camera yourself and pass your track to
|
|
143
143
|
`replaceVideoTrack`; `switchDevice` refuses rather than replace your picture
|
|
144
|
-
with the raw camera.
|
|
144
|
+
with the raw camera. A swap that fails releases the new device and keeps the
|
|
145
|
+
old one on air, put back through noise suppression or video effects if they
|
|
146
|
+
are on (0.9.3).
|
|
145
147
|
|
|
146
148
|
When a published device stops from outside (unplugged, a Bluetooth headset
|
|
147
149
|
switched off, the permission revoked), as Amazon Chime and LiveKit do: the
|
|
@@ -511,7 +513,8 @@ portrait phones, two-layer cameras and screen tracks. It chooses the largest
|
|
|
511
513
|
available copy at or below the choice, or the smallest available if none fits.
|
|
512
514
|
From 0.9.2 that copy is what the viewer gets while the video is shown, even in a
|
|
513
515
|
tile smaller than it; up to 0.9.1, with `attachVideo`, it was only a ceiling.
|
|
514
|
-
Auto sizes it to the element.
|
|
516
|
+
Auto sizes it to the element. A call that fails (refused, or the connection lost
|
|
517
|
+
before the answer) leaves the previous choice in place (0.9.3).
|
|
515
518
|
It never creates a missing resolution: a 1080p screen with 540p and 1080p copies
|
|
516
519
|
uses 540p for the 480p choice. Connection adaptation still applies below the
|
|
517
520
|
ceiling. The preference is remembered across reconnects and ends with that
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* attach to a support ticket: the SDK's recent events (a ring buffer) and its state now.
|
|
7
7
|
*/
|
|
8
8
|
/** This package's version; kept equal to package.json by a test. */
|
|
9
|
-
export declare const SDK_VERSION = "0.9.
|
|
9
|
+
export declare const SDK_VERSION = "0.9.3";
|
|
10
10
|
/** How many recent events the log keeps. */
|
|
11
11
|
export declare const DIAGNOSTICS_LOG_SIZE = 200;
|
|
12
12
|
export interface DiagnosticsEntry {
|
package/dist/cjs/diagnostics.js
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.DiagnosticsLog = exports.DIAGNOSTICS_LOG_SIZE = exports.SDK_VERSION = void 0;
|
|
11
11
|
/** This package's version; kept equal to package.json by a test. */
|
|
12
|
-
exports.SDK_VERSION = '0.9.
|
|
12
|
+
exports.SDK_VERSION = '0.9.3';
|
|
13
13
|
/** How many recent events the log keeps. */
|
|
14
14
|
exports.DIAGNOSTICS_LOG_SIZE = 200;
|
|
15
15
|
/** The events worth keeping for support, and how to summarise each. */
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -544,6 +544,14 @@ export declare class StreamClient {
|
|
|
544
544
|
private readonly screenProducerIds;
|
|
545
545
|
private readonly remoteVideoLayers;
|
|
546
546
|
private readonly receiveQualities;
|
|
547
|
+
/**
|
|
548
|
+
* BR-09 (the Flutter SDK's V092-02): per video, the choice the server last accepted, and a revision every change
|
|
549
|
+
* bumps. A choice is stored before its request (what is asked for is read from it), so a request that fails goes
|
|
550
|
+
* back to the last accepted choice -- not merely the one before it, which may itself be waiting or refused -- and
|
|
551
|
+
* only the latest change may go back, so a late failure never undoes a newer choice. Replies come in request order.
|
|
552
|
+
*/
|
|
553
|
+
private readonly receiveAccepted;
|
|
554
|
+
private readonly receiveRevision;
|
|
547
555
|
private cameraFrameRate;
|
|
548
556
|
private frameRateFallback;
|
|
549
557
|
private frameRateLowSamples;
|
|
@@ -884,6 +892,14 @@ export declare class StreamClient {
|
|
|
884
892
|
* had switched it off. Rejects when no camera is being published.
|
|
885
893
|
*/
|
|
886
894
|
replaceVideoTrack(track: MediaStreamTrack): Promise<void>;
|
|
895
|
+
/**
|
|
896
|
+
* A camera swap that failed (BR-12; the Flutter SDK's V090-02). What is sent is still the old picture -- or nothing,
|
|
897
|
+
* when the producer was replaced and the new one failed. The client's stream goes back to the old picture, so the
|
|
898
|
+
* app's preview and a reconnect never use a track that did not go on air. With a processor, the old camera is put
|
|
899
|
+
* back through it if it dropped the old picture when given the new track. The picture made for the new track is
|
|
900
|
+
* released; the new track itself is the caller's.
|
|
901
|
+
*/
|
|
902
|
+
private undoCameraSwap;
|
|
887
903
|
/**
|
|
888
904
|
* Give a camera producer whose track was swapped in place the bitrates of
|
|
889
905
|
* its new picture. The layout matched, but a bigger picture at the same
|
|
@@ -915,8 +931,10 @@ export declare class StreamClient {
|
|
|
915
931
|
* 1280×720), and a layer above the biggest means the biggest. Leave
|
|
916
932
|
* `temporalLayer` out to keep the full frame rate. It is the most this
|
|
917
933
|
* client is sent: a connection that cannot carry it still gets less. The
|
|
918
|
-
* choice is kept across reconnects and forgotten when the track ends
|
|
919
|
-
*
|
|
934
|
+
* choice is kept across reconnects and forgotten when the track ends; a
|
|
935
|
+
* call that fails (refused, or the connection lost before the answer)
|
|
936
|
+
* leaves the previous choice in place. Rejects for a producer whose video
|
|
937
|
+
* this client is not receiving.
|
|
920
938
|
*/
|
|
921
939
|
setPreferredLayers(producerId: string, spatialLayer: number, temporalLayer?: number): Promise<void>;
|
|
922
940
|
private collectVideoStats;
|
|
@@ -926,9 +944,14 @@ export declare class StreamClient {
|
|
|
926
944
|
* big it is on screen: someone who picks 1080p expects 1080p, not the smaller copy that fits the tile. A connection
|
|
927
945
|
* that cannot carry it still gets less until it recovers, and a video shown through attachVideo is still paused
|
|
928
946
|
* while nobody can see it. 'auto' (the default) goes back to the size it is shown at, or the server's choice.
|
|
929
|
-
* Kept across reconnects.
|
|
947
|
+
* Kept across reconnects; a call that fails leaves the previous choice in place.
|
|
930
948
|
*/
|
|
931
949
|
setReceiveQuality(producerId: string, quality: ReceiveQuality): Promise<void>;
|
|
950
|
+
/** Store `choice` for one video now, before its request; the caller reports how the request ended (BR-09). */
|
|
951
|
+
private changeReceive;
|
|
952
|
+
private setReceiveChoice;
|
|
953
|
+
/** The video ended: its choices go with it. */
|
|
954
|
+
private forgetReceiveChoice;
|
|
932
955
|
private cameraProducer;
|
|
933
956
|
private cameraTask;
|
|
934
957
|
/** Swap the video in the client's own stream, never the app's. */
|
|
@@ -1154,15 +1177,23 @@ export declare class StreamClient {
|
|
|
1154
1177
|
* captured with the constraints publish was given (size, frame rate, echo cancellation) and its track replaces the
|
|
1155
1178
|
* published one: a camera of the same size swaps with no pause for viewers, a microphone always does. The track it
|
|
1156
1179
|
* replaces is stopped, releasing that device; the client's own stream follows (`localStreamChanged`), and a
|
|
1157
|
-
* reconnect captures the chosen device again. A camera or microphone that is switched off stays off.
|
|
1180
|
+
* reconnect captures the chosen device again. A camera or microphone that is switched off stays off. A swap that
|
|
1181
|
+
* fails releases the new device and keeps the old one on air, put back through a noise suppressor or video effects
|
|
1182
|
+
* if one is set.
|
|
1158
1183
|
*
|
|
1159
1184
|
* For a camera published as a canvas or another processed track, capture the new camera yourself and pass your
|
|
1160
1185
|
* processed track to `replaceVideoTrack`; this rejects rather than replace your picture with the raw camera.
|
|
1161
1186
|
* Rejects when that kind is not being published.
|
|
1162
1187
|
*/
|
|
1163
1188
|
switchDevice(kind: 'audioinput' | 'videoinput', deviceId: string): Promise<void>;
|
|
1164
|
-
/**
|
|
1189
|
+
/**
|
|
1190
|
+
* Put `track` (one the SDK captured) on the microphone producer and in the client's own stream; the replaced track is
|
|
1191
|
+
* stopped. A swap that fails releases `track` and the sound made from it, and with a processor puts the microphone
|
|
1192
|
+
* still on air back through it: given the new track, the processor dropped that sound (BR-10, BR-11).
|
|
1193
|
+
*/
|
|
1165
1194
|
private adoptAudioTrack;
|
|
1195
|
+
/** After a failed microphone swap with a processor: send the microphone on air through it again (it dropped that sound). */
|
|
1196
|
+
private restoreMic;
|
|
1166
1197
|
/** Notice when the producer's present track stops from outside (unplugged, permission revoked). */
|
|
1167
1198
|
private watchTrackEnded;
|
|
1168
1199
|
/**
|
package/dist/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC5F;;;;;;GAMG;AACH,OAAO,EAAU,KAAK,KAAK,IAAI,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAO5D,KAAK,eAAe,GAAG,EAAE,CAAC,eAAe,CAAC;AAO1C,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAExF,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,gBAAgB,EACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAA6D,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAK9G,OAAO,EAAgD,KAAK,gBAAgB,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC3H,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,EAA+B,KAAK,WAAW,EAA6B,MAAM,kBAAkB,CAAC;AAC5G,OAAO,EAA4E,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAC1H,OAAO,EAAsD,KAAK,UAAU,EAAE,KAAK,mBAAmB,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAE/I,OAAO,EASL,KAAK,eAAe,EACrB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAe,KAAK,UAAU,EAAE,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAC/F,OAAO,EAOL,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,UAAU,EAGf,KAAK,UAAU,EAEf,KAAK,WAAW,EAChB,KAAK,YAAY,EAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EAML,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACpF,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACxH,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACrD,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACxE,YAAY,EAAE,eAAe,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC7F,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAChF,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACxH,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAChI,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjG,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC7F,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACjI,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,UAAU,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAClE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC1G,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAChF,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC5F,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC1H,YAAY,EACV,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,WAAW,EACX,SAAS,EACT,kBAAkB,GACnB,MAAM,WAAW,CAAC;AAEnB,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE9D,oEAAoE;AACpE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,iBAAiB,GAAG,qBAAqB,GAAG,uBAAuB,GAAG,WAAW,GAAG,MAAM,CAAC;IACnG,YAAY,EAAE,MAAM,CAAC;IACrB,6DAA6D;IAC7D,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,oGAAoG;IACpG,gBAAgB,EAAE,MAAM,CAAC;IACzB,kHAAkH;IAClH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,2FAA2F;AAC3F,MAAM,WAAW,mBAAmB;IAClC,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wHAAwH;AACxH,eAAO,MAAM,iBAAiB,wEAAwF,CAAC;AACvH,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,QAAQ,GAAG,aAAa,GAAG,SAAS,GAAG,MAAM,CAAC;AAEtF,2EAA2E;AAC3E,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,iDAAiD;IACjD,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAC5C,0GAA0G;IAC1G,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wCAAwC;AACxC,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,gBAAgB,CAAC;IACxB,+DAA+D;IAC/D,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,qEAAqE;AACrE,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,qBAAqB,EAAE,eAAe,CAAC;IACvC,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wEAAwE;IACxE,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IACrB,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB;;;OAGG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,WAAW,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,oEAAoE;IACpE,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC;IACpB;;;;OAIG;IACH,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB;;;;;;;;;OASG;IACH,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB;;;;;;;OAOG;IACH,qBAAqB,CAAC,EAAE,qBAAqB,GAAG,oBAAoB,GAAG,UAAU,CAAC;CACnF;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,wFAAwF;IACxF,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,GAAG,UAAU,GAAG,gBAAgB,CAAC;AAExG,0GAA0G;AAC1G,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,2FAA2F;AAC3F,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,WAAW,CAAC;IACpB,4DAA4D;IAC5D,KAAK,EAAE,MAAM,CAAC;IACd,8DAA8D;IAC9D,QAAQ,EAAE,OAAO,CAAC;IAClB,oCAAoC;IACpC,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,2HAA2H;AAC3H,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,kBAAkB,CAAC;AAEpE,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,WAAW,CAAC;IACpB,iGAAiG;IACjG,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,oBAAoB,CAAC;CAC9B;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,6EAA6E;IAC7E,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,IAAI,CAAC;IACX,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,KAAK,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,MAAM,EAAE,OAAO,CAAC;IAChB,kGAAkG;IAClG,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,UAAU,EAAE,CAAA;KAAE,CAAC;CAC1C;AAqBD,MAAM,WAAW,YAAa,SAAQ,UAAU;IAC9C,uEAAuE;IACvE,iBAAiB,EAAE,CAAC,CAAC,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IAC/E,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,oGAAoG;IACpG,sBAAsB,EAAE,CAAC,CAAC,EAAE;QAAE,KAAK,EAAE,eAAe,CAAC;QAAC,QAAQ,EAAE,eAAe,CAAA;KAAE,KAAK,IAAI,CAAC;IAC3F,MAAM,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IACrC,KAAK,EAAE,CAAC,IAAI,EAAE;QACZ,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;QACxB,KAAK,EAAE,gBAAgB,CAAC;QACxB,UAAU,EAAE,MAAM,CAAC;QACnB,wGAAwG;QACxG,MAAM,EAAE,WAAW,CAAC;KACrB,KAAK,IAAI,CAAC;IACX,UAAU,EAAE,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACrE,8FAA8F;IAC9F,UAAU,EAAE,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;QAAC,MAAM,EAAE,WAAW,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IACpI,iBAAiB,EAAE,CAAC,CAAC,EAAE,eAAe,KAAK,IAAI,CAAC;IAChD,eAAe,EAAE,CAAC,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACpE,gBAAgB,EAAE,CAAC,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,EAAE,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IACpG,oEAAoE;IACpE,kBAAkB,EAAE,CAAC,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IACzE,WAAW,EAAE,CAAC,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,KAAK,IAAI,CAAC;IAC3D,UAAU,EAAE,CAAC,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACxH;;;;OAIG;IACH,UAAU,EAAE,CAAC,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,EAAE,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IACxF;;;;OAIG;IACH,YAAY,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,CAAC;IACvC,kHAAkH;IAClH,mBAAmB,EAAE,CAAC,CAAC,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACrE,aAAa,EAAE,CAAC,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IAC/E,UAAU,EAAE,CAAC,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC5C,MAAM,EAAE,CAAC,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACrD,kBAAkB,EAAE,CAAC,CAAC,EAAE;QAAE,MAAM,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,KAAK,IAAI,CAAC;IAC3E,gBAAgB,EAAE,CAAC,CAAC,EAAE;QAAE,MAAM,EAAE,SAAS,GAAG,aAAa,CAAA;KAAE,KAAK,IAAI,CAAC;IACrE;;;;OAIG;IACH,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAC;IAC5B,iBAAiB,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IACpD,yFAAyF;IACzF,kBAAkB,EAAE,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;IACzD,4FAA4F;IAC5F,iBAAiB,EAAE,CAAC,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACnD;;;;OAIG;IACH,MAAM,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;IACvC;;;;OAIG;IACH,UAAU,EAAE,CAAC,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC1C;;;;;OAKG;IACH,SAAS,EAAE,CAAC,CAAC,EAAE,eAAe,KAAK,IAAI,CAAC;IACxC;;;;;OAKG;IACH,aAAa,EAAE,CAAC,CAAC,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAChD;;;;OAIG;IACH,cAAc,EAAE,CAAC,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IAC5C;;;;;;;OAOG;IACH,YAAY,EAAE,CAAC,CAAC,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC7C;;;;;;;OAOG;IACH,cAAc,EAAE,CAAC,CAAC,EAAE;QAAE,WAAW,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IACtD;;;;;OAKG;IACH,cAAc,EAAE,CAAC,CAAC,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACjD;;;;OAIG;IACH,eAAe,EAAE,CAAC,CAAC,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IACpD;;;OAGG;IACH,cAAc,EAAE,CAAC,CAAC,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACjD;;;;;;OAMG;IACH,eAAe,EAAE,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;QAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IACvG;;;;OAIG;IACH,WAAW,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;IAC5C;;;;OAIG;IACH,cAAc,EAAE,CAAC,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,KAAK,IAAI,CAAC;IACpD;;;;;OAKG;IACH,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,IAAI,CAAC;IACxC;;;;OAIG;IACH,cAAc,EAAE,CAAC,CAAC,EAAE;QAAE,OAAO,EAAE,gBAAgB,CAAC;QAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;KAAE,KAAK,IAAI,CAAC;CACzF;AAoBD,0DAA0D;AAC1D,eAAO,MAAM,aAAa,iCAAoE,CAAC;AAwE/F,qBAAa,YAAY;IA8UX,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAyB,OAAO,CAAC,QAAQ,CAAC,OAAO;IA7UnF,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAIrB;IACF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAI5B;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAOxB;IAEH,OAAO,CAAC,iBAAiB;YAYX,eAAe;IAc7B,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,aAAa,CAA0B;IAC/C,OAAO,CAAC,aAAa,CAA0B;IAK/C,OAAO,CAAC,oBAAoB,CAAmC;IAC/D,OAAO,CAAC,oBAAoB,CAAmC;IAC/D,+FAA+F;IAC/F,OAAO,CAAC,kBAAkB,CAAmC;IAC7D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8B;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmC;IAC7D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA+B;IACzD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA+B;IACzD,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,SAAS,CAAgC;IAKjD,OAAO,CAAC,aAAa,CAAS;IAC9B,4DAA4D;IAC5D,OAAO,CAAC,YAAY,CAA4C;IAChE;;;;OAIG;IACH,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,kBAAkB,CAA0B;IACpD,OAAO,CAAC,kBAAkB,CAAuC;IACjE,OAAO,CAAC,cAAc,CAAsB;IAC5C,yFAAyF;IACzF,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,eAAe,CAAuB;IAC9C;;;;;OAKG;IACH,OAAO,CAAC,cAAc,CAAK;IAG3B,OAAO,CAAC,UAAU,CAAuC;IACzD,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,UAAU,CAAwB;IAC1C,OAAO,CAAC,kBAAkB,CAAQ;IAClC,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,mBAAmB,CAA6B;IACxD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAqB;IACvD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmC;IACrE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAqC;IACtE;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAoC;IACpE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA6B;IAC7D,OAAO,CAAC,eAAe,CAAe;IACtC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,sBAAsB,CAAK;IACnC,8FAA8F;IAC9F,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkC;IAChE,gFAAgF;IAChF,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA6B;IAC3D;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAsC;IACtE;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAKtB;IACH,mGAAmG;IACnG,OAAO,CAAC,gBAAgB,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmE;IAC9F,OAAO,CAAC,eAAe,CAA+C;IACtE,OAAO,CAAC,kBAAkB,CAAS;IACnC,gHAAgH;IAChH,OAAO,CAAC,sBAAsB,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA+E;IACjH,OAAO,CAAC,sBAAsB,CAA+C;IAC7E,OAAO,CAAC,yBAAyB,CAAS;IAC1C,OAAO,CAAC,oBAAoB,CAAS;IACrC,iFAAiF;IACjF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqB;IAClD,4FAA4F;IAC5F,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;IACpD,qEAAqE;IACrE,OAAO,CAAC,UAAU,CAA+C;IACjE,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwB;IACjD,6FAA6F;IAC7F,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwE;IAC/F,OAAO,CAAC,WAAW,CAA+C;IAClE,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA8D;IAC5F,uGAAuG;IACvG,OAAO,CAAC,cAAc,CAAoC;IAC1D,OAAO,CAAC,MAAM,CAAiC;IAC/C,OAAO,CAAC,cAAc,CAAoC;IAC1D,yHAAyH;IACzH,OAAO,CAAC,MAAM,CAAiC;IAC/C,OAAO,CAAC,MAAM,CAAiC;IAC/C,uEAAuE;IACvE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwB;IACvD,4GAA4G;IAC5G,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA+B;IAC/D,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8C;IACxE,yGAAyG;IACzG,OAAO,CAAC,cAAc,CAAuB;IAC7C,6EAA6E;IAC7E,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA+C;IAC9E,uEAAuE;IACvE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;IACpD,iHAAiH;IACjH,OAAO,CAAC,gBAAgB,CAAS;IACjC,oCAAoC;IACpC,OAAO,CAAC,iBAAiB,CAAS;IAClC,+FAA+F;IAC/F,OAAO,CAAC,gBAAgB,CAAS;IACjC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6B;IAC1D,8EAA8E;IAC9E,OAAO,CAAC,cAAc,CAAsD;IAC5E,6FAA6F;IAC7F,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAyB;IACxD,OAAO,CAAC,UAAU,CAAS;IAC3B;;;;OAIG;IACH,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,gBAAgB,CAAK;IAC7B,sFAAsF;IACtF,OAAO,CAAC,UAAU,CAAS;IAC3B,2EAA2E;IAC3E,OAAO,CAAC,eAAe,CAAgC;IAIvD,OAAO,CAAC,WAAW,CAAuC;IAI1D,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA4B;IAC9D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA4B;IAC9D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAYzB;IACF,4DAA4D;IAC5D,OAAO,CAAC,KAAK,CAA2B;IACxC,qGAAqG;IACrG,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,UAAU,CAA8C;IAChE;;;;;;OAMG;IACH,OAAO,CAAC,mBAAmB,CAAK;IAChC,0IAA0I;IAC1I,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,gBAAgB,CAAK;IAC7B,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqF;IAChH,yFAAyF;IACzF,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqC;IACnE,qFAAqF;IACrF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;IAChD,yDAAyD;IACzD,OAAO,CAAC,UAAU,CAAuB;IAEzC,OAAO,CAAC,QAAQ,CAAuC;IAEvD,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAI3B;IAEF;;;;;;;OAOG;WACU,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC;IAkB9G;;;;OAIG;WACU,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;gBAY/B,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAmB,OAAO,GAAE,aAAkB;IAMvG,EAAE,CAAC,CAAC,SAAS,MAAM,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI;IAwB3E,qFAAqF;IACrF,IAAI,eAAe,IAAI,eAAe,CAErC;IAED,OAAO,CAAC,QAAQ;IAYhB,8DAA8D;IAC9D,OAAO,CAAC,MAAM;IAOd;;;;;;OAMG;IACH,OAAO,CAAC,GAAG;IAKX,OAAO,CAAC,UAAU;IAmBlB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,IAAI;IAaN,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC;IAqGpC;;;;OAIG;IACH,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,UAAU;IAwElB,OAAO,CAAC,YAAY;IAmBpB;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAKrB;;;;OAIG;YACW,iBAAiB;IA8C/B,KAAK,IAAI,IAAI;IA+Cb,OAAO,CAAC,aAAa;IAoCrB;;;;OAIG;IACH,IAAI,IAAI,IAAI,UAAU,GAAG,IAAI,CAE5B;IAED,yFAAyF;IACzF,IAAI,YAAY,IAAI,eAAe,EAAE,CAEpC;IAED,gDAAgD;IAChD,IAAI,YAAY,IAAI,WAAW,EAAE,CAWhC;IAED;;;;;OAKG;IACH,IAAI,gBAAgB,IAAI,gBAAgB,CAEvC;IAED,0GAA0G;IAC1G,IAAI,WAAW,IAAI,QAAQ,GAAG,QAAQ,GAAG,IAAI,CAE5C;IAID;;;;;;;;;;OAUG;IACG,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IA0BvE,kGAAkG;IAClG,OAAO,CAAC,QAAQ;IAMhB;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IAoB7B,uFAAuF;IACvF,OAAO,CAAC,gBAAgB;IAIxB,4FAA4F;YAC9E,cAAc;IAY5B,OAAO,CAAC,GAAG;IAgBX,uDAAuD;IACvD,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,SAAS;YA2BH,OAAO;IAmNrB,qGAAqG;IACrG,OAAO,CAAC,YAAY;IAIpB,4FAA4F;IAC5F,OAAO,CAAC,UAAU;IAalB,OAAO,CAAC,mBAAmB;YASb,mBAAmB;IA0BjC;;;;;;;;OAQG;IACH,OAAO,CAAC,YAAY;IAWpB,8FAA8F;IAC9F,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,mBAAmB;YASb,mBAAmB;IAiBjC;;;;;;;;;;;OAWG;IACG,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,CAAC,EAAE,sBAAsB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;YAanG,aAAa;IAwD3B;;;OAGG;IACH,IAAI,YAAY,IAAI,YAAY,CAG/B;IAED;;;;;;;OAOG;IACG,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAiBnE,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,OAAO;IAMf,mGAAmG;IACnG,OAAO,CAAC,eAAe;IAUvB;;;;OAIG;YACW,UAAU;IA4BxB,6FAA6F;YAC/E,YAAY;IAS1B,2EAA2E;IAC3E,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED;;;OAGG;IACH,IAAI,YAAY,IAAI,YAAY,CAE/B;IAED,0GAA0G;IAC1G,IAAI,cAAc,IAAI,EAAE,GAAG,EAAE,CAE5B;IAED;;;;;OAKG;IACG,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAYnE;;;;;;OAMG;IACG,iBAAiB,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;IAuB7D,mDAAmD;IACnD,OAAO,CAAC,QAAQ;IAKhB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAUrB;;;;;;;;;;;;;OAaG;IACG,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAuE/D;;;;;;OAMG;YACW,cAAc;IA8B5B;;;;;;OAMG;YACW,kBAAkB;IAuBhC;;;;;;;OAOG;IACG,aAAa,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAIrD;;;;OAIG;IACG,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAe5E;;;;;;;;;;;;OAYG;IACG,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAuB3F,iBAAiB;IAe/B;;;;;;;OAOG;IACG,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBnF,8GAA8G;IAC9G,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,gBAAgB;IAOxB,+CAA+C;IAC/C,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,UAAU;IAMlB,kEAAkE;IAClE,OAAO,CAAC,eAAe;IAQvB,iGAAiG;YACnF,eAAe;IAW7B,iFAAiF;IACjF,OAAO,CAAC,UAAU;IAKlB;;;;OAIG;YACW,aAAa;IA6E3B;;;;;;;;OAQG;IACG,qBAAqB,CAAC,EAAE,UAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrD,qDAAqD;IACrD,IAAI,sBAAsB,IAAI,OAAO,CAEpC;IAED;;;;OAIG;YACW,gBAAgB;IAoB9B;;;;OAIG;YACW,YAAY;IAS1B;;;;OAIG;YACW,aAAa;IAI3B;;;OAGG;YACW,WAAW;IAuBzB,oGAAoG;IACpG,OAAO,CAAC,mBAAmB;IAS3B,+EAA+E;YACjE,0BAA0B;IAcxC,kFAAkF;IAClF,OAAO,CAAC,cAAc;IAItB;;;;;;OAMG;YACW,SAAS;IAiDvB,4FAA4F;IACtF,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,WAAW,CAAC;IA0C7E,wFAAwF;IAClF,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAItC,OAAO,CAAC,aAAa;YAWP,UAAU;YAWV,aAAa;IA2C3B;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;YAgBN,YAAY;IA6B1B;;;;;;;;;OASG;IACG,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IA0B5E,OAAO,CAAC,SAAS;YAMH,YAAY;IA2B1B,uEAAuE;IACvE,IAAI,eAAe,IAAI,OAAO,CAE7B;IAED,IAAI,YAAY,IAAI,OAAO,CAG1B;IAED,iFAAiF;IACjF,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIpC,gFAAgF;IAC1E,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAStD;;;;OAIG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAKhC,+DAA+D;YACjD,UAAU;IAaxB,OAAO,CAAC,cAAc;YAQR,OAAO;IAyCrB;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;IAIxB,sFAAsF;IACtF,OAAO,CAAC,cAAc;YAWR,UAAU;IA0ExB;;;;;;;;;;;;;;OAcG;IACH,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,IAAI;IAI7D;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAiBvB;;;;;;OAMG;IACG,iBAAiB,CAAC,SAAS,EAAE,mBAAmB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAe7E,yCAAyC;IACzC,IAAI,mBAAmB,IAAI,mBAAmB,GAAG,IAAI,CAEpD;IAED,mHAAmH;YACrG,UAAU;IAWxB,kGAAkG;IAClG,OAAO,CAAC,aAAa;IAMrB;;;;;;;OAOG;IACG,iBAAiB,CAAC,SAAS,EAAE,mBAAmB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB7E,+CAA+C;IAC/C,IAAI,mBAAmB,IAAI,mBAAmB,GAAG,IAAI,CAEpD;IAED,4GAA4G;IAC5G,OAAO,CAAC,YAAY;IAIpB;;;OAGG;YACW,aAAa;IAuB3B,kHAAkH;IAClH,OAAO,CAAC,eAAe;IAUvB;;;;;;OAMG;IACG,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IA+C5C;;;;;OAKG;IACG,IAAI,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;IAcvD,OAAO,CAAC,YAAY;YASN,aAAa;IAe3B;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAKxC,OAAO,CAAC,iBAAiB;IAWzB,+EAA+E;IAC/E,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,cAAc;IAMtB;;;OAGG;YACW,iBAAiB;IAiC/B,iGAAiG;IACjG,OAAO,CAAC,eAAe;IAUvB,8FAA8F;IAC9F,OAAO,CAAC,eAAe;YAQT,YAAY;IAwB1B;;;OAGG;IACH,WAAW,CAAC,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAItD;;;;;;;;;;;;OAYG;IACG,YAAY,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA6CtF;;;;OAIG;YACW,eAAe;IAqB7B,4HAA4H;YAC9G,UAAU;IAgBxB,mGAAmG;IACnG,OAAO,CAAC,eAAe;IAyBvB;;;;OAIG;YACW,YAAY;IA8B1B,4DAA4D;IAC5D,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,eAAe;YAMT,cAAc;IAa5B,wGAAwG;IACxG,OAAO,CAAC,YAAY;IAKpB;;;;;;OAMG;IACH,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAM5C;;;;;;OAMG;IACH,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAM1C,OAAO,CAAC,qBAAqB;YAYf,uBAAuB;IAerC,gHAAgH;YAClG,mBAAmB;IAqBjC,0EAA0E;IAC1E,IAAI,uBAAuB,IAAI,OAAO,CAErC;IAED,wFAAwF;IACxF,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,YAAY;IAWpB,wGAAwG;IACxG,OAAO,CAAC,cAAc;IAWtB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAkBtB,OAAO,CAAC,cAAc;YAKR,gBAAgB;IAe9B,2FAA2F;YAC7E,aAAa;IAkC3B,4DAA4D;IAC5D,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,OAAO,CAAC,YAAY;IAOpB;;;;OAIG;IACG,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9C,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpD,OAAO,CAAC,oBAAoB;YAYd,cAAc;IAuC5B,oHAAoH;IACpH,OAAO,CAAC,QAAQ;IAQhB,8DAA8D;IACxD,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAmChC,4FAA4F;IACtF,cAAc,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOxD,aAAa,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAK/C,IAAI,KAAK,IAAI,WAAW,GAAG,IAAI,CAE9B;IAID,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAC/D,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAC9C,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IACnD;;;;OAIG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,EAAE,MAAM,UAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAGtF,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;IACvD,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IACzD;;;;;;OAMG;IACH,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAO3B,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC;IAShC;;;;;OAKG;IACG,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1D,uDAAuD;IACjD,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC;;;;OAIG;IACG,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3C,sCAAsC;IAChC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7C,kFAAkF;IAC5E,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAInE;;;;;;;OAOG;IACG,eAAe,CACnB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,OAAO,GAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;KAAO,GAC1D,OAAO,CAAC,OAAO,CAAC;IAcnB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,kBAAuB,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IAI7F,6EAA6E;IACvE,WAAW,CAAC,IAAI,GAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAKzF,4DAA4D;IAC5D,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAClD,sEAAsE;IACtE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,UAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAC1D,8EAA8E;IAC9E,SAAS,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAC5C,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC;CACnC"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -285,6 +285,14 @@ class StreamClient {
|
|
|
285
285
|
screenProducerIds = new Set();
|
|
286
286
|
remoteVideoLayers = new Map();
|
|
287
287
|
receiveQualities = new Map();
|
|
288
|
+
/**
|
|
289
|
+
* BR-09 (the Flutter SDK's V092-02): per video, the choice the server last accepted, and a revision every change
|
|
290
|
+
* bumps. A choice is stored before its request (what is asked for is read from it), so a request that fails goes
|
|
291
|
+
* back to the last accepted choice -- not merely the one before it, which may itself be waiting or refused -- and
|
|
292
|
+
* only the latest change may go back, so a late failure never undoes a newer choice. Replies come in request order.
|
|
293
|
+
*/
|
|
294
|
+
receiveAccepted = new Map();
|
|
295
|
+
receiveRevision = new Map();
|
|
288
296
|
cameraFrameRate = 30;
|
|
289
297
|
frameRateFallback = false;
|
|
290
298
|
frameRateLowSamples = 0;
|
|
@@ -658,10 +666,9 @@ class StreamClient {
|
|
|
658
666
|
// A video that ended while this client was away sends it no
|
|
659
667
|
// producerClosed: forget the layers asked for it.
|
|
660
668
|
const present = new Set(result.producers.map((p) => p.producerId));
|
|
661
|
-
for (const producerId of this.preferredLayers.keys()) {
|
|
669
|
+
for (const producerId of new Set([...this.preferredLayers.keys(), ...this.receiveAccepted.keys()])) {
|
|
662
670
|
if (!present.has(producerId)) {
|
|
663
|
-
this.
|
|
664
|
-
this.receiveQualities.delete(producerId);
|
|
671
|
+
this.forgetReceiveChoice(producerId);
|
|
665
672
|
this.remoteVideoLayers.delete(producerId);
|
|
666
673
|
}
|
|
667
674
|
}
|
|
@@ -881,6 +888,8 @@ class StreamClient {
|
|
|
881
888
|
this.teardownMedia();
|
|
882
889
|
this.preferredLayers.clear();
|
|
883
890
|
this.receiveQualities.clear();
|
|
891
|
+
this.receiveAccepted.clear();
|
|
892
|
+
this.receiveRevision.clear();
|
|
884
893
|
this.remoteVideoLayers.clear();
|
|
885
894
|
this.releaseScreen();
|
|
886
895
|
this.music?.close();
|
|
@@ -1167,8 +1176,7 @@ class StreamClient {
|
|
|
1167
1176
|
case 'producerClosed': {
|
|
1168
1177
|
const { producerId, identity } = data;
|
|
1169
1178
|
this.subscriptions.delete(producerId);
|
|
1170
|
-
this.
|
|
1171
|
-
this.receiveQualities.delete(producerId);
|
|
1179
|
+
this.forgetReceiveChoice(producerId);
|
|
1172
1180
|
this.remoteVideoLayers.delete(producerId);
|
|
1173
1181
|
this.skippedVideos.delete(producerId);
|
|
1174
1182
|
this.adaptivePaused.delete(producerId);
|
|
@@ -1761,7 +1769,10 @@ class StreamClient {
|
|
|
1761
1769
|
const shown = current?.track ?? this.localStream?.getVideoTracks()[0] ?? null;
|
|
1762
1770
|
const previousSource = shown ? this.cameraSource(shown) : null;
|
|
1763
1771
|
const before = this.camOut;
|
|
1772
|
+
const beforeRaw = this.camRaw;
|
|
1773
|
+
const wasPaused = current?.paused ?? false;
|
|
1764
1774
|
const sent = await this.processCamera(track);
|
|
1775
|
+
let swapped = false;
|
|
1765
1776
|
try {
|
|
1766
1777
|
if (!current) {
|
|
1767
1778
|
// The republish reads the camera's state off the track it sends, and
|
|
@@ -1775,8 +1786,10 @@ class StreamClient {
|
|
|
1775
1786
|
}
|
|
1776
1787
|
}
|
|
1777
1788
|
this.adoptVideoTrack(sent);
|
|
1778
|
-
if (!current || current.track === sent)
|
|
1789
|
+
if (!current || current.track === sent) {
|
|
1790
|
+
swapped = true;
|
|
1779
1791
|
return;
|
|
1792
|
+
}
|
|
1780
1793
|
const previous = current.track;
|
|
1781
1794
|
const paused = current.paused;
|
|
1782
1795
|
try {
|
|
@@ -1787,11 +1800,13 @@ class StreamClient {
|
|
|
1787
1800
|
if (this.cameraEncodings && (0, quality_js_1.sameLayout)(this.cameraEncodings, next) &&
|
|
1788
1801
|
previousSize?.width === width && previousSize?.height === height) {
|
|
1789
1802
|
await current.replaceTrack({ track: sent });
|
|
1803
|
+
swapped = true;
|
|
1790
1804
|
this.watchTrackEnded(current);
|
|
1791
1805
|
await this.applyLayerBitrates(current, next);
|
|
1792
1806
|
return;
|
|
1793
1807
|
}
|
|
1794
1808
|
await this.reproduceCamera(current, sent);
|
|
1809
|
+
swapped = true;
|
|
1795
1810
|
}
|
|
1796
1811
|
finally {
|
|
1797
1812
|
// Pausing switched the old track off (mediasoup-client pauses that
|
|
@@ -1802,13 +1817,57 @@ class StreamClient {
|
|
|
1802
1817
|
previous.enabled = true;
|
|
1803
1818
|
}
|
|
1804
1819
|
}
|
|
1820
|
+
catch (err) {
|
|
1821
|
+
if (!swapped) {
|
|
1822
|
+
await this.undoCameraSwap({ producer: current ?? null, given: track, made: sent, shown, source: previousSource, raw: beforeRaw, out: before, paused: wasPaused });
|
|
1823
|
+
}
|
|
1824
|
+
throw err;
|
|
1825
|
+
}
|
|
1805
1826
|
finally {
|
|
1806
|
-
// The processor's previous picture is no longer sent or shown.
|
|
1807
|
-
if (before && before !== this.camOut)
|
|
1827
|
+
// The processor's previous picture is no longer sent or shown -- once the new one is.
|
|
1828
|
+
if (swapped && before && before !== this.camOut)
|
|
1808
1829
|
before.stop();
|
|
1809
1830
|
}
|
|
1810
1831
|
});
|
|
1811
1832
|
}
|
|
1833
|
+
/**
|
|
1834
|
+
* A camera swap that failed (BR-12; the Flutter SDK's V090-02). What is sent is still the old picture -- or nothing,
|
|
1835
|
+
* when the producer was replaced and the new one failed. The client's stream goes back to the old picture, so the
|
|
1836
|
+
* app's preview and a reconnect never use a track that did not go on air. With a processor, the old camera is put
|
|
1837
|
+
* back through it if it dropped the old picture when given the new track. The picture made for the new track is
|
|
1838
|
+
* released; the new track itself is the caller's.
|
|
1839
|
+
*/
|
|
1840
|
+
async undoCameraSwap(undo) {
|
|
1841
|
+
const { producer, given, made, shown, source, raw, out, paused } = undo;
|
|
1842
|
+
if (made !== given)
|
|
1843
|
+
made.stop();
|
|
1844
|
+
const sending = () => producer !== null && !producer.closed && this.cameraProducer() === producer;
|
|
1845
|
+
let picture = shown;
|
|
1846
|
+
if (shown && shown.readyState === 'ended' && source && source !== shown && source.readyState !== 'ended') {
|
|
1847
|
+
// The processor dropped the picture on air: make it again from the old camera, and send that.
|
|
1848
|
+
picture = await this.processCamera(source);
|
|
1849
|
+
if (sending() && producer && producer.track !== picture) {
|
|
1850
|
+
try {
|
|
1851
|
+
await producer.replaceTrack({ track: picture });
|
|
1852
|
+
this.watchTrackEnded(producer);
|
|
1853
|
+
}
|
|
1854
|
+
catch (err) {
|
|
1855
|
+
this.emit('error', new Error(`the camera could not be put back after a failed switch: ${err?.message ?? err}`));
|
|
1856
|
+
}
|
|
1857
|
+
}
|
|
1858
|
+
}
|
|
1859
|
+
else {
|
|
1860
|
+
// The picture on air is as it was, and so is what stands behind it.
|
|
1861
|
+
this.camRaw = raw;
|
|
1862
|
+
this.camOut = out;
|
|
1863
|
+
}
|
|
1864
|
+
if (!picture || picture.readyState === 'ended')
|
|
1865
|
+
return;
|
|
1866
|
+
// With nothing sending it, a republish reads the camera's state off the track: a paused camera stays paused.
|
|
1867
|
+
if (!sending())
|
|
1868
|
+
picture.enabled = !paused;
|
|
1869
|
+
this.adoptVideoTrack(picture);
|
|
1870
|
+
}
|
|
1812
1871
|
/**
|
|
1813
1872
|
* Give a camera producer whose track was swapped in place the bitrates of
|
|
1814
1873
|
* its new picture. The layout matched, but a bigger picture at the same
|
|
@@ -1882,8 +1941,10 @@ class StreamClient {
|
|
|
1882
1941
|
* 1280×720), and a layer above the biggest means the biggest. Leave
|
|
1883
1942
|
* `temporalLayer` out to keep the full frame rate. It is the most this
|
|
1884
1943
|
* client is sent: a connection that cannot carry it still gets less. The
|
|
1885
|
-
* choice is kept across reconnects and forgotten when the track ends
|
|
1886
|
-
*
|
|
1944
|
+
* choice is kept across reconnects and forgotten when the track ends; a
|
|
1945
|
+
* call that fails (refused, or the connection lost before the answer)
|
|
1946
|
+
* leaves the previous choice in place. Rejects for a producer whose video
|
|
1947
|
+
* this client is not receiving.
|
|
1887
1948
|
*/
|
|
1888
1949
|
async setPreferredLayers(producerId, spatialLayer, temporalLayer) {
|
|
1889
1950
|
if (!isLayer(spatialLayer) || (temporalLayer !== undefined && !isLayer(temporalLayer))) {
|
|
@@ -1894,12 +1955,19 @@ class StreamClient {
|
|
|
1894
1955
|
throw new Error(`setPreferredLayers: this client is not receiving a video with producerId ${producerId}`);
|
|
1895
1956
|
}
|
|
1896
1957
|
const layers = temporalLayer === undefined ? { spatialLayer } : { spatialLayer, temporalLayer };
|
|
1897
|
-
|
|
1898
|
-
//
|
|
1899
|
-
this.
|
|
1958
|
+
// Stored before the request, which reads it; a request that fails (refused, or the connection lost before the
|
|
1959
|
+
// answer) leaves the last accepted choice in place (BR-09).
|
|
1960
|
+
const change = this.changeReceive(producerId, { quality: undefined, layers });
|
|
1900
1961
|
// Shown through attachVideo: the lower of this and the size it is shown at.
|
|
1901
1962
|
const adaptive = this.adaptive.current(producerId);
|
|
1902
|
-
|
|
1963
|
+
try {
|
|
1964
|
+
await this.rpc('setPreferredLayers', { consumerId: consumer.id, ...(adaptive ? this.effectiveLayers(producerId, adaptive) : layers) });
|
|
1965
|
+
}
|
|
1966
|
+
catch (err) {
|
|
1967
|
+
change.failed();
|
|
1968
|
+
throw err;
|
|
1969
|
+
}
|
|
1970
|
+
change.accepted();
|
|
1903
1971
|
}
|
|
1904
1972
|
async collectVideoStats(baseline) {
|
|
1905
1973
|
const producer = this.cameraProducer();
|
|
@@ -1924,7 +1992,7 @@ class StreamClient {
|
|
|
1924
1992
|
* big it is on screen: someone who picks 1080p expects 1080p, not the smaller copy that fits the tile. A connection
|
|
1925
1993
|
* that cannot carry it still gets less until it recovers, and a video shown through attachVideo is still paused
|
|
1926
1994
|
* while nobody can see it. 'auto' (the default) goes back to the size it is shown at, or the server's choice.
|
|
1927
|
-
* Kept across reconnects.
|
|
1995
|
+
* Kept across reconnects; a call that fails leaves the previous choice in place.
|
|
1928
1996
|
*/
|
|
1929
1997
|
async setReceiveQuality(producerId, quality) {
|
|
1930
1998
|
if (!['auto', '1080p', '720p', '480p'].includes(quality))
|
|
@@ -1943,10 +2011,52 @@ class StreamClient {
|
|
|
1943
2011
|
throw new errors_js_1.RpcError('quality-unavailable', 'this publisher does not describe its video layers; use Auto');
|
|
1944
2012
|
}
|
|
1945
2013
|
}
|
|
1946
|
-
this.
|
|
1947
|
-
this.preferredLayers.set(producerId, layers);
|
|
2014
|
+
const change = this.changeReceive(producerId, { quality, layers });
|
|
1948
2015
|
const adaptive = this.adaptive.current(producerId);
|
|
1949
|
-
|
|
2016
|
+
try {
|
|
2017
|
+
await this.rpc('setPreferredLayers', { consumerId: consumer.id, ...(adaptive ? this.effectiveLayers(producerId, adaptive) : layers) });
|
|
2018
|
+
}
|
|
2019
|
+
catch (err) {
|
|
2020
|
+
change.failed();
|
|
2021
|
+
throw err;
|
|
2022
|
+
}
|
|
2023
|
+
change.accepted();
|
|
2024
|
+
}
|
|
2025
|
+
/** Store `choice` for one video now, before its request; the caller reports how the request ended (BR-09). */
|
|
2026
|
+
changeReceive(producerId, choice) {
|
|
2027
|
+
if (!this.receiveAccepted.has(producerId)) {
|
|
2028
|
+
this.receiveAccepted.set(producerId, { quality: this.receiveQualities.get(producerId), layers: this.preferredLayers.get(producerId) });
|
|
2029
|
+
}
|
|
2030
|
+
const revision = (this.receiveRevision.get(producerId) ?? 0) + 1;
|
|
2031
|
+
this.receiveRevision.set(producerId, revision);
|
|
2032
|
+
this.setReceiveChoice(producerId, choice);
|
|
2033
|
+
return {
|
|
2034
|
+
// Forgotten meanwhile (the video ended, the session closed): a late answer changes nothing.
|
|
2035
|
+
accepted: () => { if (this.receiveRevision.has(producerId))
|
|
2036
|
+
this.receiveAccepted.set(producerId, choice); },
|
|
2037
|
+
failed: () => {
|
|
2038
|
+
const back = this.receiveAccepted.get(producerId);
|
|
2039
|
+
if (this.receiveRevision.get(producerId) === revision && back)
|
|
2040
|
+
this.setReceiveChoice(producerId, back);
|
|
2041
|
+
},
|
|
2042
|
+
};
|
|
2043
|
+
}
|
|
2044
|
+
setReceiveChoice(producerId, choice) {
|
|
2045
|
+
if (choice.quality === undefined)
|
|
2046
|
+
this.receiveQualities.delete(producerId);
|
|
2047
|
+
else
|
|
2048
|
+
this.receiveQualities.set(producerId, choice.quality);
|
|
2049
|
+
if (choice.layers === undefined)
|
|
2050
|
+
this.preferredLayers.delete(producerId);
|
|
2051
|
+
else
|
|
2052
|
+
this.preferredLayers.set(producerId, choice.layers);
|
|
2053
|
+
}
|
|
2054
|
+
/** The video ended: its choices go with it. */
|
|
2055
|
+
forgetReceiveChoice(producerId) {
|
|
2056
|
+
this.preferredLayers.delete(producerId);
|
|
2057
|
+
this.receiveQualities.delete(producerId);
|
|
2058
|
+
this.receiveAccepted.delete(producerId);
|
|
2059
|
+
this.receiveRevision.delete(producerId);
|
|
1950
2060
|
}
|
|
1951
2061
|
cameraProducer() {
|
|
1952
2062
|
for (const p of this.producers.values()) {
|
|
@@ -2734,6 +2844,10 @@ class StreamClient {
|
|
|
2734
2844
|
* setPreferredLayers and adaptive stream's size: the lower of the two.
|
|
2735
2845
|
*/
|
|
2736
2846
|
effectiveLayers(producerId, want) {
|
|
2847
|
+
// Hidden: paused at the server, or held at the smallest layer where it cannot pause. A chosen quality or a ceiling
|
|
2848
|
+
// applies once the video is shown again, never while nobody can see it (BR-08; the Flutter SDK's V092-01).
|
|
2849
|
+
if (want && !want.visible)
|
|
2850
|
+
return { spatialLayer: 0, temporalLayer: 0 };
|
|
2737
2851
|
let manual = this.preferredLayers.get(producerId);
|
|
2738
2852
|
const quality = this.receiveQualities.get(producerId);
|
|
2739
2853
|
if (quality && quality !== 'auto') {
|
|
@@ -3127,7 +3241,9 @@ class StreamClient {
|
|
|
3127
3241
|
* captured with the constraints publish was given (size, frame rate, echo cancellation) and its track replaces the
|
|
3128
3242
|
* published one: a camera of the same size swaps with no pause for viewers, a microphone always does. The track it
|
|
3129
3243
|
* replaces is stopped, releasing that device; the client's own stream follows (`localStreamChanged`), and a
|
|
3130
|
-
* reconnect captures the chosen device again. A camera or microphone that is switched off stays off.
|
|
3244
|
+
* reconnect captures the chosen device again. A camera or microphone that is switched off stays off. A swap that
|
|
3245
|
+
* fails releases the new device and keeps the old one on air, put back through a noise suppressor or video effects
|
|
3246
|
+
* if one is set.
|
|
3131
3247
|
*
|
|
3132
3248
|
* For a camera published as a canvas or another processed track, capture the new camera yourself and pass your
|
|
3133
3249
|
* processed track to `replaceVideoTrack`; this rejects rather than replace your picture with the raw camera.
|
|
@@ -3174,15 +3290,38 @@ class StreamClient {
|
|
|
3174
3290
|
track.stop();
|
|
3175
3291
|
throw new Error('switchDevice: the microphone was unpublished meanwhile');
|
|
3176
3292
|
}
|
|
3177
|
-
|
|
3293
|
+
try {
|
|
3294
|
+
// Releases the new microphone itself if the swap fails.
|
|
3295
|
+
await this.adoptAudioTrack(producer, track);
|
|
3296
|
+
}
|
|
3297
|
+
catch (err) {
|
|
3298
|
+
if (producer.closed || this.micProducer() !== producer)
|
|
3299
|
+
throw new Error('switchDevice: the microphone was unpublished meanwhile');
|
|
3300
|
+
throw err;
|
|
3301
|
+
}
|
|
3178
3302
|
this.publishConstraints = { ...(this.publishConstraints ?? {}), audio };
|
|
3179
3303
|
});
|
|
3180
3304
|
}
|
|
3181
|
-
/**
|
|
3305
|
+
/**
|
|
3306
|
+
* Put `track` (one the SDK captured) on the microphone producer and in the client's own stream; the replaced track is
|
|
3307
|
+
* stopped. A swap that fails releases `track` and the sound made from it, and with a processor puts the microphone
|
|
3308
|
+
* still on air back through it: given the new track, the processor dropped that sound (BR-10, BR-11).
|
|
3309
|
+
*/
|
|
3182
3310
|
async adoptAudioTrack(producer, track) {
|
|
3183
3311
|
const previous = this.micRaw ?? producer.track;
|
|
3184
|
-
const
|
|
3185
|
-
|
|
3312
|
+
const previousRaw = this.micRaw;
|
|
3313
|
+
let sent = track;
|
|
3314
|
+
try {
|
|
3315
|
+
sent = await this.processMic(track);
|
|
3316
|
+
await producer.replaceTrack({ track: sent });
|
|
3317
|
+
}
|
|
3318
|
+
catch (err) {
|
|
3319
|
+
if (sent !== track)
|
|
3320
|
+
sent.stop();
|
|
3321
|
+
track.stop();
|
|
3322
|
+
await this.restoreMic(producer, previousRaw);
|
|
3323
|
+
throw err;
|
|
3324
|
+
}
|
|
3186
3325
|
this.micRaw = sent !== track ? track : null;
|
|
3187
3326
|
const video = this.localStream ? this.localStream.getTracks().filter((t) => t.kind !== 'audio') : [];
|
|
3188
3327
|
this.localStream = new MediaStream([track, ...video]);
|
|
@@ -3191,6 +3330,25 @@ class StreamClient {
|
|
|
3191
3330
|
previous.stop();
|
|
3192
3331
|
this.watchTrackEnded(producer);
|
|
3193
3332
|
}
|
|
3333
|
+
/** After a failed microphone swap with a processor: send the microphone on air through it again (it dropped that sound). */
|
|
3334
|
+
async restoreMic(producer, raw) {
|
|
3335
|
+
const current = () => !producer.closed && this.micProducer() === producer;
|
|
3336
|
+
if (!this.audioProcessor || !raw || raw.readyState === 'ended' || !current())
|
|
3337
|
+
return;
|
|
3338
|
+
try {
|
|
3339
|
+
const again = await this.processMic(raw);
|
|
3340
|
+
if (!current()) {
|
|
3341
|
+
if (again !== raw)
|
|
3342
|
+
again.stop();
|
|
3343
|
+
return;
|
|
3344
|
+
}
|
|
3345
|
+
await producer.replaceTrack({ track: again });
|
|
3346
|
+
this.micRaw = again !== raw ? raw : null;
|
|
3347
|
+
}
|
|
3348
|
+
catch (err) {
|
|
3349
|
+
this.emit('error', new Error(`the microphone could not be put back after a failed switch: ${err?.message ?? err}`));
|
|
3350
|
+
}
|
|
3351
|
+
}
|
|
3194
3352
|
/** Notice when the producer's present track stops from outside (unplugged, permission revoked). */
|
|
3195
3353
|
watchTrackEnded(producer) {
|
|
3196
3354
|
// The device's track, not the processed one a processor sends: that is the one a device ends.
|