@3dsource/angular-unreal-module 0.0.157 → 0.0.159

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.
@@ -1,10 +1,10 @@
1
1
  import * as i0 from '@angular/core';
2
- import { ElementRef, Signal, InjectionToken, DestroyRef, OnInit, PipeTransform } from '@angular/core';
2
+ import { ElementRef, Signal, InjectionToken, DestroyRef, PipeTransform } from '@angular/core';
3
+ import * as _ngrx_store from '@ngrx/store';
4
+ import { Store } from '@ngrx/store';
3
5
  import * as _3dsource_angular_unreal_module from '@3dsource/angular-unreal-module';
4
6
  import * as rxjs from 'rxjs';
5
7
  import { Subject, Observable, Subscription, OperatorFunction } from 'rxjs';
6
- import * as _ngrx_store from '@ngrx/store';
7
- import { Store } from '@ngrx/store';
8
8
  import * as _ngrx_effects from '@ngrx/effects';
9
9
  import { Actions } from '@ngrx/effects';
10
10
  import { IKeyCode, ImageOutputValues, Area } from '@3dsource/utils';
@@ -30,13 +30,6 @@ declare class FreezeFrameComponent {
30
30
  static ɵcmp: i0.ɵɵComponentDeclaration<FreezeFrameComponent, "app-freeze-frame", never, {}, {}, never, never, true, never>;
31
31
  }
32
32
 
