Skip to main content
PromptQuorum
/Smart Home/Frigate NVR 구축 가이드: 디텍터, 존, Home Assistant (2026)
Local AI & LLMs in the Smart Home

Frigate NVR 구축 가이드: 디텍터, 존, Home Assistant (2026)

·16분 읽기·Hans Kuepper 저 · PromptQuorum 창립자, 멀티 모델 AI 디스패치 도구 · PromptQuorum

Frigate는 카메라 스트림에 대해 AI 객체 인식을 로컬에서 실행하고, 모든 인식 결과를 Home Assistant에 엔티티로 노출하는 오픈소스 NVR입니다. Frigate 0.17.2 기준으로 신규 구축의 권장 출발점은 Google Coral이 아니라 OpenVINO 디텍터를 구동하는 Intel 내장 GPU입니다.

Frigate는 AI 객체 인식을 사용자 소유 하드웨어에서 실행하고, 인식 결과를 Home Assistant에 엔티티로 넘겨주는 오픈소스 네트워크 비디오 레코더입니다. 이 가이드에서는 2026년 기준 디텍터 선택(Google Coral은 더 이상 기본 답이 아닙니다), 카메라 스트림 설정, 실제로 동작하는 config.yml, 오탐을 실제로 없애는 존 설정, Home Assistant 연동, 그리고 0.16과 0.17에서 달라진 점을 다룹니다.

Frigate NVR 구축 가이드: 디텍터, 존, Home Assistant (2026)

핵심 요점

  • Frigate 0.17.2(2026년 6월 28일)가 현재 안정 버전이며, 0.18.0은 2026년 8월 8일 기준 베타 단계입니다
  • 디텍터가 먼저입니다. OpenVINO를 구동하는 Intel 내장 GPU가 가장 저렴한 현실적 출발점이고, Hailo-8이나 NVIDIA GPU는 그 위로 확장됩니다
  • Coral은 이제 기본값이 아니라 대안입니다. 소비 전력이 결정적 제약일 때만 권장됩니다
  • 카메라마다 두 개의 스트림을 씁니다. 인식용 1280x720 / 5 fps, 녹화용 풀 해상도 메인 스트림 15 fps입니다
  • 오탐을 실제로 없애는 것은 존과 required_zones, loitering_time, inertia이며 더 좋은 모델이 아닙니다
  • Home Assistant 통합은 MQTT 통합이 먼저 구성되어 있어야 하며, 그렇지 않으면 엔티티가 하나도 생기지 않습니다
  • 시맨틱 검색은 최소 8 GB RAM, 쾌적하게 쓰려면 16 GB와 GPU, 그리고 AVX2를 지원하는 CPU가 필요합니다
  • Frigate+는 연 50달러(USD 청구)에 최대 12개의 파인튜닝 모델을 제공하며, 얼굴 인식과 번호판 인식은 구독 없이 동작합니다

Frigate는 일반 NVR과 무엇이 다릅니까?

Frigate는 두 단계로 동작합니다. 먼저 부하가 낮은 움직임 감지가 살펴볼 만한 영역을 골라내고, 그다음 실제 객체 인식 모델이 그곳에 사람, 차량, 반려동물, 택배 상자가 있는지 판단합니다. 일반 NVR은 픽셀 변화로 동작하기 때문에 자동차 전조등, 비, 흔들리는 관목에도 알림을 보냅니다.

📍 한 문장으로

Frigate는 저비용 움직임 감지로 프레임 내 영역을 선별한 뒤 그 영역에서만 객체 인식 모델을 실행하며, 그래서 작은 가속기 한 개로 여러 카메라를 동시에 처리할 수 있습니다.

  • 움직임이 먼저, AI가 나중: 가벼운 움직임 감지가 디텍터를 *어디에서* 실행할지 정하므로, 작은 가속기 하나로도 여러 카메라를 감당합니다.
  • 객체 단위 녹화: 보관 정책이 24시간 연속 버퍼가 아니라 인식된 내용에 따르므로 저장 공간이 훨씬 오래 갑니다.
  • go2rtc를 통한 재송출: Frigate가 카메라를 한 번만 가져와 재배포하므로, 다섯 개의 클라이언트가 카메라에 직접 몰리는 일이 없습니다.
  • MQTT 출력: 추적된 객체, 존 진입, 객체 수가 모두 발행되며, 이것이 Home Assistant 자동화를 가능하게 하는 기반입니다.
  • 리뷰 항목: 인식 결과는 *alerts*(알림을 받고 싶은 것)와 *detections*(기록만 하고 알리지 않는 것)로 나뉩니다.

📌참고: alerts와 detections의 구분은 Frigate에서 가장 유용한 개념입니다. alerts는 휴대폰을 울리는 것이고, detections는 검색 가능한 기록입니다. 둘을 따로 설정하십시오.

2026년에 Frigate용으로 어떤 디텍터를 사야 합니까?

처음부터 시작한다면 내장 GPU가 있는 Intel 기기와 OpenVINO 디텍터를, 와트당 가장 낮은 지연이 필요하다면 Hailo-8 모듈을, 이미 NVIDIA GPU가 있는 기기라면 ONNX 디텍터를 선택하십시오. Frigate 문서는 소비 전력 제약이 유난히 빡빡한 경우를 제외하면 신규 설치에 Coral을 권장하지 않는다고 명시합니다.

