Home Assistant как NVR с Frigate
Важно: для стабильной работы NVR используйте SSD и корректно настройте MQTT. Если вы запускаете Home Assistant на Raspberry Pi, отдавайте предпочтение моделям 4 или лучше.

О чём эта инструкция
В шаг за шагом инструкции объясняется, что нужно, как установить и настроить Frigate в Home Assistant, как добавить камеры, где хранится видео, и как оптимизировать систему для длительной и надёжной работы. В конце — чек-листы, методика тестирования, советы по безопасности и варианты альтернатив.
Что понадобится
- Супервизированный Home Assistant (Supervised) на Raspberry Pi 3, 4 или более мощном устройстве. Допустима установка Supervised в Docker.
- Носитель SSD для установки Home Assistant (не SD-карта). NVR требует повышенной производительности и надёжности диска.
- HACS (Home Assistant Community Store) установленный на сервере Home Assistant.
- MQTT-брокер, установленный и настроенный (например, Mosquitto). Frigate использует MQTT для обмена событиями и метками.
- Одна или несколько IP-камер (Wi‑Fi или Ethernet). Подойдёт как «умная» камера от производителя, так и DIY‑камера с RTSP.
Советы по оборудованию:
- Для одного–трёх 720p‑потоков Raspberry Pi 4 обычно достаточен. При 4K‑потоках или многочисленных потоках рекомендуем отдельный сервер или мини‑ПК.
- Если планируете аппаратное ускорение (VAAPI/NVDEC), уточните совместимость вашего CPU/GPU и драйверов.
Установка аддона Frigate в Home Assistant
- Откройте Home Assistant и перейдите в HACS > Integration.
- Нажмите Explore & Add Integrations.
- В строке поиска введите «frigate» и выберите интеграцию Frigate.
- Нажмите Download > Download для загрузки интеграции.
- Когда установка интеграции завершится, перезагрузите Home Assistant через Developer Tools > Restart.
Примечание: интеграция отличается от аддона. Сначала добавляем интеграцию через HACS, затем устанавливаем аддон Frigate из Add-on Store (см. ниже).
Добавление и настройка аддона Frigate
- Перейдите в Settings > Add-ons и нажмите кнопку Add-on Store.
- Введите «frigate» в поиске и выберите официальный аддон Frigate (не выбирайте Frigate Proxy или бета‑версии).
- Нажмите Install и дождитесь завершения установки.
- Установите также аддон File Editor (или используйте любой другой текстовый редактор в Home Assistant).
- Запустите File Editor и откройте его веб‑интерфейс.
- Нажмите на иконку папки, затем на иконку создания нового файла. Назовите его frigate.yaml и нажмите OK.
Пример конфигурации frigate.yaml
Скопируйте и вставьте конфигурацию ниже в созданный файл. Обязательно замените IP‑адреса, учётные данные, пути RTSP и параметры разрешения/фреймрейта под свои камеры.
mqtt:
host: 192.168.0.100
port: 1885
user: mqtt-user
password: techposts
cameras:
TerraceCam: # <------ Name the camera
ffmpeg:
inputs:
- path: rtsp://192.168.0.200/live/ch00_1 # <----- Update for your camera
roles:
- rtmp
rtmp:
enabled: False # <-- RTMP should be disabled if your stream is not H264
detect:
width: 1280 # <---- update for your camera's resolution
height: 720 # <---- update for your camera's resolution
fps: 5
record: # <----- Enable recording
enabled: True
snapshots: # <----- Enable snapshots
enabled: True
motion:
mask:
- 0,720,3,0,427,0,355,162,812,565,783,434,708,244,518,279,918,692,274,230,463,246,642,388,944,720
GarageCam: # <------ Name the camera
ffmpeg:
hwaccel_args: -hwaccel vaapi -hwaccel device /dev/drive/renderrd128 -hwaccel_output_format yuv420p
inputs:
- path: rtsp://192.168.0.00:8554/mjpeg/1 # <----- Update for your camera
roles:
- rtmp
rtmp:
enabled: False # <-- RTMP should be disabled if your stream is not H264
detect:
width: 1280 # <---- update for your camera's resolution
height: 720 # <---- update for your camera's resolution
fps: 5
record: # <----- Enable recording
enabled: False
snapshots: # <----- Enable snapshots
enabled: False
Tapo: # <------ Name the camera
ffmpeg:
inputs:
- path: rtsp://techposts:9716582452@192.168.0.248:554/stream1/1 # <----- Update for your camera
roles:
- rtmp
rtmp:
enabled: False # <-- RTMP should be disabled if your stream is not H264
detect:
width: 1280 # <---- update for your camera's resolution
height: 720 # <---- update for your camera's resolution
fps: 5
record: # <----- Enable recording
enabled: True
snapshots: # <----- Enable snapshots
enabled: True
motion:
mask:
- 0,720,3,0,427,0,355,162,812,565,783,434,708,244,518,279,918,692,274,230,463,246,642,388,944,720После редактирования нажмите иконку «Save».
- Вернитесь в Settings > Add-ons, выберите Frigate и нажмите Start.
- Если конфигурация корректна и MQTT доступен — аддон запустится. Нажмите Open Web UI для открытия панели Frigate.
Когда Frigate получает поток, он отображает превью камер. Если камера не доступна, окно показывает зелёный экран до появления первого кадра.
Где хранятся записи и как с ними работать
- Frigate сохраняет ролики и снимки в хранилище Home Assistant, обычно в разделе Media > Frigate.
- В веб‑интерфейсе Frigate есть вкладка Events — там можно просматривать, воспроизводить и скачивать ролики и снимки.
- Регулярно удаляйте старые файлы. Минимальная рекомендация — проверять хранилище и чистить старые записи не реже раза в месяц.
Отладка и диагностирование
Проверка соединения и причин ошибок:
- Проверьте доступность RTSP потока с сервера (curl/ffprobe/ VLC).
- Убедитесь, что MQTT доступен по адресу и порту, указанным в конфигурации.
- В логах аддона Frigate смотрите ошибки ffmpeg, они обычно указывают на неверный URL или кодек.
- Если поток не H.264, отключите RTMP или укажите корректные роли ffmpeg.
Типичные ошибки и как их решать:
- «Failed to open stream» — проверьте RTSP URL и учётные данные.
- Высокая нагрузка CPU — уменьшите fps или разрешение детекции, включите hw acceleration.
- Видео не записывается — проверьте секцию record в конфигурации камеры.
Оптимизация производительности
- fps: 5–10 fps обычно достаточно для наблюдения и значительно снижает нагрузку.
- Разрешение: если на входе 4K, настройте detect на 1080p или 720p, чтобы снизить затраты на обработку.
- Аппаратное ускорение: для VAAPI предоставьте доступ к устройству (на Linux) и правильные hwaccel_args.
- Хранилище: используйте SSD NVMe или SATA — многократные запись/удаление вызывают ускоренный износ SD карт.
Ретеншн, хранение и резервирование
- Решите политику хранения: хранить последние N дней или до X ГБ для архива.
- Автоматическое удаление: можно реализовать через автоматизации Home Assistant или cron‑задачи на стороне хоста.
- Резервные копии ключевых записей: скачивайте важные ролики и храните копии вне домашней сети.
Безопасность и приватность
- Избегайте прямого открытия RTSP/HTTP портов в интернет без VPN и авторизации.
- Закройте доступ к MQTT с внешних сетей; используйте TLS и сложные пароли.
- Контролируйте доступ к интерфейсу Home Assistant и Frigate через двухфакторную аутентификацию.
- Для соответствия требованиям конфиденциальности храните минимум метаданных и выполняйте очистку старых записей по политике.
Когда такое решение не подходит (counterexamples)
- Если вам нужна масштабируемая корпоративная VMS с централизированной архивацией и поддержкой тысяч камер — лучше использовать коммерческие решения.
- Если камеры не поддерживают стабильный RTSP/ONVIF и постоянно теряют поток — система может быть нестабильной.
- Если у вас крайне ограниченный ресурс CPU и много камер высокой чёткости — потребуется более мощное железо.
Альтернативы и варианты
- MotionEye: проще, но уступает Frigate в точности детекции объектов.
- Коммерческие NVR от производителя камер: удобны, но часто обходятся дороже и хранят данные облачно.
- Облачные сервисы с AI‑детекцией: избавляют от локального HW, но несут расходы и вопросы приватности.
Чек‑лист для установки (роль‑ориентированный)
Для инсталлятора:
- SSD установлен и смонтирован для Home Assistant.
- HACS и MQTT доступны.
- Аддон Frigate установлен и запущен.
- Прописаны корректные RTSP URL и учётные данные.
Для администратора:
- Политика ретеншна документирована.
- Настроены резервные копии важных записей.
- Ограничен внешний доступ, включён 2FA.
Для домашнего пользователя:
- Тестовые события проходят детекцию (проверить через Events).
- Записи корректно воспроизводятся и скачиваются.
SOP: быстрая методика запуска (мини‑плейбук)
- Установите или обновите Home Assistant на SSD.
- Установите HACS и MQTT.
- Добавьте Frigate через HACS и установите аддон из Add‑on Store.
- Создайте frigate.yaml, заполните данные камер и MQTT.
- Запустите Frigate, проверьте логи и Events.
- Проведите тестовые срабатывания и настройте маски движения.
- Настройте политики хранения и резервирования.
Критерии приёмки
- Frigate запускается без критических ошибок в логах.
- Все добавленные камеры отображают превью и детектируют движения.
- События сохраняются в разделе Media и доступны для скачивания.
- Нагрузка CPU и I/O в допустимых пределах при длительной работе.
Тесты и приёмка
- Генерируйте тестовое движение и убедитесь, что Frigate создаёт event с меткой детекции.
- Проверяйте задержку записи (latency) между событием и сохранённым файлом.
- Тестируйте восстановление после перезагрузки Home Assistant.
Рекомендации по маске движения и фальшивым срабатываниям
- Рисуйте маски в конфигурации для исключения постоянных источников движения (ветки, дороги, отражения).
- Снижайте чувствительность и fps, если много ложных срабатываний.
- Используйте ограничения по классам объектов (человек, автомобиль), если доступны модели распознавания.
Итог
Использование Frigate с Home Assistant превращает ваш сервер в мощный локальный NVR с AI‑детекцией, позволяя экономить дисковое пространство и снижать сетевой трафик. Внимательная настройка RTSP, MQTT и политик хранения — ключ к стабильной и безопасной работе. Для проектов с несколькими камерами и требованиями к длительному хранению стоит продумать аппаратную платформу и политику резервного копирования.
Кратко:
- Используйте SSD, настраивайте MQTT, ограничивайте доступ через VPN.
- Снижайте fps/разрешение детекции для экономии ресурсов.
- Проводите регулярную чистку и резервное копирование важных роликов.
Дополнительно: при проблемах с ffmpeg и hwaccel проверьте документацию Frigate и логи контейнера. Для корпоративных сценариев рассмотрите специализированные решения.