Найти в Дзене
Удобный дом!

go2rtc+frigate - улучшение потоков в отдельном контейнере.

Оглавление
Кажется ИИ подумал про другой фигат ... ну окей.
Кажется ИИ подумал про другой фигат ... ну окей.

Зачем устанавливать go2rtc с Frigate?

go2rtc — это инструмент для оптимизации видеопотоков в системах видеонаблюдения, таких как Frigate. Он упрощает работу с камерами и улучшает производительность.

!!! UPD. столкнулся с тем что могут конфликтовать frigate и go2rtc, лучше использовать встроенный

Преимущества:

  • Низкая задержка: WebRTC обеспечивает просмотр видео в реальном времени (задержка ~100-200 мс).
  • Лучшее качество: Оптимизация потоков (H.264/H.265) даёт чёткое изображение.
  • Меньшая нагрузка: Одно соединение к камере снижает нагрузку на сеть и CPU (~5-10% на поток).
  • Удобство: Единый интерфейс (http://<ip>:1984) для всех камер.
  • Гибкость: Поддержка аппаратного ускорения и интеграция с Home Assistant.

С go2rtc Frigate работает быстрее, а видео — плавнее и надёжнее.

Эта инструкция начинается с установленного Frigate на Orange Pi 5 Plus (Debian 12, Docker, Docker Compose) и добавляет go2rtc для оптимизации потоков. Она включает все исправления, учитывает вашу конфигурацию (MQTT, зоны, детекцию) и подтверждает, что шаги 5 и 6 (H.265 и Home Assistant) не понадобились, так как всё заработало раньше.

Предварительные требования

  • Frigate работает на http://192.168.2.18:5000 с камерами (PeredVhodom, Doma, ViezdPravo, ViezdLevo, Sad, Xiaomi1).
  • Docker и Docker Compose установлены:

docker --version
docker-compose --version

Шаг 1: Автоматизация создания устройств

Чтобы /dev/video-dec0 и /dev/video-enc0 создавались автоматически:

  1. Создайте скрипт:

nano /root/fix-devices.sh

Добавьте (Есть на гите с отступами):

-2

Сохраните.

2. Сделайте исполняемым:

chmod +x /root/fix-devices.sh

3. Создайте systemd-службу:

nano /etc/systemd/system/fix-devices.service

Добавьте:

[Unit]
Description=Fix video devices for go2rtc
After=network.target

[Service]
Type=oneshot
ExecStart=/root/fix-devices.sh
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Сохраните.

4. Активируйте:

sudo systemctl enable fix-devices.service
sudo systemctl start fix-devices.service

5. Проверьте:

ls -l /dev/dri /dev/rga /dev/video*

Шаг 2: Установка и настройка go2rtc

1. Остановите и удалите старый контейнер (если есть):

docker stop go2rtc || true
docker rm go2rtc || true

2. Создайте директорию:

mkdir -p /root/go2rtc
cd /root/go2rtc

3. Создайте go2rtc.yml для Docker Compose:

nano /root/go2rtc/go2rtc.yml

Добавьте (Есть на гите с отступами):

-3

4. Создайте go2rtc.yaml конфигурация(Есть на гите с отступами):

nano /root/go2rtc/go2rtc.yaml

Добавьте ваши камеры и поставьте свой адрес, порты не надо менять. Вот мой пример:

-4

5. Запустите go2rtc:

docker-compose -f /root/go2rtc/go2rtc.yml up -d

6. Проверьте:

docker ps
docker logs go2rtc

Логи не должны содержать ошибок вроде address already in use.

Шаг 3: Настройка автозапуска go2rtc

1. Создайте systemd-службу:

nano /etc/systemd/system/go2rtc-docker.service

Добавьте:

[Unit]
Description=go2rtc Docker Compose Service
Requires=docker.service fix-devices.service
After=docker.service fix-devices.service

[Service]
Type=oneshot
RemainAfterExit=yes
WorkingDirectory=/root/go2rtc
ExecStart=/usr/bin/docker-compose -f /root/go2rtc/go2rtc.yml up -d
ExecStop=/usr/bin/docker-compose -f /root/go2rtc/go2rtc.yml down
TimeoutStartSec=0

[Install]
WantedBy=multi-user.target

2. Активируйте:

sudo systemctl enable go2rtc-docker.service
sudo systemctl start go2rtc-docker.service

Шаг 4: Обновление Frigate

Возвращаемся во Frigate и обновляем конфигурацию.

Нам нужно добавить вот такой блок, как обычно замените на свои камеры. (Есть на гите с отступами):

-5

Способ 1 Поддержать автора
Способ 2 https://donate.stream/yoomoney410013774736621

или через криптокошелёк (Только USDT) TCHekdJZFndXpDrHZGuTmqFNcqhWBTTzPr

Связаться со мной. (Консультации, проектирование и обучение)

Новый подход к электрике и дизайну помещений. Некоторые провода уже не нужно тянуть, какие-то решения можно принять после ремонта. Перенести выключатель, запустить кондиционер с телефона - возможно автоматизировать любую рутину.

Мой телеграм канал, там все быстрее обновляется телеграм.

Сайт smart4home.ru и альтернативный Умный дом на любом этапе.

Соц сети: RuTube канал Удобный дом / You Tube канал Удобный дом Яндекс Дзен: Удобный дом / InGram

Платформы специалистов: Авито / Профи.ру / Яндекс Услуги https://uslugi.yandex.ru/profile/EgorSmirnov-2294380?from=telek