💬 쉽게 말하면

디텍터란 "저것이 사람인가"에 답하는 칩입니다. Intel CPU에 이미 들어 있는 그래픽 코어, 별도의 NVIDIA 그래픽카드, 또는 작은 M.2 AI 모듈을 쓸 수 있습니다. 모두가 추천하는 그 USB 스틱(Google Coral)도 여전히 동작하지만, 더 이상 권장 출발점은 아닙니다.

  • 호스트에 6세대 이상 Intel CPU가 있다면 OpenVINO를 쓰십시오. 내장 GPU는 이미 값을 치른 자원이고 추가 하드웨어가 필요 없습니다.
  • 기기에 NVIDIA나 AMD GPU가 이미 있다면 ONNX를 쓰십시오. Frigate가 플랫폼을 자동으로 인식합니다.
  • M.2 슬롯에서 낮은 전력으로 가속기급 지연을 원한다면 Hailo-8 / Hailo-8L을 쓰십시오.
  • NVIDIA Jetson 보드에서는 TensorRT를 쓰십시오 — 스마트홈 AI를 위한 NVIDIA Jetson Orin Nano 리뷰를 참고하십시오.
  • edgetpu(Coral)는 와트가 결정적 제약이고 노후화되는 모델 라인업을 감수할 수 있을 때만 쓰십시오.
  • cpu 디텍터는 완전히 피하십시오. Frigate에 따르면 OpenVINO의 CPU 모드가 전용 CPU 디텍터보다 효율적입니다.
디텍터
하드웨어
추론 시간(공개값)
openvinoIntel Arc A750약 4 ms MobileNetV2 / 약 8 ms YOLOv9-320
openvinoIntel NPU약 6 ms MobileNetV2 / 약 11 ms YOLOv9-320
openvinoIntel UHD 730 내장 GPU약 10 ms MobileNetV2 / 약 14 ms YOLOv9-tiny
hailo8lHailo-8약 6 ms SSD MobileNet / 약 7 ms YOLOv6n
hailo8lHailo-8L약 10 ms SSD MobileNet / 약 11 ms YOLOv6n
onnxNVIDIA RTX 3070약 6–8 ms YOLOv9 tiny→small 320
onnxNVIDIA RTX 3050약 8–10 ms YOLOv9 tiny→small 320
onnxAMD Radeon 780M약 14 ms YOLOv9-tiny-320
zmqApple M3 Pro약 6 ms YOLOv9-tiny-320

위 수치는 Frigate가 디텍터별로 공개한 값이며 PromptQuorum의 자체 측정치가 아닙니다. Frigate는 이 외에도 rknn(Rockchip NPU), memryx, synaptics, deepstack, degirum 디텍터 타입을 제공합니다.

⚠️경고: 대부분의 Frigate 튜토리얼은 아직도 "Coral부터 사라"로 시작합니다. 이 조언은 0.16과 0.17에서 진행된 OpenVINO, Hailo, ONNX 작업 이전의 것이며, Frigate 자체 하드웨어 문서가 신규 구축에 대해 이를 명확히 부정하고 있습니다.

💡: Coral의 카메라 수용량은 모든 카메라가 나눠 쓰는 약 1000 / inference_speed fps에 해당합니다. 인식 5 fps 기준으로 10 ms 추론 예산이면 계산상 약 20개 스트림을 감당하지만, 발열로 인한 클럭 저하와 USB 전력 제약이 이 수치를 깎아냅니다.

Frigate 서버 자체에는 무엇이 필요합니까?

Intel N 시리즈 또는 Core i 시리즈의 작은 미니 PC에 RAM 8–16 GB, OS용 SSD, 녹화용 별도 하드디스크면 카메라 4~8대 규모의 일반 주택을 감당합니다. 병목이 CPU인 경우는 드물고, 실제로는 공유 메모리, 디스크 쓰기 수명, 그리고 시맨틱 검색을 쓸지 여부가 관건입니다.

  • **공유 메모리(shm):** 기본값 128 MB는 720p 카메라 두 대 정도만 감당합니다. Frigate는 1280x720 카메라 한 대당 로그 포함 약 66.63 MB로 계산하므로, 여덟 대면 약 253 MB가 필요합니다.
  • --shm-size를 명시적으로 설정하십시오:** 대부분의 구성에서 --shm-size=512mb가 안전한 값입니다. 값이 너무 작으면 명확한 오류가 아니라 카메라가 간헐적으로 끊기는 형태로 나타납니다.
  • 마운트 지점 세 곳: YAML과 데이터베이스용 /config, 클립·녹화·내보내기용 /media/frigate, 처리 중 세그먼트용 /tmp/cache.
  • 녹화는 하드디스크로: 연속 쓰기는 소비자용 SSD의 수명을 갉아먹습니다. /media/frigate는 하드디스크에 두고 /tmp/cache는 빠른 저장소에 남겨 두십시오.
  • AI 기능용 RAM: 시맨틱 검색에는 최소 8 GB와 AVX·AVX2를 지원하는 CPU가 필요하며, 권장 구성은 16 GB와 GPU입니다.
