
Frigate: NVR con IA para Videovigilancia en tu NAS
De los sistemas tradicionales al NVR moderno
Durante años, la videovigilancia doméstica ha estado dominada por soluciones propietarias que encierran al usuario en ecosistemas cerrados. Cámaras que dependen de sus nubes, sistemas de grabación con interfaces obsoletas y, lo peor de todo, la imposibilidad de integrar equipos de diferentes fabricantes en una sola plataforma coherente.
Los sistemas NVR tradicionales (Network Video Recorder) suelen presentar limitaciones significativas: interfaces web lentas, aplicaciones móviles deficientes, detección de movimiento por cambios de píxeles (con sus infames falsos positivos por sombras o insectos) y dependencia total del fabricante para actualizaciones de seguridad.
La revolución llegó con los NVR modernos basados en software: soluciones open source que puedes desplegar en tu propio hardware, con detección inteligente mediante IA, integración total con plataformas domóticas y, sobre todo, privacidad garantizada al mantener todo el procesamiento local. En este artículo exploramos Frigate, probablemente la mejor opción actual para videovigilancia inteligente en entornos NAS y homelab.
¿Qué es Frigate?
Frigate es un NVR (Network Video Recorder) de código abierto que utiliza inteligencia artificial para el procesamiento de video en tiempo real. A diferencia de los sistemas tradicionales que detectan movimiento analizando cambios entre fotogramas, Frigate emplea modelos de deep learning para identificar objetos específicos: personas, vehículos, animales y mucho más.
Desarrollado específicamente para funcionar con procesamiento local, Frigate no envía imágenes a la nube para su análisis. Todo el procesamiento de IA ocurre en tu propio hardware, garantizando la privacidad de tu hogar mientras reduce la latencia y elimina dependencias externas.
Frigate se diseñó pensando en la integración con Home Assistant, aunque funciona perfectamente como sistema independiente. Su arquitectura modular permite escalar desde una simple cámara IP hasta docenas de flujos de video simultáneos, optimizando el uso de recursos mediante detección de zonas de interés y grabación basada en eventos.
Características principales
Detección de objetos con IA
El corazón de Frigate es su sistema de detección por IA. Utilizando modelos TensorFlow Lite, puede identificar:
- Personas – Con alta precisión incluso en condiciones de poca luz
- Vehículos – Coches, camiones, motocicletas y bicicletas
- Animales – Perros, gatos, aves y otros animales domésticos
- Paquetes – Detección de entregas en porches y entradas
La precisión es notablemente superior a los sistemas de detección por movimiento tradicional. Olvídate de alertas falsas por sombras cambiantes, ramas moviéndose con el viento o insectos volando frente a la lente.
Zonas y máscaras de exclusión
Frigate permite definir zonas de detección específicas dentro del campo visual de cada cámara. Por ejemplo, puedes configurar que solo detecte personas que cruzan una línea específica de tu jardín, ignorando el tránsito peatonal en la acera pública.
Grabación flexible
Ofrece dos modos de grabación complementarios:
- Grabación 24/7 – Almacenamiento continuo con gestión automática de retención
- Grabación por eventos – Solo conserva clips donde se detectó actividad relevante
La combinación de ambos modos permite mantener un buffer continuo mientras se prioriza el almacenamiento permanente para eventos significativos.
Notificaciones inteligentes
Integrado con Home Assistant, Frigate puede enviar notificaciones enriquecidas con:
- Imágenes de la detección directamente en la notificación
- Enlace a la transmisión en vivo
- Botones de acción rápida (encender luces, activar alarma)
- Clips de video de la detección completa
Interfaz web moderna
La interfaz de usuario de Frigate está construida con tecnologías modernas, ofreciendo visualización en tiempo real de múltiples cámaras, reproducción con scrubbing fluido y exploración de eventos con filtros avanzados. Es accesible desde cualquier navegador y está optimizada para dispositivos móviles.
Requisitos hardware
Frigate está diseñado para ser eficiente, pero el procesamiento de IA tiene demandas específicas:
CPU (sin aceleración)
Es posible ejecutar Frigate únicamente con CPU, utilizando modelos TensorFlow Lite optimizados. Para 1-2 cámaras con detección básica, un procesador moderno (Intel i3/i5 o AMD equivalente) es suficiente. Sin embargo, el consumo de CPU será elevado y la latencia en la detección mayor.
Coral TPU (recomendado)
El Google Coral USB Accelerator o el módulo Coral PCIe transforman la experiencia de Frigate. Este coprocesador de IA dedicado maneja la inferencia de modelos de detección, liberando completamente la CPU y reduciendo la latencia a milisegundos.
¿Es obligatorio? No. Pero para sistemas con más de 2-3 cámaras o cuando se busca respuesta en tiempo real, el Coral TPU es prácticamente imprescindible. Su precio (aproximadamente 60-100€) se amortiza rápidamente en rendimiento y eficiencia energética.
Almacenamiento
Frigate es flexible respecto al almacenamiento:
- Grabación continua: Requiere capacidad sustancial (1-2GB por cámara/día en 1080p)
- Solo eventos: Mínimo impacto en almacenamiento (MB por detección)
Para entornos NAS, se recomienda configurar volúmenes dedicados o utilizar almacenamiento en red mediante NFS o SMB.
Configuración Docker Compose
Frigate se despliega fácilmente mediante Docker Compose. A continuación, una configuración funcional lista para producción:
version: "3.9"
services:
frigate:
container_name: frigate
image: ghcr.io/blakeblackshear/frigate:stable
privileged: true
restart: unless-stopped
shm_size: "256mb"
devices:
- /dev/bus/usb:/dev/bus/usb # Para Coral USB
- /dev/dri:/dev/dri # Para aceleración por GPU Intel/AMD
volumes:
- /path/to/config:/config
- /path/to/storage:/media/frigate
- type: tmpfs
target: /tmp/cache
tmpfs:
size: 1000000000
ports:
- "5000:5000"
- "8554:8554" # RTSP feeds
- "8555:8555/tcp" # WebRTC
- "8555:8555/udp" # WebRTC
environment:
- FRIGATE_RTSP_PASSWORD=contraseña_segura_aqui
- TZ=Europe/Madrid
networks:
- frigate_network
mosquitto:
container_name: mosquitto
image: eclipse-mosquitto:2
restart: unless-stopped
volumes:
- /path/to/mosquitto/config:/mosquitto/config
- /path/to/mosquitto/data:/mosquitto/data
- /path/to/mosquitto/log:/mosquitto/log
ports:
- "1883:1883"
- "9001:9001"
networks:
- frigate_network
networks:
frigate_network:
driver: bridgeEl servicio Mosquitto MQTT es esencial para la integración con Home Assistant, permitiendo la comunicación en tiempo real de eventos de detección.
Guía de instalación paso a paso
Paso 1: Preparar el entorno
- Crea las carpetas necesarias:
mkdir -p ~/frigate/config mkdir -p ~/frigate/storage mkdir -p ~/frigate/mosquitto/config - Crea el archivo de configuración de Mosquitto:
echo "listener 1883 allow_anonymous true" > ~/frigate/mosquitto/config/mosquitto.conf
Paso 2: Configurar Frigate
Crea el archivo ~/frigate/config/config.yml con la siguiente estructura básica:
mqtt:
enabled: true
host: mosquitto
port: 1883
detectors:
coral:
type: edgetpu
device: usb
# Si no tienes Coral, usa:
# cpu:
# type: cpu
cameras:
camara_entrada:
enabled: true
ffmpeg:
inputs:
- path: rtsp://usuario:pass@192.168.1.100:554/stream1
roles:
- detect
- record
detect:
width: 1920
height: 1080
fps: 5
record:
enabled: true
retain:
days: 7
mode: all
events:
retain:
default: 30
mode: active_objects
snapshots:
enabled: true
timestamp: true
bounding_box: true
retain:
default: 30Paso 3: Iniciar los servicios
cd ~/frigate
docker compose up -dPaso 4: Verificar funcionamiento
- Accede a
http://tu-nas:5000 - Comprueba que las cámaras aparecen en el panel
- Revisa los logs:
docker logs -f frigate - Verifica que la detección funciona generando movimiento
Paso 5: Optimización
Una vez funcionando, ajusta las zonas de detección y zonas excluidas mediante la interfaz de configuración visual de Frigate. Define máscaras para áreas con movimiento constante no relevante (árboles, carreteras).
Integración con Home Assistant
La verdadera potencia de Frigate se despliega al integrarlo con Home Assistant:
Instalación de la integración
- En Home Assistant, ve a Configuración → Dispositivos y servicios → Añadir integración
- Busca «Frigate» e instálala desde HACS (Home Assistant Community Store)
- Configura la URL de tu instancia Frigate (
http://tu-nas:5000)
Entidades disponibles
La integración crea automáticamente:
- Binary sensors – Detección de persona, vehículo, animal por cámara
- Cámaras – Feed en tiempo real y último evento detectado
- Switch – Activar/desactivar detección y grabación
- Sensores – Conteo de objetos detectados, estado del detector
Automatizaciones de ejemplo
Notificación con imagen cuando detecta persona:
alias: "Alerta - Persona detectada"
trigger:
- platform: state
entity_id: binary_sensor.frigate_camara_entrada_person_occupancy
to: "on"
action:
- service: notify.mobile_app_telefono
data:
message: "Persona detectada en la entrada"
data:
image: "/api/frigate/notifications/{{ trigger.from_state.attributes.event_id }}/thumbnail.jpg"
clickAction: "/lovelace/camaras"Encender luces al detectar movimiento nocturno:
alias: "Seguridad - Iluminación entrada"
trigger:
- platform: state
entity_id: binary_sensor.frigate_camara_entrada_person_occupancy
to: "on"
condition:
- condition: sun
after: sunset
action:
- service: light.turn_on
target:
entity_id: light.porche_entrada
data:
brightness_pct: 100Comparativa: Frigate vs ZoneMinder vs Shinobi
| Característica | Frigate | ZoneMinder | Shinobi |
|---|---|---|---|
| Detección por IA | ✅ Nativa (TensorFlow) | ⚠️ Via plugins/API externa | ⚠️ Via plugins externos |
| Integración Home Assistant | ✅ Oficial y completa | ⚠️ Community, limitada | ⚠️ Community |
| Interfaz moderna | ✅ React, muy fluida | ❌ Clásica, pesada | ✅ Moderna |
| Consumo recursos | ✅ Optimizado | ⚠️ Elevado | ✅ Moderado |
| Grabación 24/7 + eventos | ✅ Simultáneo | ✅ Sí | ✅ Sí |
| Configuración | ⚠️ YAML inicial | ✅ GUI completa | ✅ GUI completa |
| Comunidad/Desarrollo | ✅ Muy activo | ✅ Estable | ⚠️ Menos activo |
| Soporte Coral TPU | ✅ Nativo | ❌ No | ❌ No |
¿Cuál elegir?
- Frigate – Si priorizas detección por IA, integración con Home Assistant y privacidad. Ideal para nuevas instalaciones.
- ZoneMinder – Si necesitas un sistema estable con años de desarrollo, configuración 100% vía GUI y no te importa la falta de IA nativa.
- Shinobi – Alternativa moderna con buena interfaz, aunque con menor desarrollo activo y comunidad más pequeña.
Conclusión
Frigate representa el estado del arte en videovigilancia doméstica open source. Su combinación de detección por IA local, integración nativa con Home Assistant y arquitectura eficiente lo convierten en la elección obvia para cualquier entusiasta del homelab preocupado por la privacidad.
La curva de aprendizaje inicial (especialmente la configuración YAML) se compensa ampliamente con el resultado: un sistema de videovigilancia inteligente que reduce las falsas alarmas al mínimo, ofrece notificaciones contextuales y mantiene tus datos bajo tu control absoluto.
Si estás montando un sistema de cámaras desde cero o buscas modernizar una instalación existente, invertir en un Coral TPU y desplegar Frigate es una de las mejoras con mayor impacto que puedes hacer en tu infraestructura domótica.
¿Buscando un NAS para tu sistema de videovigilancia?
Explora nuestras recomendaciones de NAS Synology y NAS QNAP optimizados para cargas de trabajo de IA y transcodificación de video. Los modelos con procesadores Intel Celeron o superior ofrecen excelente rendimiento para Frigate.
Los enlaces pueden contener referidos. Comprar a través de ellos ayuda a mantener este blog.
Dejar una contestacion