@camera.ui/browser 0.0.100 → 0.0.102
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/dist/bundle.js +2 -1
- package/dist/bundle.js.LICENSE.txt +23 -0
- package/dist/types/packages/client/browser/src/types.d.ts +1 -0
- package/dist/types/packages/plugineer/src/polyglot/node/camera/index.d.ts +2 -1
- package/dist/types/packages/plugineer/src/polyglot/node/camera/iou.d.ts +1 -1
- package/dist/types/packages/plugineer/src/polyglot/node/camera/polygon.d.ts +1 -2
- package/dist/types/packages/plugineer/src/polyglot/node/plugins/types.d.ts +4 -0
- package/dist/types/packages/types/src/index.d.ts +8 -4
- package/dist/types/server/src/api/database/checks.d.ts +55 -0
- package/dist/types/server/src/api/database/index.d.ts +2 -1
- package/dist/types/server/src/api/database/migration.d.ts +1 -0
- package/dist/types/server/src/api/database/selfcheck.d.ts +48 -0
- package/dist/types/server/src/api/schemas/cameras.schema.d.ts +26 -26
- package/dist/types/server/src/api/schemas/users.schema.d.ts +34 -34
- package/dist/types/server/src/api/services/cameras.service.d.ts +1 -0
- package/dist/types/server/src/api/services/plugins.service.d.ts +1 -0
- package/dist/types/server/src/api/types/index.d.ts +0 -5
- package/dist/types/server/src/api/websocket/nsp/logs.d.ts +7 -1
- package/dist/types/server/src/api/websocket/nsp/metrics.d.ts +1 -1
- package/dist/types/server/src/api/websocket/nsp/status.d.ts +1 -1
- package/dist/types/server/src/api.d.ts +5 -14
- package/dist/types/server/src/camera/controller.d.ts +16 -3
- package/dist/types/server/src/{decoder/worker.d.ts → camera/frameWorker.d.ts} +8 -5
- package/dist/types/server/src/plugins/index.d.ts +2 -4
- package/dist/types/server/src/plugins/plugin.d.ts +5 -0
- package/dist/types/server/src/plugins/worker.d.ts +16 -2
- package/dist/types/server/src/services/config/constants.d.ts +1 -0
- package/dist/types/server/src/services/config/index.d.ts +11 -2
- package/dist/types/server/src/services/config/types.d.ts +7 -0
- package/dist/types/shared/types/index.d.ts +0 -1
- package/package.json +4 -4
- package/dist/types/server/src/decoder/index.d.ts +0 -11
- package/dist/types/server/src/decoder/types.d.ts +0 -7
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/*! *****************************************************************************
|
|
2
|
+
Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
+
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
|
4
|
+
this file except in compliance with the License. You may obtain a copy of the
|
|
5
|
+
License at http://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
|
|
7
|
+
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
8
|
+
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
|
|
9
|
+
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
|
|
10
|
+
MERCHANTABLITY OR NON-INFRINGEMENT.
|
|
11
|
+
|
|
12
|
+
See the Apache Version 2.0 License for specific language governing permissions
|
|
13
|
+
and limitations under the License.
|
|
14
|
+
***************************************************************************** */
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* splaytree v3.1.2
|
|
18
|
+
* Fast Splay tree for Node and browser
|
|
19
|
+
*
|
|
20
|
+
* @author Alexander Milevski <info@w8r.name>
|
|
21
|
+
* @license MIT
|
|
22
|
+
* @preserve
|
|
23
|
+
*/
|
|
@@ -35,6 +35,7 @@ export interface BaseLogger {
|
|
|
35
35
|
log: (...args: any[]) => void;
|
|
36
36
|
error: (...args: any[]) => void;
|
|
37
37
|
warn: (...args: any[]) => void;
|
|
38
|
+
success: (...args: any[]) => void;
|
|
38
39
|
debug: (...args: any[]) => void;
|
|
39
40
|
trace: (...args: any[]) => void;
|
|
40
41
|
attention: (...args: any[]) => void;
|
|
@@ -4,7 +4,7 @@ import { BehaviorSubject } from 'rxjs';
|
|
|
4
4
|
import type { AudioSetEvent, AudioState, BatterySetEvent, BatteryState, Camera, CameraActivitySettings, CameraDelegate, CameraFrameWorkerSettings, CameraInformation, CameraPTZDelegate, CameraPrebufferDelegate, CameraSource, CameraType, DetectionZone, DoorbellSetEvent, DoorbellState, LightSetEvent, LightState, LoggerService, MotionSetEvent, MotionState, ObjectSetEvent, ObjectState, SetValues, SirenSetEvent, SirenState, StateValues } from '@camera.ui/types';
|
|
5
5
|
import type { Observable } from 'rxjs';
|
|
6
6
|
export declare abstract class BaseCameraDevice extends Subscribed {
|
|
7
|
-
|
|
7
|
+
readonly logger: LoggerService;
|
|
8
8
|
protected snapshotCache: TTLCache<string, ArrayBuffer>;
|
|
9
9
|
protected cameraSubject: BehaviorSubject<Camera>;
|
|
10
10
|
protected cameraState: BehaviorSubject<boolean>;
|
|
@@ -41,6 +41,7 @@ export declare abstract class BaseCameraDevice extends Subscribed {
|
|
|
41
41
|
get hasBinarySensor(): boolean;
|
|
42
42
|
get hasBattery(): boolean;
|
|
43
43
|
get hasMotionDetector(): boolean;
|
|
44
|
+
get extendedMotionDetector(): boolean;
|
|
44
45
|
get hasAudioDetector(): boolean;
|
|
45
46
|
get hasObjectDetector(): boolean;
|
|
46
47
|
get hasPtz(): boolean;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import type { Detection } from '@camera.ui/types';
|
|
2
|
-
export declare function mergeDetections(detections: Detection[], iouThreshold?: number): Detection[];
|
|
2
|
+
export declare function mergeDetections(detections: Detection[], iouThreshold?: number, closeThreshold?: number): Detection[];
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { CameraActivitySettings, Detection, DetectionZone } from '@camera.ui/types';
|
|
2
2
|
export declare const convertZonePointsToPixels: (zone: DetectionZone, detection: Detection) => DetectionZone;
|
|
3
3
|
export declare const convertBoundingBoxToPixels: (detection: Detection) => Detection;
|
|
4
|
-
export declare const
|
|
5
|
-
export declare const areObjectDetectionsValid: (detections: Detection[], zones: DetectionZone[], activitySettings: CameraActivitySettings) => Detection[];
|
|
4
|
+
export declare const areDetectionsValid: (detections: Detection[], zones: DetectionZone[], activitySettings: CameraActivitySettings) => Detection[];
|
|
@@ -47,8 +47,12 @@ export type ExtensionOrSupport = {
|
|
|
47
47
|
extension?: never;
|
|
48
48
|
supportAdditionalCameras?: boolean;
|
|
49
49
|
};
|
|
50
|
+
export interface PluginOptions {
|
|
51
|
+
extendedMotionDetection?: boolean;
|
|
52
|
+
}
|
|
50
53
|
export interface PluginContractBase {
|
|
51
54
|
builtIns?: CameraExtensionWithoutHub[];
|
|
55
|
+
options?: PluginOptions;
|
|
52
56
|
dependencies?: string[];
|
|
53
57
|
pythonVersion?: string;
|
|
54
58
|
}
|
|
@@ -18,8 +18,8 @@ export type DecoderFormat = 'yuv' | 'rgb';
|
|
|
18
18
|
export type ImageInputFormat = 'yuv' | 'rgb' | 'rgba' | 'gray';
|
|
19
19
|
export type ImageOutputFormat = 'rgb' | 'rgba' | 'gray';
|
|
20
20
|
export type CameraExtension = 'hub' | 'prebuffer' | 'motionDetection' | 'objectDetection' | 'audioDetection' | 'ptz';
|
|
21
|
-
export type CameraFrameWorkerDecoder = 'pillow' | 'wasm';
|
|
22
|
-
export type CameraFrameWorkerResolution = '
|
|
21
|
+
export type CameraFrameWorkerDecoder = 'pillow' | 'wasm' | 'rust';
|
|
22
|
+
export type CameraFrameWorkerResolution = '3840x2160' | '3072x1728' | '2560x1440' | '1920x1080' | '1440x1080' | '1280x720' | '960x540' | '640x480' | '640x360' | '320x240' | '320x180';
|
|
23
23
|
export type AudioCodec = 'PCMU' | 'PCMA' | 'MPEG4-GENERIC' | 'opus' | 'G722' | 'MPA' | 'PCM' | 'FLAC';
|
|
24
24
|
export type AudioFFmpegCodec = 'pcm_mulaw' | 'pcm_alaw' | 'aac' | 'libopus' | 'g722' | 'mp3' | 'pcm_s16be' | 'pcm_s16le' | 'flac';
|
|
25
25
|
export type VideoCodec = 'H264' | 'H265' | 'VP8' | 'VP9' | 'AV1' | 'JPEG' | 'RAW';
|
|
@@ -232,8 +232,8 @@ export interface ImageCrop {
|
|
|
232
232
|
height: number;
|
|
233
233
|
}
|
|
234
234
|
export interface ImageResize {
|
|
235
|
-
width
|
|
236
|
-
height
|
|
235
|
+
width: number;
|
|
236
|
+
height: number;
|
|
237
237
|
}
|
|
238
238
|
export interface ImageFormat {
|
|
239
239
|
to: ImageOutputFormat;
|
|
@@ -386,6 +386,7 @@ export interface Camera extends Omit<BaseCamera, 'activityZones'> {
|
|
|
386
386
|
hasAudioDetector: boolean;
|
|
387
387
|
hasMotionDetector: boolean;
|
|
388
388
|
hasObjectDetector: boolean;
|
|
389
|
+
extendedMotionDetector: boolean;
|
|
389
390
|
hasPtz: boolean;
|
|
390
391
|
hasPrebuffer: boolean;
|
|
391
392
|
sources: CameraInput[];
|
|
@@ -407,6 +408,7 @@ export interface CameraDevice {
|
|
|
407
408
|
readonly hasBinarySensor: boolean;
|
|
408
409
|
readonly hasBattery: boolean;
|
|
409
410
|
readonly hasMotionDetector: boolean;
|
|
411
|
+
readonly extendedMotionDetector: boolean;
|
|
410
412
|
readonly hasAudioDetector: boolean;
|
|
411
413
|
readonly hasObjectDetector: boolean;
|
|
412
414
|
readonly hasPtz: boolean;
|
|
@@ -430,6 +432,7 @@ export interface CameraDevice {
|
|
|
430
432
|
readonly onDoorbellPressed: Observable<DoorbellState>;
|
|
431
433
|
readonly onSirenDetected: Observable<SirenState>;
|
|
432
434
|
readonly onBatteryChanged: Observable<BatteryState>;
|
|
435
|
+
readonly logger: LoggerService;
|
|
433
436
|
snapshot(forceNew?: boolean): Promise<ArrayBuffer | undefined>;
|
|
434
437
|
onStateChange<T extends keyof StateValues>(stateName: T): Observable<{
|
|
435
438
|
newState: StateValues[T];
|
|
@@ -602,6 +605,7 @@ export interface LoggerService {
|
|
|
602
605
|
log: (...args: any[]) => void;
|
|
603
606
|
error: (...args: any[]) => void;
|
|
604
607
|
warn: (...args: any[]) => void;
|
|
608
|
+
success: (...args: any[]) => void;
|
|
605
609
|
debug: (...args: any[]) => void;
|
|
606
610
|
trace: (...args: any[]) => void;
|
|
607
611
|
attention: (...args: any[]) => void;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
export interface PathExistenceResult {
|
|
2
|
+
path: string;
|
|
3
|
+
exists: boolean;
|
|
4
|
+
}
|
|
5
|
+
export interface FFmpegExistenceResult {
|
|
6
|
+
path: string;
|
|
7
|
+
exists: boolean;
|
|
8
|
+
hasPermissions: boolean;
|
|
9
|
+
error?: Error;
|
|
10
|
+
}
|
|
11
|
+
export interface PathPermissionsResult {
|
|
12
|
+
path: string;
|
|
13
|
+
hasPermissions: boolean;
|
|
14
|
+
error?: Error;
|
|
15
|
+
}
|
|
16
|
+
export interface CleanedUpFilesResult {
|
|
17
|
+
path: string;
|
|
18
|
+
wasCleaned: boolean;
|
|
19
|
+
error?: Error;
|
|
20
|
+
}
|
|
21
|
+
export interface DatabaseCorruptionResult {
|
|
22
|
+
dbPath: string;
|
|
23
|
+
isCorrupt: boolean;
|
|
24
|
+
error?: Error;
|
|
25
|
+
}
|
|
26
|
+
export interface PortAvailabilityResult {
|
|
27
|
+
port: number;
|
|
28
|
+
isAvailable: boolean;
|
|
29
|
+
}
|
|
30
|
+
export interface OrphanedProcessesResult {
|
|
31
|
+
processInfo: ProcInfo;
|
|
32
|
+
killed?: boolean;
|
|
33
|
+
wasOrphaned?: boolean;
|
|
34
|
+
error?: Error;
|
|
35
|
+
}
|
|
36
|
+
export interface PathPermission {
|
|
37
|
+
path: string;
|
|
38
|
+
mode: number;
|
|
39
|
+
}
|
|
40
|
+
export interface ProcInfo {
|
|
41
|
+
pid: number;
|
|
42
|
+
startTime: number;
|
|
43
|
+
command: string;
|
|
44
|
+
args: string[];
|
|
45
|
+
titles?: string[];
|
|
46
|
+
uniqueId?: string;
|
|
47
|
+
}
|
|
48
|
+
export declare function checkPathsExist(pathsToCheck: string[]): Promise<PathExistenceResult[]>;
|
|
49
|
+
export declare function checkPathPermissions(pathsWithPermissionsToCheck: PathPermission[]): Promise<PathPermissionsResult[]>;
|
|
50
|
+
export declare function cleanUpFiles(filesToClean: string[]): Promise<CleanedUpFilesResult[]>;
|
|
51
|
+
export declare function checkDatabaseCorruption(dbPath: string): Promise<DatabaseCorruptionResult>;
|
|
52
|
+
export declare function checkPortAvailability(portsToCheck: number[]): Promise<PortAvailabilityResult[]>;
|
|
53
|
+
export declare function checkFfmpegBinary(ffmpegPaths: string[]): Promise<PathExistenceResult[]>;
|
|
54
|
+
export declare function checkOrphanedProcesses(processInfos: ProcInfo[]): Promise<OrphanedProcessesResult[]>;
|
|
55
|
+
export declare function checkInstalledFFmpegs(): Promise<FFmpegExistenceResult[]>;
|
|
@@ -2,7 +2,7 @@ import type { FastifyInstance } from 'fastify';
|
|
|
2
2
|
import type { Database as DB, RootDatabase as RootDB } from 'lmdb';
|
|
3
3
|
import type { DBAuth, DBCamera, DBPlugin, DBSettings, DBSystem, DBUser } from './types.js';
|
|
4
4
|
export declare class Database {
|
|
5
|
-
static readonly VERSION = "1.0.
|
|
5
|
+
static readonly VERSION = "1.0.4";
|
|
6
6
|
authDB: RootDB<DBAuth, 'auth'>;
|
|
7
7
|
camerasDB: DB<DBCamera[], 'cameras'>;
|
|
8
8
|
pluginsDB: DB<DBPlugin[], 'plugins'>;
|
|
@@ -11,6 +11,7 @@ export declare class Database {
|
|
|
11
11
|
systemDB: DB<DBSystem, 'system'>;
|
|
12
12
|
private lowdb;
|
|
13
13
|
private databaseMigration;
|
|
14
|
+
private selfCheck;
|
|
14
15
|
private databases;
|
|
15
16
|
private app;
|
|
16
17
|
private configService;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { CleanedUpFilesResult, DatabaseCorruptionResult, FFmpegExistenceResult, OrphanedProcessesResult, PathExistenceResult, PathPermissionsResult, PortAvailabilityResult } from './checks.js';
|
|
2
|
+
export interface SelfCheckConfig {
|
|
3
|
+
enabled: boolean;
|
|
4
|
+
checks: {
|
|
5
|
+
pathsExistence: boolean;
|
|
6
|
+
pathsPermissions: boolean;
|
|
7
|
+
cleanupFiles: boolean;
|
|
8
|
+
databaseCorruption: boolean;
|
|
9
|
+
portAvailability: boolean;
|
|
10
|
+
ffmpegBinaries: boolean;
|
|
11
|
+
orphanedProcesses: boolean;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
export interface SelfCheckResults {
|
|
15
|
+
status: 'success' | 'error' | 'disabled';
|
|
16
|
+
error?: string;
|
|
17
|
+
pathsExistence?: PathExistenceResult[];
|
|
18
|
+
pathsPermissions?: PathPermissionsResult[];
|
|
19
|
+
cleanedUpFiles?: CleanedUpFilesResult[];
|
|
20
|
+
databaseCorruption?: DatabaseCorruptionResult;
|
|
21
|
+
portAvailability?: PortAvailabilityResult[];
|
|
22
|
+
installedFFmpegs?: FFmpegExistenceResult[];
|
|
23
|
+
orphanedProcesses?: OrphanedProcessesResult[];
|
|
24
|
+
}
|
|
25
|
+
export declare class SelfCheck {
|
|
26
|
+
private logger;
|
|
27
|
+
private configService;
|
|
28
|
+
private config;
|
|
29
|
+
constructor(config?: Partial<SelfCheckConfig>);
|
|
30
|
+
run(): Promise<void>;
|
|
31
|
+
private performChecks;
|
|
32
|
+
private checkForCriticalIssues;
|
|
33
|
+
private checkForNonCriticalIssues;
|
|
34
|
+
private saveCheckReport;
|
|
35
|
+
private generateCheckReport;
|
|
36
|
+
private formatIssues;
|
|
37
|
+
private formatPathsExistence;
|
|
38
|
+
private formatPathsPermissions;
|
|
39
|
+
private formatCleanedUpFiles;
|
|
40
|
+
private formatDatabaseCorruption;
|
|
41
|
+
private formatPortAvailability;
|
|
42
|
+
private formatFfmpegBinaries;
|
|
43
|
+
private formatOrphanedProcesses;
|
|
44
|
+
private sanitizeDetails;
|
|
45
|
+
private serializeError;
|
|
46
|
+
private getPathName;
|
|
47
|
+
private isCriticalPath;
|
|
48
|
+
}
|
|
@@ -218,17 +218,17 @@ export declare const extensionsSettingsSchema: zod.ZodObject<{
|
|
|
218
218
|
}>;
|
|
219
219
|
export declare const streamingModeSchema: zod.ZodUnion<[zod.ZodLiteral<"mse">, zod.ZodLiteral<"webrtc">, zod.ZodLiteral<"webrtc/tcp">, zod.ZodLiteral<"mjpeg">, zod.ZodLiteral<"hls">, zod.ZodLiteral<"mp4">]>;
|
|
220
220
|
export declare const frameWorkerSettingsSchema: zod.ZodObject<{
|
|
221
|
-
decoder: zod.ZodUnion<[zod.ZodLiteral<"pillow">, zod.ZodLiteral<"wasm">]>;
|
|
221
|
+
decoder: zod.ZodUnion<[zod.ZodLiteral<"pillow">, zod.ZodLiteral<"wasm">, zod.ZodLiteral<"rust">]>;
|
|
222
222
|
fps: zod.ZodNumber;
|
|
223
|
-
resolution: zod.ZodUnion<[zod.ZodLiteral<"
|
|
223
|
+
resolution: zod.ZodUnion<[zod.ZodLiteral<"3840x2160">, zod.ZodLiteral<"3072x1728">, zod.ZodLiteral<"2560x1440">, zod.ZodLiteral<"1920x1080">, zod.ZodLiteral<"1440x1080">, zod.ZodLiteral<"1280x720">, zod.ZodLiteral<"960x540">, zod.ZodLiteral<"640x480">, zod.ZodLiteral<"640x360">, zod.ZodLiteral<"320x240">, zod.ZodLiteral<"320x180">]>;
|
|
224
224
|
}, "strip", zod.ZodTypeAny, {
|
|
225
|
-
decoder: "pillow" | "wasm";
|
|
225
|
+
decoder: "pillow" | "wasm" | "rust";
|
|
226
226
|
fps: number;
|
|
227
|
-
resolution: "
|
|
227
|
+
resolution: "3840x2160" | "3072x1728" | "2560x1440" | "1920x1080" | "1440x1080" | "1280x720" | "960x540" | "640x480" | "640x360" | "320x240" | "320x180";
|
|
228
228
|
}, {
|
|
229
|
-
decoder: "pillow" | "wasm";
|
|
229
|
+
decoder: "pillow" | "wasm" | "rust";
|
|
230
230
|
fps: number;
|
|
231
|
-
resolution: "
|
|
231
|
+
resolution: "3840x2160" | "3072x1728" | "2560x1440" | "1920x1080" | "1440x1080" | "1280x720" | "960x540" | "640x480" | "640x360" | "320x240" | "320x180";
|
|
232
232
|
}>;
|
|
233
233
|
export declare const cameraTypeSchema: zod.ZodUnion<[zod.ZodLiteral<"camera">, zod.ZodLiteral<"doorbell">]>;
|
|
234
234
|
export declare const interfaceSettingsSchema: zod.ZodObject<{
|
|
@@ -468,17 +468,17 @@ export declare const createCameraSchema: zod.ZodObject<{
|
|
|
468
468
|
};
|
|
469
469
|
}>>;
|
|
470
470
|
frameWorkerSettings: zod.ZodDefault<zod.ZodObject<{
|
|
471
|
-
decoder: zod.ZodUnion<[zod.ZodLiteral<"pillow">, zod.ZodLiteral<"wasm">]>;
|
|
471
|
+
decoder: zod.ZodUnion<[zod.ZodLiteral<"pillow">, zod.ZodLiteral<"wasm">, zod.ZodLiteral<"rust">]>;
|
|
472
472
|
fps: zod.ZodNumber;
|
|
473
|
-
resolution: zod.ZodUnion<[zod.ZodLiteral<"
|
|
473
|
+
resolution: zod.ZodUnion<[zod.ZodLiteral<"3840x2160">, zod.ZodLiteral<"3072x1728">, zod.ZodLiteral<"2560x1440">, zod.ZodLiteral<"1920x1080">, zod.ZodLiteral<"1440x1080">, zod.ZodLiteral<"1280x720">, zod.ZodLiteral<"960x540">, zod.ZodLiteral<"640x480">, zod.ZodLiteral<"640x360">, zod.ZodLiteral<"320x240">, zod.ZodLiteral<"320x180">]>;
|
|
474
474
|
}, "strip", zod.ZodTypeAny, {
|
|
475
|
-
decoder: "pillow" | "wasm";
|
|
475
|
+
decoder: "pillow" | "wasm" | "rust";
|
|
476
476
|
fps: number;
|
|
477
|
-
resolution: "
|
|
477
|
+
resolution: "3840x2160" | "3072x1728" | "2560x1440" | "1920x1080" | "1440x1080" | "1280x720" | "960x540" | "640x480" | "640x360" | "320x240" | "320x180";
|
|
478
478
|
}, {
|
|
479
|
-
decoder: "pillow" | "wasm";
|
|
479
|
+
decoder: "pillow" | "wasm" | "rust";
|
|
480
480
|
fps: number;
|
|
481
|
-
resolution: "
|
|
481
|
+
resolution: "3840x2160" | "3072x1728" | "2560x1440" | "1920x1080" | "1440x1080" | "1280x720" | "960x540" | "640x480" | "640x360" | "320x240" | "320x180";
|
|
482
482
|
}>>;
|
|
483
483
|
}, "strict", zod.ZodTypeAny, {
|
|
484
484
|
pluginId: string;
|
|
@@ -523,9 +523,9 @@ export declare const createCameraSchema: zod.ZodObject<{
|
|
|
523
523
|
};
|
|
524
524
|
};
|
|
525
525
|
frameWorkerSettings: {
|
|
526
|
-
decoder: "pillow" | "wasm";
|
|
526
|
+
decoder: "pillow" | "wasm" | "rust";
|
|
527
527
|
fps: number;
|
|
528
|
-
resolution: "
|
|
528
|
+
resolution: "3840x2160" | "3072x1728" | "2560x1440" | "1920x1080" | "1440x1080" | "1280x720" | "960x540" | "640x480" | "640x360" | "320x240" | "320x180";
|
|
529
529
|
};
|
|
530
530
|
sources: {
|
|
531
531
|
_id: string;
|
|
@@ -602,9 +602,9 @@ export declare const createCameraSchema: zod.ZodObject<{
|
|
|
602
602
|
};
|
|
603
603
|
} | undefined;
|
|
604
604
|
frameWorkerSettings?: {
|
|
605
|
-
decoder: "pillow" | "wasm";
|
|
605
|
+
decoder: "pillow" | "wasm" | "rust";
|
|
606
606
|
fps: number;
|
|
607
|
-
resolution: "
|
|
607
|
+
resolution: "3840x2160" | "3072x1728" | "2560x1440" | "1920x1080" | "1440x1080" | "1280x720" | "960x540" | "640x480" | "640x360" | "320x240" | "320x180";
|
|
608
608
|
} | undefined;
|
|
609
609
|
extensions?: {
|
|
610
610
|
plugins: string[];
|
|
@@ -820,17 +820,17 @@ export declare const patchCameraSchema: zod.ZodObject<{
|
|
|
820
820
|
} | undefined;
|
|
821
821
|
}>>;
|
|
822
822
|
frameWorkerSettings: zod.ZodOptional<zod.ZodObject<{
|
|
823
|
-
decoder: zod.ZodOptional<zod.ZodUnion<[zod.ZodLiteral<"pillow">, zod.ZodLiteral<"wasm">]>>;
|
|
823
|
+
decoder: zod.ZodOptional<zod.ZodUnion<[zod.ZodLiteral<"pillow">, zod.ZodLiteral<"wasm">, zod.ZodLiteral<"rust">]>>;
|
|
824
824
|
fps: zod.ZodOptional<zod.ZodNumber>;
|
|
825
|
-
resolution: zod.ZodOptional<zod.ZodUnion<[zod.ZodLiteral<"
|
|
825
|
+
resolution: zod.ZodOptional<zod.ZodUnion<[zod.ZodLiteral<"3840x2160">, zod.ZodLiteral<"3072x1728">, zod.ZodLiteral<"2560x1440">, zod.ZodLiteral<"1920x1080">, zod.ZodLiteral<"1440x1080">, zod.ZodLiteral<"1280x720">, zod.ZodLiteral<"960x540">, zod.ZodLiteral<"640x480">, zod.ZodLiteral<"640x360">, zod.ZodLiteral<"320x240">, zod.ZodLiteral<"320x180">]>>;
|
|
826
826
|
}, "strip", zod.ZodTypeAny, {
|
|
827
|
-
decoder?: "pillow" | "wasm" | undefined;
|
|
827
|
+
decoder?: "pillow" | "wasm" | "rust" | undefined;
|
|
828
828
|
fps?: number | undefined;
|
|
829
|
-
resolution?: "
|
|
829
|
+
resolution?: "3840x2160" | "3072x1728" | "2560x1440" | "1920x1080" | "1440x1080" | "1280x720" | "960x540" | "640x480" | "640x360" | "320x240" | "320x180" | undefined;
|
|
830
830
|
}, {
|
|
831
|
-
decoder?: "pillow" | "wasm" | undefined;
|
|
831
|
+
decoder?: "pillow" | "wasm" | "rust" | undefined;
|
|
832
832
|
fps?: number | undefined;
|
|
833
|
-
resolution?: "
|
|
833
|
+
resolution?: "3840x2160" | "3072x1728" | "2560x1440" | "1920x1080" | "1440x1080" | "1280x720" | "960x540" | "640x480" | "640x360" | "320x240" | "320x180" | undefined;
|
|
834
834
|
}>>;
|
|
835
835
|
}, "strict", zod.ZodTypeAny, {
|
|
836
836
|
type?: "camera" | "doorbell" | undefined;
|
|
@@ -868,9 +868,9 @@ export declare const patchCameraSchema: zod.ZodObject<{
|
|
|
868
868
|
} | undefined;
|
|
869
869
|
} | undefined;
|
|
870
870
|
frameWorkerSettings?: {
|
|
871
|
-
decoder?: "pillow" | "wasm" | undefined;
|
|
871
|
+
decoder?: "pillow" | "wasm" | "rust" | undefined;
|
|
872
872
|
fps?: number | undefined;
|
|
873
|
-
resolution?: "
|
|
873
|
+
resolution?: "3840x2160" | "3072x1728" | "2560x1440" | "1920x1080" | "1440x1080" | "1280x720" | "960x540" | "640x480" | "640x360" | "320x240" | "320x180" | undefined;
|
|
874
874
|
} | undefined;
|
|
875
875
|
sources?: {
|
|
876
876
|
_id: string;
|
|
@@ -931,9 +931,9 @@ export declare const patchCameraSchema: zod.ZodObject<{
|
|
|
931
931
|
} | undefined;
|
|
932
932
|
} | undefined;
|
|
933
933
|
frameWorkerSettings?: {
|
|
934
|
-
decoder?: "pillow" | "wasm" | undefined;
|
|
934
|
+
decoder?: "pillow" | "wasm" | "rust" | undefined;
|
|
935
935
|
fps?: number | undefined;
|
|
936
|
-
resolution?: "
|
|
936
|
+
resolution?: "3840x2160" | "3072x1728" | "2560x1440" | "1920x1080" | "1440x1080" | "1280x720" | "960x540" | "640x480" | "640x360" | "320x240" | "320x180" | undefined;
|
|
937
937
|
} | undefined;
|
|
938
938
|
sources?: {
|
|
939
939
|
name: string;
|