구성
디텍터
적합한 용도
Intel N100/N150 미니 PC, 16 GBopenvino (내장 GPU)카메라 2~6대, 시맨틱 검색 없이
Intel Core i5 미니 PC, 32 GBopenvino (내장 GPU)카메라 6~12대와 시맨틱 검색
임의 호스트 + Hailo-8 M.2hailo8l저전력, 다수 카메라
RTX 3050 이상 데스크톱onnxFrigate와 로컬 LLM을 한 대에서 운용
Raspberry Pi 5edgetpu / hailo8l카메라 1~3대, 전력 예산이 빠듯한 환경

Frigate는 베어메탈 Debian 위의 Docker, Home Assistant 애드온, Helm을 통한 Kubernetes, Unraid, Synology 및 QNAP NAS, ESXi, Apple Silicon용 macOS를 지원합니다. Proxmox에서는 QEMU 가상 머신을 쓰십시오. LXC는 명시적으로 지원되지 않습니다.

⚠️경고: Proxmox LXC 컨테이너에서 Frigate를 운용하는 것은 지원되지 않습니다. Coral이나 내장 GPU 패스스루는 처음에는 되는 듯하다가, 아무도 대신 진단해 줄 수 없는 방식으로 고장 납니다. 가상 머신을 쓰십시오.

🛠️실전 팁: Frigate와 Home Assistant, 로컬 LLM을 한 대에 담고 싶다면 LLM 쪽 요구 사항부터 기준으로 삼아 사양을 정하십시오 — Home Assistant와 로컬 AI를 위한 미니 PC 추천을 참고하십시오.

Frigate를 위해 카메라를 어떻게 설정해야 합니까?

카메라 펌웨어에서 두 개의 스트림을 설정하십시오. 인식용으로 1280x720 / 5 fps, 녹화용으로 네이티브 해상도 / 15 fps이며 둘 다 H.264에 화면비를 일치시킵니다. Frigate의 인식 모델은 320x320 입력으로 동작하므로, 4K 인식 스트림은 아무 이득이 없으면서 디코딩 비용만 크게 늘립니다.

  • H.265가 아니라 H.264를 쓰십시오. H.265는 브라우저 지원이 제한적이고 실시간 보기가 가장 먼저 영향을 받습니다.
  • 프레임 레이트는 Frigate가 아니라 카메라에서 바꾸십시오. 소프트웨어 다운샘플링은 이득 없이 CPU만 소모합니다.
  • 무선보다 유선 PoE를 우선하십시오. 서브스트림 끊김은 명확한 장애가 아니라 인식 누락으로 나타납니다.
  • RTSP와 ONVIF를 제대로 제공하는 카메라 하드웨어는 Frigate 구축용 로컬 보안 카메라 구매 가이드를 참고하십시오.
  1. 1
    카메라 펌웨어에서 서브스트림을 1280x720, 5 fps, H.264, I 프레임 간격 5(초당 키프레임 1개)로 설정합니다.
  2. 2
    메인 스트림을 카메라의 네이티브 해상도(일반적인 4 MP 센서라면 2688x1520), 15 fps, H.264, I 프레임 간격 30으로 설정합니다.
  3. 3
    두 스트림의 화면비를 동일하게(16:9 대 16:9) 유지해 인식과 녹화 사이에서 바운딩 박스가 정확히 대응되도록 합니다.
  4. 4
    Frigate에서 detect 역할에 서브스트림을, record 역할에 메인 스트림을 지정합니다.
  5. 5
    좁은 진입로를 가로지르는 차량처럼 실제로 빠른 대상이 있을 때만 인식을 10 fps로 올립니다.

💡: 진입로 끝의 대상이 전혀 인식되지 않는다면 원인은 대개 모델이 아니라 해상도입니다. 1280x720을 320x320 입력으로 축소하면 멀리 있는 사람은 몇 픽셀에 불과합니다. 인식 해상도를 전반적으로 올리는 대신 그 구역을 두 번째 카메라나 확대 스트림으로 분리하십시오.

📌참고: Frigate는 카메라를 한 번만 가져와 나머지 클라이언트에는 그 사본을 제공합니다. 그래서 Home Assistant는 카메라가 아니라 Frigate를 바라보게 해야 합니다.

Frigate는 어떻게 설치합니까?

지원되는 경로를 원한다면 베어메탈 Debian 호스트에서 Docker Compose를 쓰고, 제어권을 일부 포기하고 원클릭 설치를 택하겠다면 Home Assistant 애드온을 쓰십시오. 둘 다 동일한 config.yml과 동일한 MQTT 브로커가 필요합니다.

  1. 1
    Debian 계열 호스트에 Docker를 설치하고 /config/media/frigate 디렉터리를 만듭니다.
  2. 2
    카메라 한 대만 있고 디텍터 블록이 없는 최소 config.yml을 작성해, Frigate가 기본값으로 시작하고 스트림이 들어오는지 확인합니다.
  3. 3
    shm_size를 명시하고 환경에 맞는 장치를 전달해 컨테이너를 시작합니다. Intel은 /dev/dri, NVIDIA는 GPU 런타임, Hailo는 /dev/hailo0입니다.
  4. 4
    웹 UI를 열어 카메라 화면, 인식 FPS, 시스템 페이지의 추론 시간을 확인합니다.
  5. 5
    실제 detectors 블록을 추가해 재시작하고, 추론 시간이 해당 하드웨어의 공개값까지 내려가는지 확인합니다.
  6. 6
    config.yml에 MQTT 브로커를 설정한 뒤 Home Assistant에서 Frigate 통합을 추가합니다.
