모델별 실행 레시피

최종 업데이트

Frigate로 CCTV 사람 감지: N100·코랄·맥 중 무엇으로 돌릴까

감지 장치를 붙이면 CPU만 쓸 때보다 적은 전력으로 1080p 카메라 여러 대를 처리해요.

Frigate는 카메라에서 영상을 직접 받아 낮은 해상도 서브스트림으로 사람과 차량을 감지하고, 원본은 녹화해요. 감지를 어디서 돌리느냐가 전력과 대수를 정하고, 애플 실리콘은 M1 이상에서 프록시를 거쳐 돌아가요.

실행 조건과 핵심 내용
  • Frigate는 낮은 해상도 서브스트림으로 감지하고 원본 스트림은 녹화에 써요.
  • N100 미니 PC는 1080p 여러 대를 활동량이 낮은 조건에서 처리해요.
  • 애플 실리콘은 M1 이상에서 감지가 돌지만 ZMQ 프록시를 거쳐 지연이 붙어요.

Frigate는 카메라에서 영상을 직접 받아요

Frigate는 카메라의 RTSP 주소로 접속해 영상을 직접 받아요. 받은 영상은 두 갈래로 나뉘어요. 낮은 해상도 서브스트림은 사람·차량 감지에 쓰고, 원본 스트림은 녹화에 써요.

감지 결과는 MQTT1로 홈 어시스턴트에 전달돼요. 그래서 현관에 사람이 서면 조명을 켜거나, 알림을 보내는 자동화를 만들 수 있어요.

노트북 옆 책상과 선반에 금속 장치 두 대가 놓여 있고 케이블이 앞쪽 스위치 상자에 연결되어 있다
카메라와 녹화 서버를 같은 스위치에 묶고 인터넷과 분리하면 영상이 밖으로 나가지 않아요.

카메라가 먼저 갖춰야 할 것

카메라는 H.264 영상과 AAC 오디오를 내보내야 해요. 감지·녹화·스트리밍에 서로 다른 해상도를 쓰려면 서브스트림이 여러 개 있어야 하고, 없으면 원본을 계속 다시 인코딩해야 해서 CPU2가 바빠져요.

WiFi 카메라는 권장하지 않아요. 여러 대가 동시에 스트리밍하면 연결이 끊기거나 영상이 빠져요. 4K 리오링크 카메라도 문제 보고가 많아서 5MP 이하를 고르는 편이 안전해요.

감지 장치를 고르는 기준

감지는 CPU보다 전용 장치에서 돌리는 편이 훨씬 빨라요. Frigate는 여러 감지 장치를 지원하고, 장치마다 잘 맞는 모델 크기가 달라요. 이미 있는 장비가 있으면 그것부터 쓰고, 없으면 전력이 낮은 순서로 고르세요.

아래 표는 감지 장치별 지원과 맞는 상황을 정리한 것이에요. 표에 없는 CPU 감지는 시험용으로만 쓰세요.

감지 장치별 지원과 맞는 상황
감지 장치지원 모델맞는 상황
Google Coral EdgeTPU (USB·m.2)ssdlite·mobilenet 계열전력이 낮은 미니 PC에 카메라 몇 대
Hailo-8·8L다양한 모델, 작은 모델에 유리m.2 슬롯이나 라즈베리파이 5 HAT
인텔 OpenVINO대부분의 모델, 통합 GPU·NPU·Arc인텔 미니 PC 한 대로 여러 대
애플 실리콘M1 이상, ZMQ 프록시 경유이미 쓰는 맥으로 감지까지
NVIDIA GPUONNX·TensorRT, 큰 모델까지그래픽카드가 이미 있는 경우

서버 크기는 카메라 대수가 정해요

Frigate 문서는 N100 미니 PC로 1080p 카메라 여러 대를 활동량이 낮은 조건에서 처리할 수 있다고 안내해요. 활동량이 많은 카메라를 여러 대 붙이면 인텔 1120p나 125H처럼 더 큰 프로세서가 필요해져요.

