Если вы пытаетесь смотреть видеонаблюдение с IP-камеры прямо в браузере, но натыкаетесь на «RTSP не поддерживается», вы не одиноки. В этой статье соберём рабочую схему: возьмём RTSP-поток, сделаем HLS и получите удобный стрим — с нормальным доступом из интернета.

Главная идея: RTSP-поток камеры нужно конвертировать в HLS

План такой: камера отдаёт rtsp-поток по порт, затем вы передаёте его в сервис конвертации, где из поток делают трансляция в HLS (обычно это плейлист .m3u8). После этого стрим можно вставлять в видео-плееры на сайте и смотреть в браузере без магии и плагинов.


Что понадобится (по-человечески)

Чтобы получить доступ к интернет-просмотру, вам почти всегда нужно закрыть четыре «узла» — как в механике: если один болт не затянут, всё скрипит.

  • Камера: поддерживает RTSP (часто это стандартный 554 порт, но не всегда).
  • Сеть: камера должна быть видна в вашей локальной сети (LAN).
  • Роутер: либо вы открываете путь наружу через проброс портов, либо поднимаете защищённый доступ (VPN).
  • Ссылка на RTSP: это тот самый «адрес**, по которому сервис заберёт видеопоток.

Как получить RTSP-ссылку на вашу ipкамера

RTSP-ссылка обычно выглядит как адрес, где есть логин/пароль, ipадрес, порт и путь к потоку. Формат зависит от устройство и производителя, но логика одна: «кто», «где», «какой поток».

Чтобы настроить правильно, сначала выясните два факта:

  • Какой адрес у вашей ipадрес камеры в локальной сети (например, 192.168.x.x).
  • Какой порт у RTSP (часто это 554, но бывает иначе).

Как проверить RTSP-порт и параметры: используйте настройки камеры или Onvif-подход (например, утилиты для обнаружения устройств). Когда параметры найдены, собираете ссылка и получаете RTSP, который сервис сможет конвертировать.

Коротко о типичных настройках, которые помогают получить стабильную запись/стрим:

  • кодек H.264,
  • разумный FPS (часто 25),
  • понятный GOP (ключевые кадры).

Статический или динамический ipадрес: почему это важно

Вопрос «как узнать свой ваш статический адрес» всплывает не случайно: для стабильного доступа из интернет камера должна быть предсказуемой по адресу.

  • Статический ipадрес: почти идеален — вы настраиваете один раз, и работает дольше.
  • Динамический ipадрес: может меняться, и тогда ссылка в RTSP/пробросе портов «уезжает». Решение — сервисы привязки имени к IP или VPN-схема.

Отдельный случай — «серый» ipадрес (локальные диапазоны типа 192.168.x.x): его нельзя прямо пробросить так, будто он внешний. Поэтому нужен правильный путь доступа: роутер с корректной маршрутизацией или VPN.


Если нужен доступ из интернета: настройка роутер и порт-маппинг

Когда камера сидит в локальной сети, а вы хотите смотреть извне, настраивается проброс портов — это и есть «порт-маппинг».

Логика простая: внешний запрос приходит на внешний порт роутера, роутер пересылает его на внутренний ipадрес камеры и тот же RTSP порт (часто 554).

Что важно при настройке:
- у камеры должен быть фиксированный внутренний адрес (лучше резервирование в DHCP),
- каждому устройству — свой внешний порт, если камер несколько.

Пример здравого смысла для нескольких устройство:
- камера 1: внешний порт 554 → внутренняя 192.168.1.100:554
- камера 2: внешний порт 555 → внутренняя 192.168.1.101:554

И да: иначе получится конфликт — два устройства «дерутся» за один вход.


Когда проброс портов не получается: VPN-схема

Если внешний адрес отсутствует или «серый» IP мешает нормально пробросить интернет, рабочий вариант — VPN. Схема выглядит так:

  • сервер (например, на VPS/хостинге) поднимает VPN-туннель,
  • роутер внутри сети открывает камеру для VPN-доступа,
  • дальше видеопоток доходит до вашего медиа-сервера или конвертера уже через защищённый маршрут.

Так вы обходитесь без прямого публичного доступа к камере, а значит меньше «дыр» наружу и меньше боли.


Почему браузеры не поддерживают RTSP напрямую

Вы, вероятно, пробовали открыть RTSP «как есть». И получали разочарование. Причина банальна и сурова: браузер не умеет безопасно и удобно проигрывать RTSP-поток напрямую. Поэтому RTSP трансляция должна быть преобразована в HLS — это стандартный формат для web-плееров.

И вот тут в игру вступает конвертация: сервис берёт ваш RTSP и отдаёт готовый HLS (часто это M3U8).


Создание HLS-трансляции: конвертируем RTSP в web-формат

Как это обычно выглядит по шагам (без лишней лирики):

  • В поле сервис/конвертера указываете rtsp-ссылку на вашу камера.
  • Добавляете доступ (почта/учётка) и выбираете регион/расположение сервера — это влияет на задержку.
  • Нажимаете запуск создание вещания.
  • Получаете готовые параметры для встраивания: это и есть то, что превращает ваш поток в «нормальный» web стрим.

После старта вы получаете то, что можно вставлять на страницу как HTML-код видео.


Встраивание: как вставить трансляцию на сайт (iframe)

Когда HLS уже готов, обычно вы получаете готовый фрейм для встраивания (iframe). Вы вставляете его на страницу, и посетители видят видео в браузере.

Важно понимать: вы не «встраиваете RTSP». Вы встраиваете HLS-представление — поэтому всё работает.


Практические настройки, чтобы поток не “умирал” на середине

Чтобы настроить стабильнее, держите в голове такие принципы:

  • RTSP должен открываться из места, где идёт конвертация (снаружи через проброс или внутри через VPN).
  • порт должен совпадать в двух местах: в ссылке и в роутере.
  • Кодек лучше H.264.
  • Если есть звук — его тоже стоит учитывать, чтобы не получить рассинхрон ожиданий.

Таблица: самый частый путь “RTSP → HLS” и где обычно ломается

Ситуация Что делаете Частая проблема Что исправляет
Камера с белым внешним IP Проброс портов на роутере и отдаёте RTSP RTSP-ссылка не открывается с сервера конвертации сверка ip и порт, корректный проброс
Камера с динамическим IP Привязка домена/сервиса или VPN адрес меняется — трансляция пропадает постоянная адресация или VPN
Камера с “серым” IP VPN-схема до конвертера вы пытались открыть локальный адрес извне доступ через туннель
Браузер не играет RTSP Конвертируете в HLS «видео не запускается» только HLS (M3U8) для web

Итог: что вы в итоге получаете

Когда RTSP поток от камера успешно доходит до конвертера, вы получаете трансляция в HLS, которую легко встроить в сайт. Это тот случай, когда инженерия превращает «не работает» в «работает в браузере», и вы больше не зависите от капризов плееров.

А ещё это красиво: один раз настроить, и ваша камера становится настоящим стримом для просмотра из интернет, а не просто железкой в локальной сети.