yaml
services:
  frigate:
    container_name: frigate
    image: ghcr.io/blakeblackshear/frigate:0.17.2
    restart: unless-stopped
    privileged: true
    shm_size: "512mb"
    devices:
      - /dev/dri/renderD128:/dev/dri/renderD128   # Intel iGPU (OpenVINO)
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - ./config:/config
      - /srv/frigate/media:/media/frigate
      - type: tmpfs
        target: /tmp/cache
        tmpfs:
          size: 1000000000
    ports:
      - "8971:8971"   # authenticated web UI
      - "8554:8554"   # RTSP restream
      - "8555:8555/tcp"
      - "8555:8555/udp"

⚠️경고: 이미지 태그는 stable이 아니라 특정 버전으로 고정하십시오. Frigate의 설정 스키마는 마이너 버전 사이에서 바뀌며, 0.17에서 0.18로 넘어가는 경계에서 무인 docker compose pull을 실행하면 기존 YAML로는 기동을 거부하는 컨테이너가 남을 수 있습니다.

🛠️실전 팁: 나머지를 추가하기 전에 카메라 한 대를 먼저 띄우십시오. "Frigate가 안 된다"는 글은 거의 예외 없이 특정 카메라 한 대의 서브스트림 URL 문제로 끝나며, 설정에 항목이 하나뿐일 때 훨씬 쉽게 찾을 수 있습니다.

동작하는 Frigate config.yml은 어떤 모습입니까?

**동작하는 설정은 네 개의 블록으로 이루어집니다. mqtt, detectors, 두 개의 스트림 역할을 가진 cameras, 그리고 카메라별 zonesreview 필터입니다.** 나머지는 첫날에는 기본값으로 충분합니다.

  • subtype=1subtype=0은 Dahua/Amcrest 계열의 서브·메인 스트림 표기입니다. Reolink는 h264Preview_01_subh264Preview_01_main을 씁니다.
  • retain.mode: motion은 움직임이 있었던 구간의 연속 녹화만 남기며, 저장 공간 절감의 가장 큰 지렛대입니다.
  • review.alerts.required_zones는 공도를 지나는 차량이 휴대폰을 울리는 일을 막아 줍니다.
  • Frigate 0.17에서 UI 기반 전체 설정이 추가되어, 위 내용 대부분은 이제 손으로 쓰지 않고 웹 인터페이스에서 편집할 수 있습니다.
yaml
mqtt:
  host: 192.168.1.10
  user: frigate
  password: "{FRIGATE_MQTT_PASSWORD}"

detectors:
  ov:
    type: openvino
    device: GPU

cameras:
  driveway:
    ffmpeg:
      inputs:
        - path: rtsp://user:pass@192.168.1.51:554/cam/realmonitor?channel=1&subtype=1
          roles: [detect]
        - path: rtsp://user:pass@192.168.1.51:554/cam/realmonitor?channel=1&subtype=0
          roles: [record]
    detect:
      width: 1280
      height: 720
      fps: 5
    record:
      enabled: true
      retain:
        days: 3
        mode: motion
      alerts:
        retain:
          days: 30
    snapshots:
      enabled: true
    motion:
      mask:
        - 0,0,0.35,0,0.35,0.12,0,0.12   # timestamp overlay
    zones:
      driveway_apron:
        coordinates: 0.14,0.98,0.62,0.55,0.95,0.72,0.88,1.0
        loitering_time: 4
        inertia: 3
    review:
      alerts:
        labels: [person, car]
        required_zones: [driveway_apron]
      detections:
        labels: [person, car, dog, cat]

💡: Frigate 0.17은 프로필도 도입했습니다. 이름을 붙인 설정 오버라이드로, 컨테이너를 재시작하지 않고 전환할 수 있습니다. required_zones를 넓히는 "손님 방문" 프로필을 만들어 두는 편이 주 2회 YAML을 고치는 것보다 낫습니다.

존과 마스크는 어떻게 오탐을 없앱니까?

존은 어떤 인식이 중요한지를 걸러 내고, 모션 마스크는 Frigate가 특정 영역을 아예 보지 않게 합니다. 대상이 실재하지만 관심 밖이면 존을, 움직임이 애초에 객체가 아니면 마스크를 쓰십시오. 존 내 존재 여부는 바운딩 박스의 하단 중앙점으로 판정되므로, 존은 머리 높이가 아니라 발이나 바퀴가 닿는 지면을 덮어야 합니다.

📍 한 문장으로

