133 lines
2.0 KiB
Plaintext
133 lines
2.0 KiB
Plaintext
package schema
|
|
|
|
#Frigate: {
|
|
env?: [string]: string
|
|
|
|
config: #FrigateConfig
|
|
}
|
|
|
|
#FrigateConfig: {
|
|
ffmpeg?: #FfmpegConfig
|
|
cameras: [string]: #CameraConfig
|
|
go2rtc?: #Go2RtcConfig
|
|
detectors?: [string]: #DetectorConfig
|
|
birdseye?: #BirdseyeConfig
|
|
mqtt: #MqttConfig
|
|
}
|
|
|
|
#FfmpegConfig: {
|
|
hwaccel_args?: string
|
|
}
|
|
|
|
#CameraConfig: {
|
|
detect?: {
|
|
height: int
|
|
width: int
|
|
}
|
|
ffmpeg: {
|
|
inputs: [...#FfmpegInput]
|
|
}
|
|
objects?: {
|
|
track: [...string]
|
|
filters?: [string]: #ObjectFilter
|
|
}
|
|
record?: #RecordConfig
|
|
rtmp?: {
|
|
enabled?: bool
|
|
}
|
|
snapshots?: #SnapshotsConfig
|
|
zones?: [string]: #ZoneConfig
|
|
motion?: {
|
|
mask: [...string]
|
|
}
|
|
}
|
|
|
|
#FfmpegInput: {
|
|
path: string
|
|
input_args?: string
|
|
roles: [...string]
|
|
}
|
|
|
|
#ObjectFilter: {
|
|
threshold?: float
|
|
}
|
|
|
|
#RecordConfig: {
|
|
enabled?: bool
|
|
retain?: {
|
|
days: int
|
|
mode?: #RetainMode
|
|
}
|
|
events: {
|
|
pre_capture?: int
|
|
post_capture?: int
|
|
objects?: [...string]
|
|
required_zones?: [...string]
|
|
retain?: {
|
|
default?: int
|
|
mode?: #RetainMode
|
|
objects?: [string]: int
|
|
}
|
|
}
|
|
}
|
|
|
|
#SnapshotsConfig: {
|
|
enabled?: bool
|
|
required_zones?: [...string]
|
|
retain?: {
|
|
default?: int
|
|
objects?: [string]: int
|
|
}
|
|
}
|
|
|
|
#RetainMode: "all" | "motion" | "active_objects"
|
|
|
|
#ZoneConfig: {
|
|
coordinates: string
|
|
inertia?: int
|
|
objects?: [...string]
|
|
filters?: [string]: {
|
|
min_area?: int
|
|
maax_area?: int
|
|
threshold?: float
|
|
}
|
|
}
|
|
|
|
#Go2RtcConfig: {
|
|
streams: [string]: [...string]
|
|
}
|
|
|
|
#DetectorConfig: #CpuDetector | #EdgeTpuDetector
|
|
|
|
#CpuDetector: {
|
|
type: "cpu"
|
|
num_threads?: int
|
|
}
|
|
|
|
#EdgeTpuDetector: {
|
|
type: "edgetpu"
|
|
device: string
|
|
}
|
|
|
|
#BirdseyeConfig: {
|
|
enabled?: bool
|
|
restream?: bool
|
|
width?: int
|
|
height?: int
|
|
quality?: int
|
|
mode?: "objects" | "motion" | "continuous"
|
|
inactivity_threshold?: int
|
|
layout?: {
|
|
scaling_factor?: float
|
|
max_cameras?: int
|
|
}
|
|
}
|
|
|
|
#MqttConfig: {
|
|
host: string
|
|
password?: string
|
|
port?: int
|
|
tls_ca_certs?: string
|
|
user?: string
|
|
}
|