33
- declare class LowBandwidthModalComponent {
34
- #private;
35
- close(value?: boolean): void;
36
- static ɵfac: i0.ɵɵFactoryDeclaration<LowBandwidthModalComponent, never>;
37
- static ɵcmp: i0.ɵɵComponentDeclaration<LowBandwidthModalComponent, "app-low-bandwidth-modal", never, {}, {}, never, never, true, never>;
38
- }
39
-
40
33
  declare class ImageLoadingSrcComponent {
41
34
  #private;
42
35
  readonly isLoaderScreenVisible: i0.Signal<boolean>;
@@ -149,7 +142,7 @@ declare class VideoStatsComponent {
149
142
  }>;
150
143
  readonly videoStatus: Signal<{
151
144
  key: string;
152
- value: string | number | Record<string, string> | _3dsource_angular_unreal_module.DataFlowCheckResult | {
145
+ value: string | number | Record<string, string> | {
153
146
  local: {
154
147
  type: string;
155
148
  url: string;
@@ -183,6 +176,81 @@ declare class WebrtcErrorModalComponent {
183
176
  static ɵcmp: i0.ɵɵComponentDeclaration<WebrtcErrorModalComponent, "app-webrtc-error-modal", never, {}, {}, never, never, true, never>;
184
177
  }
185
178
 
179
+ declare const SpecialKeyCodes: {
180
+ BackSpace: number;
181
+ Shift: number;
182
+ Control: number;
183
+ Alt: number;
184
+ RightShift: number;
185
+ RightControl: number;
186
+ RightAlt: number;
187
+ };
188
+ declare const MouseButton: {
189
+ MainButton: number;
190
+ AuxiliaryButton: number;
191
+ SecondaryButton: number;
192
+ FourthButton: number;
193
+ FifthButton: number;
194
+ };
195
+ declare const MouseButtonsMask: {
196
+ PrimaryButton: number;
197
+ SecondaryButton: number;
198
+ AuxiliaryButton: number;
199
+ FourthButton: number;
200
+ FifthButton: number;
201
+ };
202
+
203
+ declare const ControlScheme: {
204
+ readonly LockedMouse: 0;
205
+ readonly HoveringMouse: 1;
206
+ readonly Default: 2;
207
+ };
208
+ type ControlSchemeValues = (typeof ControlScheme)[keyof typeof ControlScheme];
209
+
210
+ declare const MessageType: {
211
+ readonly IFrameRequest: 0;
212
+ readonly RequestQualityControl: 1;
213
+ readonly MaxFpsRequest: 2;
214
+ readonly AverageBitrateRequest: 3;
215
+ readonly StartStreaming: 4;
216
+ readonly StopStreaming: 5;
217
+ readonly LatencyTest: 6;
218
+ readonly RequestInitialSettings: 7;
219
+ readonly UIInteraction: 50;
220
+ readonly Command: 51;
221
+ readonly KeyDown: 60;
222
+ readonly KeyUp: 61;
223
+ readonly KeyPress: 62;
224
+ readonly MouseEnter: 70;
225
+ readonly MouseLeave: 71;
226
+ readonly MouseDown: 72;
227
+ readonly MouseUp: 73;
228
+ readonly MouseMove: 74;
229
+ readonly MouseWheel: 75;
230
+ readonly TouchStart: 80;
231
+ readonly TouchEnd: 81;
232
+ readonly TouchMove: 82;
233
+ };
234
+ type MessageTypeValues = (typeof MessageType)[keyof typeof MessageType];
235
+
236
+ declare const ToClientMessage: {
237
+ readonly QualityControlOwnership: 0;
238
+ readonly Response: 1;
239
+ readonly Command: 2;
240
+ readonly FreezeFrame: 3;
241
+ readonly UnfreezeFrame: 4;
242
+ readonly VideoEncoderAvgQP: 5;
243
+ readonly LatencyTest: 6;
244
+ readonly InitialSettings: 7;
245
+ readonly FileExtension: 8;
246
+ readonly FileMimeType: 9;
247
+ readonly FileContents: 10;
248
+ readonly TestEcho: 11;
249
+ readonly InputControlOwnership: 12;
250
+ readonly GamepadResponse: 13;
251
+ readonly Protocol: 255;
252
+ };
253
+
186
254
  declare const WSCloseCode_NORMAL_CLOSURE = 3000;
187
255
  declare const WSCloseCode_NORMAL_AFK_TIMEOUT = 3001;
188
256
  declare const WSCloseCode_NORMAL_MANUAL_DISCONNECT = 3002;
@@ -298,123 +366,6 @@ declare global {
298
366
  }
299
367
  }
300
368
 
301
- declare const SpecialKeyCodes: {
302
- BackSpace: number;
303
- Shift: number;
304
- Control: number;
305
- Alt: number;
306
- RightShift: number;
307
- RightControl: number;
308
- RightAlt: number;
309
- };
310
- declare const MouseButton: {
311
- MainButton: number;
312
- AuxiliaryButton: number;
313
- SecondaryButton: number;
314
- FourthButton: number;
315
- FifthButton: number;
316
- };
317
- declare const MouseButtonsMask: {
318
- PrimaryButton: number;
319
- SecondaryButton: number;
320
- AuxiliaryButton: number;
321
- FourthButton: number;
322
- FifthButton: number;
323
- };
324
-
325
- declare const ControlScheme: {
326
- readonly LockedMouse: 0;
327
- readonly HoveringMouse: 1;
328
- readonly Default: 2;
329
- };
330
- type ControlSchemeValues = (typeof ControlScheme)[keyof typeof ControlScheme];
331
-
332
- declare const MessageType: {
333
- readonly IFrameRequest: 0;
334
- readonly RequestQualityControl: 1;
335
- readonly MaxFpsRequest: 2;
336
- readonly AverageBitrateRequest: 3;
337
- readonly StartStreaming: 4;
338
- readonly StopStreaming: 5;
339
- readonly LatencyTest: 6;
340
- readonly RequestInitialSettings: 7;
341
- readonly UIInteraction: 50;
342
- readonly Command: 51;
343
- readonly KeyDown: 60;
344
- readonly KeyUp: 61;
345
- readonly KeyPress: 62;
346
- readonly MouseEnter: 70;
347
- readonly MouseLeave: 71;
348
- readonly MouseDown: 72;
349
- readonly MouseUp: 73;
350
- readonly MouseMove: 74;
351
- readonly MouseWheel: 75;
352
- readonly TouchStart: 80;
353
- readonly TouchEnd: 81;
354
- readonly TouchMove: 82;
355
- };
356
- type MessageTypeValues = (typeof MessageType)[keyof typeof MessageType];
357
-
358
- declare const ToClientMessage: {
359
- readonly QualityControlOwnership: 0;
360
- readonly Response: 1;
361
- readonly Command: 2;
362
- readonly FreezeFrame: 3;
363
- readonly UnfreezeFrame: 4;
364
- readonly VideoEncoderAvgQP: 5;
365
- readonly LatencyTest: 6;
366
- readonly InitialSettings: 7;
367
- readonly FileExtension: 8;
368
- readonly FileMimeType: 9;
369
- readonly FileContents: 10;
370
- readonly TestEcho: 11;
371
- readonly InputControlOwnership: 12;
372
- readonly GamepadResponse: 13;
373
- readonly Protocol: 255;
374
- };
375
-
376
- declare const UNREAL_CONFIG: InjectionToken<UnrealInitialConfig>;
377
-
378
- declare const InputOptions: InputProps;
379
-
380
- /** Disconnect reasons that should trigger remote connection cleanup. */
381
- declare const DESTROY_DISCONNECT_REASONS: DisconnectReasonType[];
382
-
383
- declare const DEBOUNCE_TO_MANY_RESIZE_CALLS = 100;
384
- declare const AUTO_HIGH_RESOLUTION_IDLE_MS = 5000;
385
- declare const SAME_SIZE_THRESHOLD = 1.01;
386
- declare const MIN_CONTAINER_SIZE = 2;
387
- declare const MINIMAL_FPS = 6;
388
- declare const STREAMING_VIDEO_ID = "streamingVideo";
389
- declare const STREAMING_AUDIO_ID = "streamingAudio";
390
- declare const FULL_HD_WIDTH = 1920;
391
- declare const FULL_HD_HEIGHT = 1080;
392
- declare const WS_TIMEOUT = 6000;
393
- declare const POLLING_TIME = 4000;
394
- declare const INNER_RETRY_LIMIT = 3;
395
- declare const OUTER_RETRY_DELAY: number;
396
- declare const WS_RETRY_PER_INSTANCE = 1;
397
- declare const WS_OPEN_STATE = 1;
398
- declare const DEFAULT_AFK_TIMEOUT_PERIOD = 15;
399
- declare const DEFAULT_AFK_TIMEOUT = 300;
400
- declare const DATA_CHANNEL_CONNECTION_TIMEOUT = 8000;
401
- declare const SIGNALLING_PERCENT_VALUE = 56;
402
- declare const SCREEN_LOCKER_CONTAINER_ID = "3dsource_start_screen";
403
- declare const REGION_PING_CACHE_KEY = "3dsource:region-ping";
404
- declare const REGION_PING_CACHE_TTL_MS: number;
405
- declare const REGION_PING_ACCURATE_SAMPLES = 3;
406
- declare const REGION_PING_WARMUP_DEADLINE_MS = 1500;
407
- declare const REGION_PING_BACKGROUND_REFRESH_DELAY_MS = 5000;
408
- declare const RECONNECT_CONFIG: {
409
- readonly enabled: true;
410
- readonly maxAttempts: 3;
411
- readonly delayMs: 1000;
412
- };
413
- declare const UnrealStatusMessage: {
414
- readonly CONNECTING_TO_SESSION: "Connecting to session.";
415
- readonly STARTING_YOUR_SESSION: "Starting your session";
416
- };
417
-
418
369
  interface InputProps {
419
370
  controlScheme: ControlSchemeValues;
420
371
  suppressBrowserKeys: boolean;
@@ -895,6 +846,103 @@ type StreamTelemetryLifecycleData<K extends StreamTelemetryLifecycleEventName> =
895
846
 
896
847
  type TelemetryType = 'commandSent' | 'commandStop';
897
848
 
849
+ interface AggregatedStat {
850
+ quality: Quality;
851
+ aggregatedStats: InboundVideoStats;
852
+ }
853
+ interface InboundVideoStats extends RTCInboundRtpStreamStats {
854
+ VideoEncoderQP: number;
855
+ runTime: number;
856
+ pixelRatio: number;
857
+ bytesReceivedStart: number;
858
+ framesDecodedStart: number;
859
+ timestampStart: number;
860
+ videoCodec: string;
861
+ avgBitrate: number;
862
+ avgFrameRate: number;
863
+ selectedPair: {
864
+ local: {
865
+ type: string;
866
+ url: string;
867
+ };
868
+ remote: {
869
+ type: string;
870
+ url: string;
871
+ };
872
+ } | null;
873
+ currentRoundTripTime: number;
874
+ codecs: Record<string, string>;
875
+ receiveToCompositeMs: number;
876
+ bitrate: number;
877
+ }
878
+ interface AwsInstance {
879
+ /**
880
+ * WebSocket URL for connecting to the Cirrus (polling mode) or Orchestration (direct mode).
881
+ */
882
+ wsUrl: string | null;
883
+ pollingUrl: string | null;
884
+ instanceName: string | null;
885
+ /**
886
+ * Unique identifier for the streaming request.
887
+ * Coming with a new orchestration message "instanceReserved".
888
+ */
889
+ streamRequestId?: string;
890
+ /**
891
+ * Estimated time of arrival (in seconds) for the instance to be ready.
892
+ * Coming with a new orchestration message "instanceReserved".
893
+ */
894
+ eta?: number;
895
+ /**
896
+ * Progress of completion for the instance launch (0-1).
897
+ * Based on ETA time comes from the backend with new orchestration.
898
+ * If eta is not provided, this value will be undefined.
899
+ */
900
+ progressComplete?: number;
901
+ message?: string;
902
+ }
903
+
904
+ declare const UNREAL_CONFIG: InjectionToken<UnrealInitialConfig>;
905
+
906
+ declare const InputOptions: InputProps;
907
+
908
+ /** Disconnect reasons that should trigger remote connection cleanup. */
909
+ declare const DESTROY_DISCONNECT_REASONS: DisconnectReasonType[];
910
+
911
+ declare const DEBOUNCE_TO_MANY_RESIZE_CALLS = 100;
912
+ declare const AUTO_HIGH_RESOLUTION_IDLE_MS = 5000;
913
+ declare const SAME_SIZE_THRESHOLD = 1.01;
914
+ declare const MIN_CONTAINER_SIZE = 2;
915
+ declare const MINIMAL_FPS = 6;
916
+ declare const STREAMING_VIDEO_ID = "streamingVideo";
917
+ declare const STREAMING_AUDIO_ID = "streamingAudio";
918
+ declare const FULL_HD_WIDTH = 1920;
919
+ declare const FULL_HD_HEIGHT = 1080;
920
+ declare const WS_TIMEOUT = 6000;
921
+ declare const POLLING_TIME = 4000;
922
+ declare const INNER_RETRY_LIMIT = 3;
923
+ declare const OUTER_RETRY_DELAY: number;
924
+ declare const WS_RETRY_PER_INSTANCE = 1;
925
+ declare const WS_OPEN_STATE = 1;
926
+ declare const DEFAULT_AFK_TIMEOUT_PERIOD = 15;
927
+ declare const DEFAULT_AFK_TIMEOUT = 300;
928
+ declare const DATA_CHANNEL_CONNECTION_TIMEOUT = 8000;
929
+ declare const SIGNALLING_PERCENT_VALUE = 56;
930
+ declare const SCREEN_LOCKER_CONTAINER_ID = "3dsource_start_screen";
931
+ declare const REGION_PING_CACHE_KEY = "3dsource:region-ping";
932
+ declare const REGION_PING_CACHE_TTL_MS: number;
933
+ declare const REGION_PING_ACCURATE_SAMPLES = 3;
934
+ declare const REGION_PING_WARMUP_DEADLINE_MS = 1500;
935
+ declare const REGION_PING_BACKGROUND_REFRESH_DELAY_MS = 5000;
936
+ declare const RECONNECT_CONFIG: {
937
+ readonly enabled: true;
938
+ readonly maxAttempts: 3;
939
+ readonly delayMs: 1000;
940
+ };
941
+ declare const UnrealStatusMessage: {
942
+ readonly CONNECTING_TO_SESSION: "Connecting to session.";
943
+ readonly STARTING_YOUR_SESSION: "Starting your session";
944
+ };
945
+
898
946
  declare class SubService {
899
947
  protected readonly destroyRef: DestroyRef;
900
948
  protected readonly destroy$: Subject<void>;
@@ -1633,7 +1681,6 @@ declare class VideoService extends SubService {
1633
1681
  private videoTrack$;
1634
1682
  private VideoEncoderQP;
1635
1683
  private aggregatedStats;
1636
- kalmanFilter1D: KalmanFilter1D;
1637
1684
  /**
1638
1685
  * Aggregate video stats and emit it as videoStats$
1639
1686
  */
@@ -2207,26 +2254,6 @@ declare const getImageFromVideoStream: (takeSizeFrom?: "video" | "constant", ima
2207
2254
  */
2208
2255
  declare function getActiveUrl(urls: string[]): Generator<string, void, unknown>;
2209
2256
 
2210
- declare class KalmanFilter1D {
2211
- private estimate;
2212
- private uncertainty;
2213
- private processNoise;
2214
- private measurementNoise;
2215
- /**
2216
- * @param initialEstimate Initial guess of the state.
2217
- * @param initialUncertainty Initial uncertainty in the guess.
2218
- * @param processNoise Process variance (Q) representing model uncertainty.
2219
- * @param measurementNoise Measurement variance (R) representing noise in measurements.
2220
- */
2221
- constructor(initialEstimate: number, initialUncertainty: number, processNoise: number, measurementNoise: number);
2222
- /**
2223
- * Incorporates a new measurement and returns the updated estimate.
2224
- * @param measurement The new measurement value.
2225
- */
2226
- update(measurement: number): number;
2227
- config(data: FilterSettings): void;
2228
- }
2229
-
2230
2257
  declare class LatencyTimings {
2231
2258
  TestStartTimeMs: number | null;
2232
2259
  UEReceiptTimeMs: number | null;
@@ -2334,214 +2361,6 @@ declare function getResizeValuesUniversal(params: {
2334
2361
  */
2335
2362
  declare function makeEven(value: number): number;
2336
2363
 
2337
- interface AggregatedStat {
2338
- quality: Quality;
2339
- aggregatedStats: InboundVideoStats;
2340
- }
2341
- interface InboundVideoStats extends RTCInboundRtpStreamStats {
2342
- VideoEncoderQP: number;
2343
- runTime: number;
2344
- pixelRatio: number;
2345
- bytesReceivedStart: number;
2346
- framesDecodedStart: number;
2347
- timestampStart: number;
2348
- videoCodec: string;
2349
- avgBitrate: number;
2350
- avgFrameRate: number;
2351
- selectedPair: {
2352
- local: {
2353
- type: string;
2354
- url: string;
2355
- };
2356
- remote: {
2357
- type: string;
2358
- url: string;
2359
- };
2360
- } | null;
2361
- currentRoundTripTime: number;
2362
- codecs: Record<string, string>;
2363
- receiveToCompositeMs: number;
2364
- bitrate: number;
2365
- kalmanBitrate: number;
2366
- bitrateDrop: number;
2367
- dataFlowCheckResult: DataFlowCheckResult;
2368
- dataFlowBitrate: DataFlowCheckResult;
2369
- }
2370
- interface AwsInstance {
2371
- /**
2372
- * WebSocket URL for connecting to the Cirrus (polling mode) or Orchestration (direct mode).
2373
- */
2374
- wsUrl: string | null;
2375
- pollingUrl: string | null;
2376
- instanceName: string | null;
2377
- /**
2378
- * Unique identifier for the streaming request.
2379
- * Coming with a new orchestration message "instanceReserved".
2380
- */
2381
- streamRequestId?: string;
2382
- /**
2383
- * Estimated time of arrival (in seconds) for the instance to be ready.
2384
- * Coming with a new orchestration message "instanceReserved".
2385
- */
2386
- eta?: number;
2387
- /**
2388
- * Progress of completion for the instance launch (0-1).
2389
- * Based on ETA time comes from the backend with new orchestration.
2390
- * If eta is not provided, this value will be undefined.
2391
- */
2392
- progressComplete?: number;
2393
- message?: string;
2394
- }
2395
-
2396
- interface DataFlowCheckResult {
2397
- isDropDetected: boolean;
2398
- dropPercentage: number;
2399
- activeMedian: number;
2400
- quality: Quality;
2401
- message: string;
2402
- /** Optional diagnostic snapshot — only populated on demand to avoid a
2403
- * per-tick array copy on this 4 Hz hot path. */
2404
- dataHistory?: number[];
2405
- config: {
2406
- yellowFlagThresholdPercentage: number;
2407
- redFlagThresholdPercentage: number;
2408
- historyBufferLength: number;
2409
- splitPoint: number;
2410
- };
2411
- }
2412
- declare class DataFlowMonitor {
2413
- protected yellowFlagThresholdPercentage: number;
2414
- protected redFlagThresholdPercentage: number;
2415
- protected historyBufferLength: number;
2416
- protected splitPoint: number;
2417
- protected dataHistory: number[];
2418
- /**
2419
- * Initializes the DataFlowMonitor monitor.
2420
- * @param yellowFlagThresholdPercentage - The percentage drop to trigger a YELLOW warning (default: 15%).
2421
- * @param redFlagThresholdPercentage - The percentage drop to trigger a RED warning (default: 30%).
2422
- * @param historyBufferLength - buffer length (default: 100).
2423
- * @param splitPoint - The point at which to split the history buffer into two halves (default: 0.5).
2424
- */
2425
- constructor(yellowFlagThresholdPercentage?: number, redFlagThresholdPercentage?: number, historyBufferLength?: number, splitPoint?: number);
2426
- reset(): void;
2427
- config(data: FilterSettings): void;
2428
- /**
2429
- * Adds a new bitrate measurement and checks for significant drops.
2430
- * @param currentValue - The current bitrate in kbps.
2431
- * @returns BitrateCheckResult indicating if a drop was detected.
2432
- */
2433
- addValue(currentValue: number): DataFlowCheckResult;
2434
- }
2435
-
2436
- interface FilterSettings {
2437
- /**
2438
- * Minimum number of kilobits per second to trigger low bandwidth
2439
- */
2440
- minimumBitrate: number;
2441
- /**
2442
- * Amount of a percentage drop to trigger a yellow warning
2443
- */
2444
- yellowFlag: number;
2445
- /**
2446
- * Amount of a percentage drop to trigger a red warning
2447
- */
2448
- redFlag: number;
2449
- /**
2450
- * Minimum number of frames per second to trigger low bandwidth
2451
- */
2452
- minimumFps: number;
2453
- /**
2454
- * Time to wait before checking if we can switch to low bandwidth
2455
- */
2456
- monitoringDelayTime: number;
2457
- initialBitrateEstimate: number;
2458
- initialErrorCovariance: number;
2459
- processNoise: number;
2460
- measurementNoise: number;
2461
- panelOpen: boolean;
2462
- }
2463
-
2464
- declare class FilterSettingsComponent implements OnInit {
2465
- private readonly storageKey;
2466
- readonly defaultFilterModel: {
2467
- minimumBitrate: number;
2468
- yellowFlag: number;
2469
- redFlag: number;
2470
- minimumFps: number;
2471
- monitoringDelayTime: number;
2472
- initialBitrateEstimate: number;
2473
- initialErrorCovariance: number;
2474
- processNoise: number;
2475
- measurementNoise: number;
2476
- panelOpen: boolean;
2477
- };
2478
- settings: {
2479
- minimumBitrate: number;
2480
- yellowFlag: number;
2481
- redFlag: number;
2482
- minimumFps: number;
2483
- monitoringDelayTime: number;
2484
- initialBitrateEstimate: number;
2485
- initialErrorCovariance: number;
2486
- processNoise: number;
2487
- measurementNoise: number;
2488
- panelOpen: boolean;
2489
- };
2490
- ngOnInit(): void;
2491
- togglePanel(): void;
2492
- saveSettings(): void;
2493
- dispatch(settings: FilterSettings): void;
2494
- reset(): void;
2495
- static ɵfac: i0.ɵɵFactoryDeclaration<FilterSettingsComponent, never>;
2496
- static ɵcmp: i0.ɵɵComponentDeclaration<FilterSettingsComponent, "app-filter-settings", never, {}, {}, never, never, true, never>;
2497
- }
2498
-
2499
- declare class LowBandwidthDetectorComponent implements OnInit {
2500
- #private;
2501
- private readonly dialog;
2502
- private readonly destroyRef;
2503
- private readonly videoService;
2504
- private readonly lowBandwidthState;
2505
- readonly isDevMode: boolean;
2506
- private readonly viewportReady$;
2507
- private readonly isLowBandwidth$;
2508
- private readonly lowBandwidthTrigger$;
2509
- private readonly highBandwidthTrigger$;
2510
- private readonly viewPortDestroyedTrigger$;
2511
- private readonly aggregatedStats$;
2512
- private readonly nativeQuality$;
2513
- private readonly monitoringTrigger$;
2514
- private readonly reTrigger$;
2515
- private readonly canSwitchToLowBand$;
2516
- private readonly videoQuality$;
2517
- private readonly fps$;
2518
- private readonly bitrateDrop$;
2519
- readonly fps: i0.Signal<number>;
2520
- readonly nativeQuality: i0.Signal<Quality | undefined>;
2521
- readonly isLowBandwidth: i0.Signal<boolean>;
2522
- readonly aggregatedStats: i0.Signal<_3dsource_angular_unreal_module.InboundVideoStats | undefined>;
2523
- readonly isReducedQuality: i0.WritableSignal<boolean>;
2524
- readonly isIndicatorExpanded: i0.WritableSignal<boolean>;
2525
- readonly isIndicatorExpandedTrigger$: rxjs.Observable<false>;
2526
- ngOnInit(): void;
2527
- private trySetLowBandwidth;
2528
- toggleIndicator(value: boolean): void;
2529
- hideIndicatorAfterDelay(): void;
2530
- openLBMDialog(): void;
2531
- static ɵfac: i0.ɵɵFactoryDeclaration<LowBandwidthDetectorComponent, never>;
2532
- static ɵcmp: i0.ɵɵComponentDeclaration<LowBandwidthDetectorComponent, "app-low-bandwidth-detector", never, {}, {}, never, never, true, never>;
2533
- }
2534
-
2535
- declare class LowBandwidthStateService {
2536
- #private;
2537
- readonly isLowBandwidth: i0.Signal<boolean>;
2538
- readonly isLowBandwidth$: rxjs.Observable<boolean>;
2539
- enterLowBandwidthMode(): void;
2540
- exitLowBandwidthMode(): void;
2541
- static ɵfac: i0.ɵɵFactoryDeclaration<LowBandwidthStateService, never>;
2542
- static ɵprov: i0.ɵɵInjectableDeclaration<LowBandwidthStateService>;
2543
- }
2544
-
2545
2364
  declare class SafePipe implements PipeTransform {
2546
2365
  private sanitizer;
2547
2366
  transform(value: string, type: string): SafeHtml | SafeStyle | SafeScript | SafeUrl | SafeResourceUrl;
@@ -3292,5 +3111,5 @@ declare const selectUserInactivityDetected: _ngrx_store.MemoizedSelector<Record<
3292
3111
  /** Used by external consumers (e.g., metabox). Do not remove. */
3293
3112
  declare const selectIsVideoPlayingAndDataChannelConnected: _ngrx_store.MemoizedSelector<Record<string, any>, boolean, (s1: boolean, s2: boolean) => boolean>;
3294
3113
 
3295
- export { AFKService, AUTO_HIGH_RESOLUTION_IDLE_MS, AfkTimeoutModalComponent, AggregatorService, AnalyticsService, AnswerHandler, CommandTelemetryService, ConfigHandler, ConsoleExtensionsService, ControlScheme, DATA_CHANNEL_CONNECTION_TIMEOUT, DEBOUNCE_TO_MANY_RESIZE_CALLS, DEFAULT_AFK_TIMEOUT, DEFAULT_AFK_TIMEOUT_PERIOD, DESTROY_DISCONNECT_REASONS, DataFlowMonitor, DevModeService, DisconnectReason, FULL_HD_HEIGHT, FULL_HD_WIDTH, FileHandlerService, FileReceiverService, FilterSettingsComponent, FpsMonitorService, FreezeFrameComponent, FreezeFrameService, INNER_RETRY_LIMIT, IceCandidateHandler, ImageLoadingSrcComponent, InputOptions, InputService, InstanceReadyHandler, InstanceReservedHandler, IntroSrcComponent, KalmanFilter1D, LatencyTimings, LoadingProgressService, LowBandwidthDetectorComponent, LowBandwidthModalComponent, LowBandwidthStateService, MINIMAL_FPS, MIN_CONTAINER_SIZE, MessageType, MouseButton, MouseButtonsMask, OUTER_RETRY_DELAY, OnCloseHandler, OnErrorHandler, OnMessageHandler, OnOpenHandler, OrchestrationMessageTypes, POLLING_TIME, PingHandler, PlayerCountHandler, RECONNECT_CONFIG, REGION_PING_ACCURATE_SAMPLES, REGION_PING_BACKGROUND_REFRESH_DELAY_MS, REGION_PING_CACHE_KEY, REGION_PING_CACHE_TTL_MS, REGION_PING_WARMUP_DEADLINE_MS, RegionsPingService, SAME_SIZE_THRESHOLD, SCREEN_LOCKER_CONTAINER_ID, SIGNALLING_PERCENT_VALUE, SSInfoHandler, STREAMING_AUDIO_ID, STREAMING_VIDEO_ID, SafePipe, SignallingService, SpecialKeyCodes, StatGraphComponent, StreamAdoptionService, StreamStatusTelemetryService, StreamStatusTelemetryService2, SubService, ToClientMessage, UNREAL_CONFIG, UnrealCallbackService, UnrealCommunicatorService, UnrealEffects, UnrealSceneComponent, UnrealStatusMessage, VideoService, VideoStatsComponent, WSCloseCode_CIRRUS_ABNORMAL_CLOSURE, WSCloseCode_CIRRUS_MAX_PLAYERS_ERROR, WSCloseCode_CIRRUS_PLAYER_DISCONNECTED, WSCloseCode_CIRRUS_STREAMER_KIKED_PLAYER, WSCloseCode_FORCE_CIRRUS_CLOSE, WSCloseCode_NORMAL_AFK_TIMEOUT, WSCloseCode_NORMAL_CLOSURE, WSCloseCode_NORMAL_MANUAL_DISCONNECT, WSCloseCode_UNKNOWN, WSCloseCodes, WS_OPEN_STATE, WS_RETRY_PER_INSTANCE, WS_TIMEOUT, WebRtcPlayerService, WebrtcErrorModalComponent, abortEstablishingConnection, answerSent, changeStatusMainVideoOnScene, changeStreamResolutionAction, commandCompleted, commandStarted, dataChannelConnected, dataChannelReady, decodeData, destroyRemoteConnections, destroyUnrealScene, disconnectStream, dispatchResize, dropConnection, dropDC, dropPC, floatToPercents, floatToSmoothPercents, forceResizeViewport, fromResizeObserver, getActiveUrl, getImageFromVideoStream, getResizeStudioValues, getResizeValuesUniversal, getRtcErrorMessage, iceConnectionFailed, initSignalling, instanceReady, keepMaxUntilReset, makeEven, pollingEnded, pollingStarted, provideUnrealModule, provideUnrealState, qpToQuality, reconnectPeer, reconnectPeerFailed, reconnectPeerSuccess, regionPingFetchEnd, regionPingFetchStart, regionResolved, resetAfk, resetConfig, resetDataChannelForReconnect, resetIntroSrc, resetUserInactivityTimeout, resetWarnTimeout, saveAnalyticsEvent, selectCirrusConnectionId, selectClientAndViewIds, selectCommandProgress, selectFreezeFrameCombinedDataUrl, selectFreezeFrameDataUrl, selectFreezeFrameDataUrlFromVideo, selectFreezeFrameProgressMessageFromVideo, selectIsAutostart, selectIsExistMatchUrls, selectIsFreezeFrameLoading, selectIsFullyConnected, selectIsLoaderScreenVisible, selectIsVideoPlayingAndDataChannelConnected, selectShowLoader, selectShowReconnectPopup, selectSignalingParameters, selectStreamConfig, selectTotalProgress, selectUserInactivityDetected, selectWarnTimeout, setAfkTimerCountdown, setAfkTimerHide, setAfkTimerVisible, setAwsInstance, setCirrusConnected, setCirrusDisconnected, setConfig, setEstablishingConnection, setFreezeFrame, setFreezeFrameFromVideo, setIntroImageSrc, setIntroVideoSrc, setLoadingImageSrc, setLoopBackCommandIsCompleted, setMaxFps, setOrchestrationContext, setOrchestrationMessage, setOrchestrationParameters, setOrchestrationProgress, setSignalingName, setStatusMessage, setStatusPercentSignallingServer, setStreamClientCompanyId, setStreamViewId, setUnrealPlaywrightConfig, setUserInactivityTimeout, setViewportNotReady, setViewportReady, showLoadingProgress, showResumeStreamPopup, showUnrealErrorMessage, showUserInactivityTimeoutPopup, signalingRetryAttempted, smoothTransition, startStream, streamAdopted, trackMixpanelEvent, trackTelemetryData, uint8ToBase64, unrealCommandCallback, unrealFeature, unrealReducer, updateCirrusInfo, videoAdaptedToContainer, videoStreamInitialized };
3296
- export type { AggregatedStat, AnySignalingMessage, AwsInstance, BootstrapInfo, CandidateMessage, CloseReason, CommandInProgress, ConfigMessage, ConnectionError, ControlSchemeValues, DataFlowCheckResult, DisconnectReasonType, EmittedMilestone, EventId, ForceClientDisconnect, FpsLowData, FreezeFrameMessage, InboundVideoStats, InputProps, InstanceReady, InstanceReserved, InterruptClientStream, ListStreamersMessage, MessageBase, MessageTypeValues, OrchestrationErrorMessage, OrchestrationMessageType, P2PEstablishedMessage, ParkedStream, PhaseEndedData, PhaseOverlay, PhaseParam, PingMessage, PlayerCountMessage, PollingOrchestrationMessage, Quality, QualityAnomalyData, ReceivedFile, RequestStream, ResourceBucket, ResourceTotals, SSInfo, SampleData, SelectedIceCandidatePair, SessionEndReason, SessionEndedData, SessionStartedData, SignalingData, SignalingMessageHandler, SignalingMessageMap, SignalingRetryData, SignalingRetryKind, SlowResource, StreamConfig, StreamRequestContext, StreamResolutionProps, StreamTelemetryEvent, StreamTelemetryEventMap, StreamTelemetryEventName, StreamTelemetryLifecycleData, StreamTelemetryLifecycleEventName, StreamTelemetryTrackData, StreamerListMessage, TelemetryEventEnvelope, TelemetryLifecycleEnvelope, TelemetryType, UnknownFields, UnrealCallbackDescriptor, UnrealCallbackEventMap, UnrealCallbackJson, UnrealCallbackJsonWrapped, UnrealInitialConfig, UnrealState, WSCloseCodesValues, WindowAggregate, streamPreparedForUserInteractionMessage };
3114
+ export { AFKService, AUTO_HIGH_RESOLUTION_IDLE_MS, AfkTimeoutModalComponent, AggregatorService, AnalyticsService, AnswerHandler, CommandTelemetryService, ConfigHandler, ConsoleExtensionsService, ControlScheme, DATA_CHANNEL_CONNECTION_TIMEOUT, DEBOUNCE_TO_MANY_RESIZE_CALLS, DEFAULT_AFK_TIMEOUT, DEFAULT_AFK_TIMEOUT_PERIOD, DESTROY_DISCONNECT_REASONS, DevModeService, DisconnectReason, FULL_HD_HEIGHT, FULL_HD_WIDTH, FileHandlerService, FileReceiverService, FpsMonitorService, FreezeFrameComponent, FreezeFrameService, INNER_RETRY_LIMIT, IceCandidateHandler, ImageLoadingSrcComponent, InputOptions, InputService, InstanceReadyHandler, InstanceReservedHandler, IntroSrcComponent, LatencyTimings, LoadingProgressService, MINIMAL_FPS, MIN_CONTAINER_SIZE, MessageType, MouseButton, MouseButtonsMask, OUTER_RETRY_DELAY, OnCloseHandler, OnErrorHandler, OnMessageHandler, OnOpenHandler, OrchestrationMessageTypes, POLLING_TIME, PingHandler, PlayerCountHandler, RECONNECT_CONFIG, REGION_PING_ACCURATE_SAMPLES, REGION_PING_BACKGROUND_REFRESH_DELAY_MS, REGION_PING_CACHE_KEY, REGION_PING_CACHE_TTL_MS, REGION_PING_WARMUP_DEADLINE_MS, RegionsPingService, SAME_SIZE_THRESHOLD, SCREEN_LOCKER_CONTAINER_ID, SIGNALLING_PERCENT_VALUE, SSInfoHandler, STREAMING_AUDIO_ID, STREAMING_VIDEO_ID, SafePipe, SignallingService, SpecialKeyCodes, StatGraphComponent, StreamAdoptionService, StreamStatusTelemetryService, StreamStatusTelemetryService2, SubService, ToClientMessage, UNREAL_CONFIG, UnrealCallbackService, UnrealCommunicatorService, UnrealEffects, UnrealSceneComponent, UnrealStatusMessage, VideoService, VideoStatsComponent, WSCloseCode_CIRRUS_ABNORMAL_CLOSURE, WSCloseCode_CIRRUS_MAX_PLAYERS_ERROR, WSCloseCode_CIRRUS_PLAYER_DISCONNECTED, WSCloseCode_CIRRUS_STREAMER_KIKED_PLAYER, WSCloseCode_FORCE_CIRRUS_CLOSE, WSCloseCode_NORMAL_AFK_TIMEOUT, WSCloseCode_NORMAL_CLOSURE, WSCloseCode_NORMAL_MANUAL_DISCONNECT, WSCloseCode_UNKNOWN, WSCloseCodes, WS_OPEN_STATE, WS_RETRY_PER_INSTANCE, WS_TIMEOUT, WebRtcPlayerService, WebrtcErrorModalComponent, abortEstablishingConnection, answerSent, changeStatusMainVideoOnScene, changeStreamResolutionAction, commandCompleted, commandStarted, dataChannelConnected, dataChannelReady, decodeData, destroyRemoteConnections, destroyUnrealScene, disconnectStream, dispatchResize, dropConnection, dropDC, dropPC, floatToPercents, floatToSmoothPercents, forceResizeViewport, fromResizeObserver, getActiveUrl, getImageFromVideoStream, getResizeStudioValues, getResizeValuesUniversal, getRtcErrorMessage, iceConnectionFailed, initSignalling, instanceReady, keepMaxUntilReset, makeEven, pollingEnded, pollingStarted, provideUnrealModule, provideUnrealState, qpToQuality, reconnectPeer, reconnectPeerFailed, reconnectPeerSuccess, regionPingFetchEnd, regionPingFetchStart, regionResolved, resetAfk, resetConfig, resetDataChannelForReconnect, resetIntroSrc, resetUserInactivityTimeout, resetWarnTimeout, saveAnalyticsEvent, selectCirrusConnectionId, selectClientAndViewIds, selectCommandProgress, selectFreezeFrameCombinedDataUrl, selectFreezeFrameDataUrl, selectFreezeFrameDataUrlFromVideo, selectFreezeFrameProgressMessageFromVideo, selectIsAutostart, selectIsExistMatchUrls, selectIsFreezeFrameLoading, selectIsFullyConnected, selectIsLoaderScreenVisible, selectIsVideoPlayingAndDataChannelConnected, selectShowLoader, selectShowReconnectPopup, selectSignalingParameters, selectStreamConfig, selectTotalProgress, selectUserInactivityDetected, selectWarnTimeout, setAfkTimerCountdown, setAfkTimerHide, setAfkTimerVisible, setAwsInstance, setCirrusConnected, setCirrusDisconnected, setConfig, setEstablishingConnection, setFreezeFrame, setFreezeFrameFromVideo, setIntroImageSrc, setIntroVideoSrc, setLoadingImageSrc, setLoopBackCommandIsCompleted, setMaxFps, setOrchestrationContext, setOrchestrationMessage, setOrchestrationParameters, setOrchestrationProgress, setSignalingName, setStatusMessage, setStatusPercentSignallingServer, setStreamClientCompanyId, setStreamViewId, setUnrealPlaywrightConfig, setUserInactivityTimeout, setViewportNotReady, setViewportReady, showLoadingProgress, showResumeStreamPopup, showUnrealErrorMessage, showUserInactivityTimeoutPopup, signalingRetryAttempted, smoothTransition, startStream, streamAdopted, trackMixpanelEvent, trackTelemetryData, uint8ToBase64, unrealCommandCallback, unrealFeature, unrealReducer, updateCirrusInfo, videoAdaptedToContainer, videoStreamInitialized };
3115
+ export type { AggregatedStat, AnySignalingMessage, AwsInstance, BootstrapInfo, CandidateMessage, CloseReason, CommandInProgress, ConfigMessage, ConnectionError, ControlSchemeValues, DisconnectReasonType, EmittedMilestone, EventId, ForceClientDisconnect, FpsLowData, FreezeFrameMessage, InboundVideoStats, InputProps, InstanceReady, InstanceReserved, InterruptClientStream, ListStreamersMessage, MessageBase, MessageTypeValues, OrchestrationErrorMessage, OrchestrationMessageType, P2PEstablishedMessage, ParkedStream, PhaseEndedData, PhaseOverlay, PhaseParam, PingMessage, PlayerCountMessage, PollingOrchestrationMessage, Quality, QualityAnomalyData, ReceivedFile, RequestStream, ResourceBucket, ResourceTotals, SSInfo, SampleData, SelectedIceCandidatePair, SessionEndReason, SessionEndedData, SessionStartedData, SignalingData, SignalingMessageHandler, SignalingMessageMap, SignalingRetryData, SignalingRetryKind, SlowResource, StreamConfig, StreamRequestContext, StreamResolutionProps, StreamTelemetryEvent, StreamTelemetryEventMap, StreamTelemetryEventName, StreamTelemetryLifecycleData, StreamTelemetryLifecycleEventName, StreamTelemetryTrackData, StreamerListMessage, TelemetryEventEnvelope, TelemetryLifecycleEnvelope, TelemetryType, UnknownFields, UnrealCallbackDescriptor, UnrealCallbackEventMap, UnrealCallbackJson, UnrealCallbackJsonWrapped, UnrealInitialConfig, UnrealState, WSCloseCodesValues, WindowAggregate, streamPreparedForUserInteractionMessage };