Frigate에서 모션 마스크는 해당 영역의 인식 연산 자체를 중단시키고, 존과 required_zones는 인식은 평소대로 수행하되 어떤 인식이 알림을 일으켜도 되는지만 제한합니다.

❌ 잘못된 접근

모든 카메라, 모든 사람, 하루 종일 알림을 켜 두었다가, 앞쪽 인도에서 하룻밤에 마흔 건의 알림이 발생해 이틀 만에 알림을 꺼 버리는 방식.

✅ 올바른 접근

대지 경계 안쪽 지면만 덮는 driveway_apron 존을 만들고, review.alerts.required_zones를 그 존으로 지정하고, loitering_time: 4를 더합니다. 그러면서 detections(알림 없음)는 나머지 대상에도 켜 두어 검색 가능한 기록이 온전하게 남도록 합니다.
  • 모션 마스크: 타임스탬프 오버레이, 흔들리는 나무, 깃발에 씁니다. Frigate는 그 영역에서 인식을 아예 실행하지 않습니다. 관심 객체가 절대 나타나지 않는 움직임에 적합합니다.
  • 객체 필터 마스크: 특정 영역의 특정 라벨을 억제합니다. 항상 car로 인식되는 이웃의 주차 차량 같은 경우입니다.
  • **존과 required_zones 조합:** 대상은 분명 사람이지만 인도의 사람은 알림 대상이 아닙니다. 보행자 통행에 대한 올바른 해법입니다.
  • loitering_time:** 대상이 존 안에 N초 머무를 것을 요구합니다. 통로를 올라오는 택배 기사는 조건을 충족하고, 지나가는 사람은 충족하지 않습니다.
  • inertia:** 대상이 연속 N프레임(기본 3) 존 안에 머무를 것을 요구해, 경계에서의 바운딩 박스 떨림이 알림을 일으키지 않게 합니다.
  • 속도 추정: 지면에 정렬된 정확히 네 개의 점으로 이루어진 존에 distances 목록을 지정하면 UI와 MQTT로 속도 값이 나옵니다.

⚠️경고: 화면 상단 절반에 존을 그리는 것은 아무 소용이 없습니다. 존재 여부는 바운딩 박스 하단 중앙점으로 판정됩니다. 존은 지면에 그리십시오.

🔍인사이트: 오탐은 거의 언제나 모델 품질 문제가 아닙니다. 일반적인 주택 설치에서는 존과 required_zones가 어떤 디텍터 업그레이드보다도 더 많은 잡음을 제거합니다.

Frigate를 Home Assistant에 어떻게 연결합니까?

먼저 Home Assistant에서 MQTT 통합을 구성하고, Frigate를 같은 브로커로 향하게 한 다음 Frigate 통합을 설치하십시오. 그러면 카메라별·존별로 camera, image, sensor, switch, binary_sensor 엔티티가 생성됩니다. MQTT를 먼저 구성하지 않으면 통합은 설치되지만 아무것도 만들지 않습니다.

  1. 1
    MQTT 브로커(보통 Mosquitto 애드온)를 설치하고 Home Assistant에 MQTT 통합을 추가합니다.
  2. 2
    Frigate config.yml의 mqtt 블록을 같은 브로커로 지정하고, 별도의 사용자명과 비밀번호를 사용합니다.
  3. 3
    HACS를 통해 또는 코어 통합으로 Frigate 통합을 설치하고 Frigate 호스트를 지정합니다.
  4. 4
    Media Source 통합을 활성화해 녹화와 스냅샷이 미디어 브라우저에 나타나게 합니다.
  5. 5
    자동화는 카메라 단위가 아니라 존 단위 바이너리 센서를 기준으로 구성합니다.

binary_sensor

무엇을 얻는가:
카메라별, 존별, 객체 라벨별 움직임과 객체 존재 여부
어디에 쓰는가:
사실상 모든 자동화의 트리거입니다. 특정 존 안의 사람은 카메라의 움직임보다 훨씬 나은 트리거입니다

camera

무엇을 얻는가:
포트 8554의 Frigate 재송출에서 제공되는 실시간 스트림 엔티티
어디에 쓰는가:
대시보드 카드와 캐스팅. 카메라 대신 이쪽을 바라보게 하면 카메라로의 두 번째 연결을 피할 수 있습니다

image

무엇을 얻는가:
카메라별로 가장 최근 인식된 객체의 스냅샷
어디에 쓰는가:
스냅샷 API를 직접 호출하지 않고도 모바일 알림에 이미지를 첨부할 수 있습니다

sensor

무엇을 얻는가:
존별·카메라별 객체 수와 디텍터 및 프로세스 성능 수치
어디에 쓰는가:
재실 로직과 시스템 상태 대시보드. 여기의 추론 시간은 디텍터가 CPU로 되돌아갔음을 알리는 조기 경보입니다

switch

무엇을 얻는가:
카메라별 인식, 녹화, 스냅샷 토글
어디에 쓰는가:
재실 판정이 성립하면 실내 인식을 끄는 식의 프라이버시 자동화

이 통합은 camera.turn_on과 camera.turn_off 액션도 제공하고, MQTT 설정이 분리된 여러 Frigate 서버를 지원하며, RTSP URL 템플릿을 Jinja2로 재정의할 수 있게 합니다.

⚠️경고: Frigate 통합은 설치되었는데 엔티티가 하나도 나타나지 않는다면 원인은 거의 언제나 MQTT입니다. Home Assistant에 MQTT 통합을 추가하지 않았거나, Frigate와 Home Assistant가 서로 다른 브로커에 연결되어 있는 것입니다.

🛠️실전 팁: 자동화는 존 바이너리 센서에 객체 라벨 조건을 더해 트리거하십시오. 카메라 움직임 센서 하나만으로는 비가 올 때도 발동하지만, binary_sensor.driveway_driveway_apron_person은 그렇지 않습니다.

시맨틱 검색, 얼굴 인식, 번호판 인식은 무엇을 더해 줍니까?

시맨틱 검색은 "밤에 진입로에 있던 검은색 밴"이라고 입력하면 해당 클립을 찾아 줍니다. 얼굴 인식과 번호판 인식은 익명의 인식을 이름 있는 인식으로 바꿔 주며, 둘 다 Frigate+ 구독 없이 동작합니다. 이 기능들의 비용은 돈이 아니라 RAM입니다.

  • 시맨틱 검색: 최소 8 GB RAM과 AVX·AVX2를 지원하는 CPU가 필요하며, 이상적으로는 16 GB와 전용 GPU가 필요합니다. Raspberry Pi에서는 쓸 만하게 동작하지 않습니다.
  • 임베딩 모델: 기본값은 Jina CLIP V1입니다. small 변형은 양자화되어 CPU에서도 무난히 돌고, large 변형은 GPU가 있으면 이를 활용합니다.
  • Jina CLIP V2는 영어만이 아니라 89개 언어를 지원하지만, Frigate는 RAM과 추론 시간이 크게 늘어나는 대가로 약 3% 개선이라고 기록하며 CPU 추론은 권장하지 않습니다.
  • 재색인은 수동입니다: 시맨틱 검색을 켜도 기존 객체는 색인되지 않습니다. UI의 "Reindex" 버튼을 쓰거나 reindex: True를 설정하고, 수행 중 높은 CPU 부하를 감안하십시오.
  • 얼굴 인식과 번호판 인식은 로컬에서 동작하며 구독이 필요 없습니다. 다만 Frigate+ 모델은 효율을 높여 줍니다.
  • GenAI 설명 생성: 0.17에서 다중 제공자 지원과 전용 llama.cpp 연동이 추가되어, 설명을 자체 하드웨어의 모델로 생성할 수 있습니다 — Home Assistant에서 로컬 LLM으로 자동화하기를 참고하십시오.

💡: 클립이 1년 치 쌓이기 전에 시맨틱 검색을 켜십시오. GPU 없는 미니 PC에서 추적 객체 20만 건을 재색인하는 것은 하룻밤이 걸리는 작업입니다.

📌참고: Frigate 0.16은 시맨틱 검색 트리거를 추가했습니다. 추적 객체가 저장된 이미지나 설명과 일치하면 액션이 실행됩니다. "영상을 검색한다"에서 "영상의 의미를 기준으로 자동화한다"로 넘어가는 다리입니다.

Frigate+는 연 50달러의 값을 합니까?

기본 모델이 해결하지 못하는 구체적이고 반복적인 오탐이 생긴 시점부터 Frigate+는 값을 합니다. 그렇지 않다면 무료 모델과 잘 잡은 존만으로 충분합니다. 연 50달러(USD 청구)이며 최대 12개의 파인튜닝 모델이 포함되고, 추가 파인튜닝은 건당 5달러입니다.

Frigate+와 기본 모델 중 무엇을 택할까

다음의 경우 로컬 LLM을 사용하십시오:

  • 집 주변에서 특정 대상이 반복적으로 잘못 분류됩니다
  • 기본 모델이 잘 다루지 못하는 특이한 카메라 각도가 있습니다
  • 직접 업로드하는 작업을 빠르게 하려고 AI 제안 라벨을 원합니다
  • 오픈소스 프로젝트의 지속적인 개발을 후원하고 싶습니다

다음의 경우 클라우드 모델을 사용하십시오:

  • 오탐의 원인이 인도 통행이라면 존 설정으로 무료로 해결됩니다
  • Frigate 지원 목록 밖의 라벨이 필요합니다. 사용자 정의 라벨은 아직 제공되지 않습니다
  • 카메라가 한두 대뿐이고 화각도 단순합니다

빠른 결정:

  • 먼저 존을 손보고 2주 뒤에 다시 평가하십시오
  • 그래도 실제 대상에서 알림이 틀린다면 구독하십시오
  • 학습시킨 모델은 구독을 해지한 뒤에도 계속 내려받을 수 있습니다
  • Frigate+ 기본 모델은 YOLOv9 기반의 2026.0으로 갱신되었고, lawnmowerheron 같은 새 후보 라벨이 추가되었습니다.
  • 임의의 사용자 정의 라벨은 아직 추가할 수 없으며, 학습은 Frigate가 지원하는 라벨 집합으로 제한됩니다.
  • 얼굴 인식과 번호판 인식에는 구독이 필요하지 않습니다.

