feat: initial Frigate NVR setup

Dual-stream config (sub for detect, main for live/snapshots),
Intel VAAPI hardware accel, LPR local (YOLOv9 + PaddleOCR),
car/person detection, snapshots 30j retention.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
perco
2026-06-02 09:40:20 +02:00
co-authored by Claude Sonnet 4.6
commit 7db2e1e028
3 changed files with 101 additions and 0 deletions
+3
View File
@@ -0,0 +1,3 @@
storage/
db/
config/model_cache/
+66
View File
@@ -0,0 +1,66 @@
mqtt:
enabled: false
database:
path: /db/frigate.db
ffmpeg:
hwaccel_args: preset-vaapi
detectors:
default:
type: cpu
cameras:
entree:
ffmpeg:
inputs:
- path: rtsp://admin:Wxcvbn99--$$@192.168.1.44/h264Preview_01_sub
roles:
- detect
- path: rtsp://admin:Wxcvbn99--$$@192.168.1.44/h264Preview_01_main
roles:
- record
detect:
enabled: true
width: 640
height: 360
fps: 5
objects:
track:
- car
- person
filters:
car:
min_score: 0.5
threshold: 0.7
person:
min_score: 0.5
threshold: 0.7
snapshots:
enabled: true
bounding_box: true
retain:
default: 30
record:
enabled: false
motion:
threshold: 25
improve_contrast: true
zones:
dehors:
coordinates:
0.005,0.517,0.127,0.445,0.276,0.4,0.44,0.354,0.892,0.268,0.858,0.139,0.713,0.131,0.703,0.003,0.001,0.005
loitering_time: 0
snapshots:
retain:
default: 30
lpr:
enabled: true
min_area: 1500
environment_vars:
LIBVA_DRIVER_NAME: i965
version: 0.17-0
+32
View File
@@ -0,0 +1,32 @@
services:
frigate:
container_name: frigate
image: ghcr.io/blakeblackshear/frigate:stable
restart: unless-stopped
shm_size: "256mb"
devices:
- /dev/dri/renderD128:/dev/dri/renderD128
volumes:
- /etc/localtime:/etc/localtime:ro
- ./config/config.yml:/config/config.yml
- ./storage:/media/frigate
- ./db:/db
ports:
- "5000:5000"
- "8554:8554"
- "8555:8555/tcp"
- "8555:8555/udp"
environment:
FRIGATE_RTSP_PASSWORD: ""
labels:
- traefik.enable=true
- traefik.http.routers.frigate.rule=Host(`frigate.nas.percolouco.com`)
- traefik.http.routers.frigate.entrypoints=websecure
- traefik.http.routers.frigate.tls.certresolver=letsencrypt
- traefik.http.services.frigate.loadbalancer.server.port=5000
networks:
- proxy
networks:
proxy:
external: true