서버는 데비안 계열 리눅스가 편하고, AVX와 AVX2 명령을 쓰는 인텔 CPU면 대체로 돌아가요. 미니 PC에 윈도우가 미리 깔려 있으면 리눅스를 새로 설치해야 해요.

frigate config.yml
# 홈 어시스턴트 MQTT 브로커
mqtt:
  host: 192.168.0.10

# 코랄 USB를 감지 장치로
detectors:
  coral:
    type: edgetpu
    device: usb

cameras:
  front:
    ffmpeg:
      inputs:
        # 감지는 서브스트림
        - path: rtsp://192.168.0.50:554/sub
          roles: [detect]
        # 녹화는 원본 스트림
        - path: rtsp://192.168.0.50:554/main
          roles: [record]
미니 PC에 Frigate를 올리고 카메라 한 대와 코랄 USB를 붙이는 최소 설정이에요. MQTT 브로커 주소와 감지·녹화 입력을 적어요.
모니터의 파형과 문서가 자물쇠가 달린 본체로 들어가고, 구름으로 향하는 점선에는 X 표시가 있는 그림
감지와 녹화를 집 안에서 끝내면 클라우드 구독 없이 같은 영상을 다시 볼 수 있어요.

맥으로 돌릴 때

애플 실리콘은 M1 이상이면 감지를 돌릴 수 있어요. 다만 ZMQ 프록시를 거쳐 연결되기 때문에 지연이 조금 붙고, 집 안 네트워크에서만 쓰는 구성이 권장돼요.

맥을 24시간 켜 두기 어렵다면 감지 서버는 미니 PC에 맡기고, 맥은 녹화 본보기나 홈 어시스턴트 화면으로 쓰는 편이 나아요. 맥 한 대로 다 하려면 잠자기 설정과 전력 설정을 먼저 확인하세요.

네트워크와 저장공간

카메라를 인터넷에서 분리하려면 네트워크를 나눠요. 듀얼 NIC 미니 PC라면 카메라 전용 포트를 따로 두고, 그 포트에서 인터넷으로 나가는 길을 막으면 돼요.

저장공간은 비트레이트로 계산해요. 1080p 카메라가 4Mbps로 보내면 한 시간에 4×3,600÷8 = 1.8GB, 하루면 43GB 남짓이에요. 카메라 네 대를 30일 보관하려면 5TB 남짓이 필요해요.

RTX 3090가 꽂힌 케이스에서 색 블록이 컨베이어를 따라 선반으로 이동하고, 네트워크 그림이 그려진 카드가 놓인 작업 공간
감지 가속기가 있으면 그래픽카드 없이도 여러 대를 처리해요.

용어 각주

  1. MQTT — 기기와 프로그램이 브로커를 거쳐 값을 발행하고 구독하는 경량 메시지 프로토콜입니다. 같은 브로커를 보는 프로그램끼리만 값을 주고받습니다.

    본문으로 돌아가기
  2. CPU — 운영체제와 일반 프로그램 명령을 실행하고, AI에서는 전처리·데이터 이동 등 범용 연산을 맡는 중앙 처리 장치입니다.

    본문으로 돌아가기

자주 묻는 질문

이 글에서 가장 먼저 확인할 것은 무엇인가요?
Frigate는 카메라에서 영상을 직접 받아 낮은 해상도 서브스트림으로 사람과 차량을 감지하고, 원본은 녹화해요. 감지를 어디서 돌리느냐가 전력과 대수를 정하고, 애플 실리콘은 M1 이상에서 프록시를 거쳐 돌아가요.
선택하지 않는 편이 좋은 경우는 언제인가요?
WiFi 카메라는 권장하지 않아요. 여러 대가 동시에 스트리밍하면 연결이 끊기거나 영상이 빠져요. 4K 리오링크 카메라도 문제 보고가 많아서 5MP 이하를 고르는 편이 안전해요.