🔍인사이트: 존을 다듬기 전에 구독하는 것은 50달러를 쓰고도 아무 개선을 보지 못하는 가장 흔한 경로입니다. 파인튜닝 모델은 올바른 인식을 더 안정적으로 만들 뿐, 올바르게 인식된 보행자를 보행자가 아니게 만들지는 못합니다.

구독형 카메라와 비교하면 비용은 어떻습니까?

Frigate는 카메라 수에 비례해 늘어나는 클라우드 정기 요금을, 카메라 수와 무관한 일회성 하드웨어 비용으로 바꿉니다. 카메라가 두 대를 넘어가면 손익분기점은 대개 첫해 안에 들어옵니다.

항목
클라우드 카메라 서비스
Frigate
정기 비용월 단위, 대개 카메라별없음
초기 비용카메라만호스트 + 디텍터 + 저장장치
AI 인식제조사 클라우드로컬(OpenVINO/Hailo/ONNX)
영상 보관 위치제조사 데이터센터내 디스크
인터넷 장애 시기능 저하 또는 중단LAN 안에서 완전히 동작
기능 폐지 위험제조사가 요금제를 바꿀 수 있음쓰던 버전은 계속 동작

Frigate에서 카메라를 한 대 늘리면 카메라 값만 듭니다. 구독 서비스에서 한 대를 늘리면 대개 카메라 값에 청구서 한 줄이 더해집니다. 격차가 벌어지는 지점이 바로 여기입니다. 구독 없는 스마트홈 운영도 함께 보십시오.

📌참고: 전기 요금도 정직하게 계산하십시오. 상시 가동되는 미니 PC와 디스크는 대략 15–30 W입니다. 5년으로 보면 실제 돈이지만, 여전히 대부분의 다중 카메라 클라우드 요금제보다 한참 낮습니다.

Frigate를 설정할 때 자주 하는 실수

실패한 Frigate 구축의 대부분은 다섯 가지 실수로 설명되며, 그중 하드웨어와 관련된 것은 하나뿐입니다.

  • 메인 스트림에서 인식을 돌리는 것: detect 역할을 4K 스트림에 지정하면 모델 입력이 320x320인 이상 정확도 이득은 전혀 없이 디코딩 비용만 몇 배로 늘어납니다. 인식은 항상 서브스트림에서, 녹화는 메인 스트림에서 하십시오.
  • shm_size를 기본값으로 두는 것:** 128 MB는 720p 카메라 두 대 정도만 감당합니다. 그 이상은 뚜렷한 오류 없이 간헐적으로 끊깁니다. --shm-size=512mb로 설정하고 넘어가십시오.
  • MQTT보다 Home Assistant 통합을 먼저 설치하는 것: 통합은 무리 없이 설치되고 아무것도 만들지 않습니다. Home Assistant의 MQTT 통합과 Frigate의 mqtt 블록을 같은 브로커로 먼저 구성하십시오.
  • 디텍터를 바꿔 오탐을 고치려는 것: 인도의 보행자는 올바른 인식입니다. 해법은 required_zonesloitering_time을 갖춘 존이지, 더 빠른 가속기나 유료 모델이 아닙니다.
  • OS용 SSD에 녹화하는 것: 연속적인 영상 쓰기는 소비자용 SSD의 수명을 빠르게 소모합니다. /media/frigate는 하드디스크에 두고 /tmp/cache는 빠르게 유지하며 retain.mode: motion을 설정하십시오.
  • Proxmox LXC에 배포하는 것: 장치 패스스루가 되는 듯하다가 지원도 진단도 불가능한 방식으로 깨집니다. QEMU 가상 머신을 쓰십시오.

결론: 실제로 무엇을 구성해야 합니까?

RAM 16 GB의 Intel 미니 PC를 구입해 내장 GPU에서 OpenVINO 디텍터를 돌리고, 720p / 5 fps 서브스트림을 쓰는 PoE 카메라를 사용하며, 첫 주는 하드웨어가 아니라 존 설정에 쓰십시오. 이 구성이면 일반적인 주택을 감당하고, 카메라가 늘어나면 나중에 Hailo-8을 더할 여지도 남습니다.

  • 처음부터 시작한다면 Intel 내장 GPU의 OpenVINO를 쓰십시오. 비용이 가장 낮고 추가 하드웨어가 없으며 카메라 2~6대에 여유가 충분합니다.
  • 카메라가 여덟 대를 넘거나 소비 전력이 중요하다면 Hailo-8 M.2 모듈을 쓰십시오.
  • 기기에 이미 NVIDIA GPU가 있다면 ONNX를 쓰십시오. 같은 기기에서 로컬 LLM도 돌린다면 특히 그렇습니다.
  • Coral은 와트가 절대적 제약이고 더 이상 권장 경로가 아님을 받아들일 때만 쓰십시오.
  • cpu 디텍터는 피하십시오. 대안으로는 OpenVINO의 CPU 모드가 낫습니다.
  • 결정이 어렵다면 Intel N150 미니 PC와 카메라 두 대로 시작해 존을 제대로 잡은 뒤 확장하십시오.

