Открыть сервисСервис

RTSP в камерах видеонаблюдения

RTSP (Real Time Streaming Protocol, RFC 2326) — сетевой протокол прикладного уровня, предназначенный для установления и управления сеансами потоковой передачи мультимедийных данных в реальном времени. В контексте камер видеонаблюдения RTSP является стандартным способом получения видеопотока с IP-камеры напрямую — независимо от того, подключено ли устройство к видеорегистратору (NVR) или используется автономно.

Назначение и место в архитектуре видеонаблюдения

IP-камера — это по сути сетевое устройство, транслирующее видеопоток по сети. RTSP выступает «языком», на котором камера и клиентское устройство (видеорегистратор, компьютер, мобильное приложение) договариваются о параметрах сеанса: что именно передавать, в каком формате, как управлять воспроизведением.

Протокол не передаёт видеоданные сам по себе — он управляет сеансом. Фактическая передача потока выполняется по протоколу RTP (Real-time Transport Protocol), а контроль доставки — по RTCP (RTP Control Protocol). Такое разделение ролей заложено в архитектуру и позволяет гибко настраивать качество и надёжность доставки.

Основные возможности

RTSP поддерживает набор команд, сходных с методами HTTP:

  • OPTIONS — запрос списка поддерживаемых методов;
  • DESCRIBE — получение описания потока (медиа-описание в формате SDP);
  • SETUP — установка транспортного сеанса (выбор портов, протокола доставки);
  • PLAY — начало воспроизведения потока;
  • PAUSE — приостановка;
  • TEARDOWN — завершение сеанса.

В видеонаблюдении чаще всего используются DESCRIBE, SETUP, PLAY и TEARDOWN. Стандартный адрес потока IP-камеры имеет вид rtsp://<ip-адрес>:554/<путь>, например rtsp://192.168.1.10:554/stream1. Порт 554 закреплён за RTSP по умолчанию.

Кодеки и форматы потока

RTSP сам по себе не определяет формат видеоданных — кодек указывается в медиа-описании. В камерах видеонаблюдения наиболее распространены:

КодекОсобенности
H.264 (AVC)Наиболее универсальный, поддерживается практически всеми камерами и NVR
H.265 (HEVC)Сжатие примерно вдвое эффективнее H.264 при том же качестве; активно внедряется
MJPEGКадры JPEG подряд; высокая нагрузка на канал, но прост в обработке
H.266 (VVC)Начинает появляться в новых моделях камер

Часто камера транслирует несколько потоков одновременно: основной (Main Stream) в максимальном разрешении для записи и дополнительный (Sub Stream) в пониженном — для удалённого просмотра.

Аутентификация

Большинство камер поддерживают две схемы аутентификации в RTSP-сеансе:

  • Basic — учётные данные передаются в открытом виде; уязвимо при передаче по незащищённому каналу;
  • Digest — пароль не передаётся открыто, вместо него отправляется хеш; реализован в большинстве камер.

Адрес с учётными данными формируется как rtsp://login:password@192.168.1.10:554/stream1. Для шифрования транспортного слоя используется RTSPS (RTSP over TLS, порт 322), поддерживаемый не всеми камерами.

Транспортные режимы

На этапе SETUP клиент и камера согласовывают способ доставки RTP-пакетов:

  • UDP (RTP over UDP) — пакеты идут напрямую по UDP; минимальная задержка, но потери возможны при нестабильной сети. Камера отправляет поток на адрес и порты, указанные клиентом, что требует корректной настройки NAT/межсетевого экрана.
  • TCP (RTP over RTSP, interleaved) — RTP-пакеты инкапсулируются в TCP-соединение RTSP-сеанса; надёжнее в условиях потерь и проще для NAT, но добавляет задержку из-за механизмов контроля доставки.
  • Multicast — поток рассылается групповой рассылкой; экономит канал при множестве одновременных зрителей, но требует поддержки multicast в сети.

В реальных сетях видеонаблюдения наиболее распространен TCP-режим как наиболее устойчивый, хотя для локальных сетей с гарантированной пропускной способностью предпочтительнее UDP.

Взаимодействие с другими протоколами

RTSP сосуществует с рядом смежных технологий:

  • ONVIF — отраслевой стандарт интерфейсов IP-устройств видеонаблюдения; профиль G определяет, как через ONVIF получать RTSP-адрес потока камеры. Практически все камеры, поддерживающие ONVIF, предоставляют RTSP-поток по стандартному механизму.
  • RTMP — протокол Adobe для трансляций в интернет (YouTube, Twitch); не применяется в видеонаблюдении, но иногда RTSP-поток транслируется в RTMP через медиа-серверы.
  • WebRTC — используется для браузерного просмотра; поскольку RTSP не поддерживается браузерами напрямую, поток преобразуется через шлюзы (например, на базе GStreamer, FFmpeg или готовых серверов).

Практическое применение

Прямое подключение к RTSP-потоку камеры используется в нескольких сценариях:

  1. Подключение камеры к NVR — регистратор запрашивает поток по RTSP и записывает его.
  2. Просмотр на ПК — с помощью плееров VLC, IINA, или программ типа ONVIF Device Manager, TinyCam.
  3. Интеграция в системы видеонаблюдения — VMS-платформы (Milestone, AxxonNext, Qognify) получают потоки по RTSP от десятков и сотен камер.
  4. Обработка и аналитика — видеопоток передаётся в системы компьютерного зрения (OpenCV, нейросетевые аналитики) через FFmpeg или GStreamer.

Ограничения

RTSP не является браузерным протоколом: ни один современный браузер не воспроизводит RTSP-поток нативно. Для веб-просмотра требуется либо переход на HLS/DASH (с задержкой в несколько секунд), либо WebRTC-шлюз с задержкой в сотни миллисекунд. Кроме того, качество и стабильность RTSP-реализации сильно различаются между производителями камер: часть бюджетных моделей поддерживает только один поток, не имеет Digest-аутентификации или ограничивает число одновременных подключений (часто — двумя-тремя сессиями).

Историческая справка

RTSP разработан в 1996 году совместно усилиями RealNetworks, Netscape и Columbia University; спецификация опубликована как RFC 2326. В 2016 году вышла обновлённая версия RFC 7826, уточняющая семантику команд и транспортные режимы. Несмотря на появление более новых протоколов, RTSP остаётся де-факто стандартом индустрии видеонаблюдения: поддерживается подавляющим большинством IP-камер и регистраторов.

Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru