Все возможности CamRelay во Frigate NVR
Превратите запасной Android-телефон в камеру для Frigate NVR: CamRelay передаёт RTSP-поток со звуком, а встроенный во Frigate go2rtc принимает его для записи, просмотра в реальном времени со звуком и двусторонней связи. Пошаговая инструкция с полным config.yml.
On this page
Все возможности CamRelay во Frigate NVR
CamRelay подключает Android-телефон к Frigate через один RTSP-адрес. Встроенный во Frigate go2rtc принимает этот поток и раздаёт его записи, просмотру в реальном времени и каналу двусторонней связи.
CamRelay — приложение от Banana Studio, которое превращает телефон в IP-камеру в вашей локальной сети. Оно передаёт видео H.264 или H.265 со звуком Opus, G.711 или AAC. В нём есть веб-интерфейс, поддержка ONVIF и приём звука от зрителей через RTSP backchannel.
Схема передачи данных: телефон с CamRelay → go2rtc (внутри Frigate) → запись, просмотр в реальном времени со звуком, двусторонняя связь.
Конфигурация ниже рассчитана на Frigate 0.16. В более поздних версиях некоторые ключи могут измениться, поэтому сверяйтесь с официальной документацией Frigate.
Возможности CamRelay во Frigate
Первые четыре возможности попадают во Frigate через go2rtc. Остальные настраиваются в приложении и обеспечивают круглосуточную работу трансляции.
| Возможность CamRelay | Применение во Frigate | Где настроить |
|---|---|---|
| RTSP-поток H.264/H.265, разрешение и FPS камеры телефона | Запись, обнаружение, просмотр в реальном времени | go2rtc, шаг 2.1 |
| Звук G.711 (PCMU/PCMA), Opus или AAC | Звук при просмотре и в записях | Кодек в приложении, шаг 2.2 |
| Двусторонняя связь (RTSP backchannel) | Кнопка микрофона в просмотре в реальном времени | WebRTC + HTTPS, шаг 2.3 |
| Наложение даты и времени, имени камеры, IP, заряда батареи и температуры, GPS-координат и скорости | Впечатаны в изображение, которое записывает Frigate | В приложении, шаг 1 |
| Автозапуск при включении, затемнение экрана, пауза при перегреве или низком заряде | Не даёт трансляции прерваться | В приложении, шаг 1 |
| Запись MP4 на телефон, управление файлами в браузере | Резервные записи вне Frigate | В приложении, шаг 1 |
| Веб-интерфейс | Проверка изображения и звука, изменение настроек без остановки трансляции | Шаг 1 |
Перед началом
Вам понадобятся:
- Установленный и работающий сервер Frigate (см. руководство по установке Frigate) в той же локальной сети, что и телефон.
- Android-телефон с установленным CamRelay, постоянно подключённый к зарядке и с фиксированным IP-адресом, назначенным в роутере.
- На Android 17: разрешите CamRelay доступ к локальной сети (в Android он называется Устройства поблизости). Без него Frigate не сможет подключиться к телефону. Подробнее в статье о CamRelay 1.0.5.
Чтобы использовать все возможности CamRelay, контейнер Frigate должен открывать следующие порты:
| Порт | Назначение |
|---|---|
| 8971 | HTTPS-интерфейс Frigate, нужен для двусторонней связи |
| 8554 | RTSP-ретрансляция go2rtc |
| 8555 TCP и UDP | WebRTC: просмотр со звуком и двусторонняя связь |
Шаг 1. Настройка CamRelay
CamRelay использует язык телефона; ниже приведены русские названия настроек. Обратите внимание: открытие Настроек останавливает трансляцию. Когда CamRelay уже транслирует, настройки можно менять через веб-интерфейс, не останавливая поток.
1.1 Порт RTSP
В разделе Порты сервера указаны Порт трансляции RTSP (по умолчанию 1935) и Порт веб-интерфейса (по умолчанию 8888). Значения по умолчанию вполне подходят.

1.2 Видео
- В разделе Выбор камеры выберите нужную камеру (основная задняя камера обычно даёт лучшее изображение).
- Откройте настройки этой камеры и задайте Разрешение, Частота кадров (FPS) и Битрейт видео. Доступные разрешения и частоты кадров зависят от камеры телефона.
- В разделе Общие настройки видео → Видео кодек выберите H.264, чтобы браузеры могли воспроизводить трансляцию.
- Оставьте Интервал ключевых кадров (GOP) равным 1s (по умолчанию), чтобы просмотр открывался быстро.


Для видеонаблюдения достаточно 1080p при 15 FPS, и это не нагружает сервер Frigate. H.265 экономит трафик, но Frigate придётся перекодировать его для браузера (см. шаг 2.2).
1.3 Звук
В разделе Настройки аудио включите Включить аудио. Аудиокодек потока выбирается в разделе Двусторонняя связь → Кодек аудио двусторонней связи. Эта одна настройка действует и на исходящий звук, и на двустороннюю связь:
- G.711 ULAW: рекомендуется для Frigate, воспроизводится напрямую и в MSE, и в WebRTC (см. шаг 2.2).
- OPUS: выбран по умолчанию начиная с Android 10, звук чище, но воспроизводится только через WebRTC.
- G.711 ALAW: только если принимающее устройство требует A-law.
- AAC: только воспроизведение; для двусторонней связи нужно перекодирование.
Оставьте Режим аудио двусторонней связи на Голосовая связь: в нём есть эхоподавление, поэтому при двусторонней связи не возникает свиста.

1.4 Наложения, запись и круглосуточная работа
- Оверлей видео: показывайте дату и время, имя камеры (Имя камеры; оставьте пустым, чтобы использовать имя устройства), IP-адрес, заряд батареи и температуру, GPS-координаты или спидометр. Наложения рисуются прямо в видео, поэтому видны и в записях Frigate. По умолчанию все они выключены.
- Настройки записи: включите Включить запись, чтобы хранить резервную копию на телефоне. Файлы MP4 сохраняются в
Movies/CamRelayи делятся на части согласно параметру Длительность сегмента записи (в минутах). Когда достигнут предел Макс. объем памяти (МБ), самые старые файлы удаляются. - Безопасность и автоматизация: включите Автозапуск при включении устройства, чтобы CamRelay снова начинал трансляцию после перезагрузки телефона. На Android 10 и новее приложению также нужно разрешение на показ поверх других приложений. Температурная защита и Защита батареи приостанавливают трансляцию, когда телефон перегревается или батарея садится, и возобновляют её, когда всё приходит в норму.
- Оптимизация батареи: убедитесь, что оптимизация батареи для CamRelay выключена, чтобы Android не останавливал его в фоне.



1.5 Запуск трансляции и получение адреса
Вернитесь на главный экран и нажмите кнопку воспроизведения. Панель вверху показывает используемые разрешение, FPS, битрейт и кодеки. В нижнем углу отображаются три адреса, у каждого есть кнопка копирования:
rtsp://<phone-ip>:1935/: RTSP-адрес для Frigate.http://<phone-ip>:8888: веб-интерфейс CamRelay.http://<phone-ip>:8889/onvif/device_service: служба ONVIF.

Если камера стоит на одном месте, нажмите значок луны (Затемнить экран), чтобы погасить экран. Это экономит энергию и предотвращает выгорание OLED-экрана. Чтобы включить экран снова, коснитесь его дважды.
В примерах ниже используется rtsp://192.168.1.50:1935/; замените его на адрес, который показывает CamRelay. Текущая версия CamRelay пока не запрашивает логин для RTSP, поэтому используйте её только в доверенной сети.
Скоро: в следующем обновлении CamRelay можно будет задать имя пользователя и пароль для защиты RTSP-потока. Тогда достаточно будет добавить их в адрес в go2rtc, например
rtsp://user:[email protected]:1935/.
Проверить поток с сервера Frigate можно с помощью ffprobe:
ffprobe -rtsp_transport tcp rtsp://192.168.1.50:1935/
В выводе должны быть видеопоток h264 и аудиопоток (pcm_mulaw для G.711 ULAW, opus для OPUS).
Шаг 2. Настройка go2rtc во Frigate
К телефону подключается только go2rtc внутри Frigate. Он один раз забирает RTSP-поток CamRelay и раздаёт его записи, обнаружению, просмотру в реальном времени (MSE, WebRTC) и двусторонней связи. Сам Frigate читает поток из rtsp://127.0.0.1:8554/camrelay, поэтому телефону никогда не приходится обслуживать несколько подключений одновременно. Так он меньше греется и экономит батарею.
2.1 Добавление потока
Добавьте блок go2rtc в ~/frigate/config/config.yml:
go2rtc:
streams:
camrelay: # то же имя, что у камеры во Frigate
- rtsp://192.168.1.50:1935/ # адрес, который показывает CamRelay
webrtc:
candidates:
- 192.168.1.100:8555 # IP сервера Frigate
- stun:8555
- Достаточно одной строки RTSP. Со звуком G.711 или Opus go2rtc передаёт видео и звук прямо в браузер, без перекодирования через
ffmpeg:. Та же строка RTSP несёт и канал двусторонней связи. webrtc.candidatesобязателен при работе в обычном Docker; без него WebRTC и микрофон не работают в локальной сети. Порты 8555 TCP/UDP были открыты в разделе «Перед началом».- Если поток называется так же, как камера, Frigate автоматически использует его для просмотра в реальном времени. В противном случае задайте для камеры
live.streams.
2.2 Кодеки и звук
Установите в CamRelay видео H.264. Проще всего со звуком G.711. Согласно документации Frigate, MSE (просмотр по умолчанию) воспроизводит AAC или PCMA/PCMU, а WebRTC (используется для двусторонней связи) воспроизводит Opus или PCMA/PCMU. Напрямую в обоих работает только G.711.
| Звук CamRelay | MSE | WebRTC | Дополнительная строка go2rtc |
|---|---|---|---|
| G.711 ULAW / ALAW (PCMU/PCMA) | Да | Да | Не нужна |
| OPUS | Нет | Да | ffmpeg:camrelay#audio=aac, чтобы слышать звук в MSE |
| AAC | Да | Нет | ffmpeg:camrelay#audio=opus для WebRTC |
Если вы смотрите в основном через WebRTC, Opus звучит чище, чем G.711 (телефонное качество, 8 кГц). Если без H.265 не обойтись, добавьте строку перекодирования видео и оставьте строку RTSP:
go2rtc:
streams:
camrelay:
- rtsp://192.168.1.50:1935/
- "ffmpeg:camrelay#video=h264#hardware" # копия в H.264 для браузеров
2.3 Двусторонняя связь
Во время трансляции CamRelay всегда готов принимать звук через RTSP backchannel; включать ничего не нужно. go2rtc открывает этот канал из строки RTSP в шаге 2.1 без дополнительной настройки.
Чтобы говорить, откройте Frigate по HTTPS на порту 8971, перейдите к просмотру камеры в реальном времени и нажмите на микрофон; Frigate сам переключится на WebRTC. Ваш голос звучит из динамика телефона с громкостью, заданной параметром Громкость воспроизведения в CamRelay.
Если другому приложению тоже нужно говорить с телефоном напрямую, добавьте #backchannel=0 в конец RTSP-адреса, чтобы go2rtc не занимал канал.
2.4 Добавление камеры во Frigate
Добавьте блок cameras под блоком go2rtc. Камера читает поток обратно из go2rtc, а не подключается к телефону:
cameras:
camrelay:
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/camrelay # поток go2rtc из шага 2.1
input_args: preset-rtsp-restream
roles:
- record
- detect # обязателен для Frigate, больше ничего настраивать не нужно
record:
enabled: true
CamRelay передаёт один поток (дополнительного потока нет), поэтому камера использует его и для записи, и для обнаружения.
Перезапустите и проверьте:
docker compose restart frigate
docker logs -f frigate
Чтобы отдельно проверить go2rtc, временно добавьте порт 1984:1984 в docker-compose и откройте http://<server-ip>:1984. У потока camrelay должен быть RTSP-источник с видео H264 и звуком PCMU/PCMA или OPUS. Когда CamRelay появится на главной странице Frigate, всё готово.
Шаг 3. Полный config.yml
Файл ниже содержит только то, что нужно для CamRelay: поток go2rtc, WebRTC, вход в систему (для HTTPS, который нужен двусторонней связи) и запись со звуком.
go2rtc:
streams:
camrelay:
- rtsp://192.168.1.50:1935/ # адрес, который показывает CamRelay, H.264 + G.711 ULAW
webrtc:
candidates:
- 192.168.1.100:8555 # IP сервера Frigate
- stun:8555
auth:
enabled: true
cameras:
camrelay:
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/camrelay
input_args: preset-rtsp-restream
roles: [record, detect] # detect: обязателен для Frigate
record:
enabled: true
live:
streams:
CamRelay: camrelay
version: 0.16-0
Устранение неполадок
Большинство проблем при подключении CamRelay к Frigate связаны с адресом потока, кодеками или сетью.
| Симптом | Частая причина | Решение |
|---|---|---|
| Камера показывает «No frames received» | Неверный адрес или порт, CamRelay не транслирует, или Android остановил его в фоне | Снова скопируйте адрес с главного экрана CamRelay; проверьте его через ffprobe; откройте http://<ip>:1984 (если порт открыт), чтобы увидеть, получает ли go2rtc поток |
| Не подключается даже в одной сети Wi-Fi | Телефон с Android 17 без доступа к локальной сети; «изоляция клиентов» в роутере; гостевая сеть; VPN | Разрешите CamRelay Устройства поблизости; выключите изоляцию клиентов/AP; подключите сервер и телефон к одной основной сети |
| Изображение дёргается или рассыпается | Потеря UDP-пакетов | Добавьте #transport=tcp к адресу в go2rtc |
| Просмотр не воспроизводится в браузере | Поток H.265 или не заданы webrtc.candidates |
Выберите H.264 в CamRelay или перекодируйте через ffmpeg:...#video=h264; задайте webrtc.candidates |
| Подключение время от времени обрывается | Нестабильный Wi-Fi, оптимизация батареи Android, перегрев телефона | Используйте фиксированный IP, держите телефон на зарядке, выключите оптимизацию батареи для CamRelay, включите Автозапуск при включении устройства, используйте кнопку затемнения экрана; следите за температурой вверху экрана CamRelay; проверьте журналы Frigate в Settings → System → Logs |
| Нет звука при просмотре | Выключен параметр Включить аудио или просмотр в MSE, когда CamRelay передаёт OPUS | Включите звук в CamRelay; выберите G.711 ULAW, чтобы звук был и в MSE, и в WebRTC |
| Микрофон не работает | Frigate открыт по HTTP вместо HTTPS или не открыт порт 8555 | Откройте Frigate по адресу https://<ip>:8971; откройте порт 8555 TCP/UDP и задайте webrtc.candidates |
Обращаясь за помощью в GitHub Discussions проекта Frigate, приложите файл конфигурации, журнал запуска и вывод ffprobe для потока CamRelay. С вопросами о CamRelay нажмите Обратная связь на экране О приложении в приложении.
Скачать CamRelay в Google Play
Больше новостей, руководств и приложений от Banana Studio на xnano.net.
Источники: документация Frigate по Live View для go2rtc; руководство пользователя CamRelay и страница в Google Play для CamRelay.
Related app
CamRelay — IP-камера с трансляцией по RTSP
Превратите свой Android-смартфон в мощную сетевую RTSP-камеру.
Related posts
Как превратить старый Android-телефон в камеру видеонаблюдения
Дайте старому Android-телефону вторую жизнь в роли камеры видеонаблюдения: выберите удачное место, держите его на зарядке, пусть CamRelay сам запускается после перезагрузки, а смотреть и записывать видео можно в любом браузере в вашей сети Wi-Fi.
Как превратить Android-телефон в камеру с живой трансляцией
Превратите любой Android-телефон в камеру с живой трансляцией за несколько минут с CamRelay: дайте разрешения, нажмите кнопку воспроизведения и смотрите видео в любом браузере в своей сети Wi-Fi. Без аккаунта, без облака, без установки чего-либо на устройство для просмотра.