🛠️실전 팁: 실제로 통하는 예산 집행 순서는 이렇습니다. 먼저 카메라와 PoE 스위치, 다음 호스트, 다음 저장장치, 그리고 시스템 페이지의 수치가 필요하다고 말할 때 비로소 가속기입니다. 가속기를 가장 먼저 사는 것이 전형적인 순서 뒤바뀜입니다.

자주 묻는 질문

Frigate NVR이란 무엇입니까?

Frigate는 OpenCV와 TensorFlow를 사용해 IP 카메라 스트림에 대한 AI 객체 인식을 로컬에서 실행하는 오픈소스 네트워크 비디오 레코더입니다. 단순한 움직임이 아니라 인식된 내용을 기준으로 클립을 녹화하고, 모든 인식 결과를 MQTT로 발행해 Home Assistant가 이를 기반으로 자동화할 수 있게 합니다. 핵심 소프트웨어에는 클라우드 서비스도 구독료도 없습니다.

2026년에도 Frigate에 Google Coral TPU가 필요합니까?

아닙니다. Frigate의 하드웨어 문서는 소비 전력 요구가 유난히 빡빡한 경우를 제외하면 신규 설치에 Coral을 권장하지 않는다고 명시합니다. 신규 구축에서는 Intel 내장 GPU의 OpenVINO 디텍터, Hailo-8 모듈, 또는 기존 NVIDIA GPU의 ONNX 디텍터가 권장 경로입니다.

Frigate의 어느 버전을 사용해야 합니까?

2026년 6월 28일에 릴리스된 Frigate 0.17.2가 현재 안정 버전입니다. 0.18.0은 2026년 7월부터 베타 단계이며 세 번째 베타가 2026년 8월 8일에 나왔으므로, 마이너 버전 사이의 설정 변경을 감당할 수 있을 때만 0.18을 쓰십시오.

Frigate에는 RAM이 얼마나 필요합니까?

객체 인식과 녹화만 하면 8 GB로 여유 있게 동작합니다. 시맨틱 검색은 기준을 높입니다. Frigate는 최소 8 GB, 권장 16 GB 이상과 전용 GPU를 문서화하고 있으며, AVX 및 AVX2 명령어를 지원하는 CPU를 요구합니다.

집 앞을 지나가는 사람 때문에 Frigate 알림이 계속 오는 이유는 무엇입니까?

그것이 올바른 인식이기 때문입니다. 대지 안쪽 지면만 덮는 존을 그리고, review.alerts.required_zones를 그 존으로 지정하고, loitering_time을 더해 지나가는 사람이 멈춰 서야만 알림이 발생하도록 하십시오. 존재 여부는 바운딩 박스의 하단 중앙점으로 판정되므로 존은 지면을 덮어야 합니다.

인터넷 연결 없이도 Frigate가 동작합니까?

네. 인식, 녹화, MQTT, Home Assistant 자동화가 모두 LAN 안에서 동작합니다. 연결이 필요한 것은 집 밖에서의 원격 시청과 선택적인 클라우드 GenAI 제공자뿐이며, 0.17에서 llama.cpp 연동이 추가되어 설명 생성도 로컬에서 할 수 있습니다.

Frigate에서 존과 마스크는 무엇이 다릅니까?

모션 마스크는 해당 영역에서 인식 자체를 실행하지 않게 하며, 타임스탬프 오버레이나 상시 흔들리는 나뭇잎에 적합합니다. 존은 인식을 평소대로 수행하되 required_zones를 통해 어떤 인식이 알림을 일으켜도 되는지만 제한합니다. 객체가 아닌 것에는 마스크를, 관심 없는 실제 객체에는 존을 쓰십시오.

Frigate 서버 한 대로 카메라 몇 대를 감당할 수 있습니까?

카메라 대수보다 추론 시간에 좌우됩니다. 초당 유효 인식 횟수는 대략 1000을 추론 시간(밀리초)으로 나눈 값이며 모든 카메라가 이를 나눠 씁니다. 카메라당 인식 5 fps에 Intel Arc A750이 YOLOv9-320에서 8 ms인 조건이라면 일반적인 주택 설치에는 여유가 상당합니다.

얼굴 인식이나 번호판 인식에 Frigate+가 필요합니까?

아닙니다. 얼굴 인식과 번호판 인식은 구독 없이 로컬에서 동작하며, Frigate+ 모델은 효율을 높여 줄 뿐입니다. Frigate+는 연 50달러이며 최대 12개의 파인튜닝 모델이 포함되고 추가 파인튜닝은 건당 5달러입니다. 반복되는 오분류에는 유효하지만 인도 통행 문제에는 필요하지 않습니다.

Proxmox LXC 컨테이너에서 Frigate를 실행할 수 있습니까?

아닙니다. Proxmox LXC는 명시적으로 지원되지 않습니다. 대신 QEMU 가상 머신을 쓰십시오. 내장 GPU, Coral, Hailo 모듈의 패스스루는 LXC에서 동작하는 듯 보이다가 지원할 수 없는 방식으로 실패할 수 있습니다.

출처

← Smart Home으로 돌아가기