Если вы хоть раз пытались подключиться к IP-камере, запустить трансляцию или просто понять, почему новенькая «умная» камера за 3 000 рублей показывает кадры с задержкой как будто вещает из прошлого, вы уже знаете страшную правду:
Мир потокового видео работает на наборе протоколов, которые выглядят так, будто их проектировали разные группы программистов в разных эпохах и под совершенно разные задачи — и никого это до сих пор не смущает.
Это как семейное собрание, где дедовский RTP рассказывает о войне пакетов, RTSP командует всеми как старший брат, RTMP сидит в углу и пытается доказать, что он всё ещё нужен, а ONVIF ходит с толстой папкой стандартов и напоминает, что без него здесь была бы анархия.
Пристегнитесь. Дальше будет больно, смешно и неожиданно познавательно.
RTP: рабочая лошадь, которая тянет телегу со всей планеты
Начнём с того, кто в этой семье делает реальную работу — RTP.
Если все остальные протоколы — это менеджеры, завхозы и теоретики, то RTP — шахтёр. Настоящий. В каске. Который грузит пакеты и везёт их через сеть, молясь, чтобы по пути ничего не отвалилось.
RTP тащит:
аудио из VoIP
видео из IP-камер
футуристичные конференции из WebRTC
потоки с дронов, роботов, медицинских устройств
и вообще всё, что должно доходить в реальном времени
И делает это на UDP, то есть без гарантий.
Как маршрутка:
«Доедем — супер. Не доедем — извините, у меня сын на машине работает».
RTP не обсуждает ваше творчество. Если вы засунули туда H.265, Opus, PCM или видео с вебки за $5 — это ваши проблемы. Он просто возит. И возит уже почти 30 лет. И будет возить дальше, потому что никто не придумал способ доставлять миллионы пакетов в секунду быстрее.
RTP — это вахтовик цифровой эпохи, без которого вообще ничего бы не двигалось.
RTSP: умный, правильный и раздражающий старший брат
Если RTP — это грузовик, то RTSP — это навязчивый менеджер, который сидит над душой и командует:
PLAY
PAUSE
RECORD
TEARDOWN (самая драматичная команда из всех существующих)
DESCRIBE (как будто требует биографию у камеры)
RTSP — это не про отправку видео.
Это про то, кто, как, куда и на каких условиях будет его смотреть.
Он говорит RTP, что делать, кому отправлять, какие порты открыть и как организовать сессию. И делает это тоном человека, который считает себя намного умнее всех остальных участников процесса.
Почему камеры его обожают?
Потому что:
можно управлять PTZ
можно на лету менять параметры
можно держать живые потоки в низкой задержке
можно снимать всё подряд сразу для десятков клиентов
RTSP — это такой «пульт дистанционного управления от мира потоков».
С виду старомодно, но внутри удивительно удобно.
Хотя если бы он был человеком, вы бы начали избегать его разговоров у кофемашины.
RTMP: мертвец, который почему-то всё ещё функционирует
RTMP должен был умереть.
Ещё в 2020 году.
Когда Flash торжественно похоронили, залили землёй, поставили крест и свергли с пьедестала всех «мультимедийных королей нулевых».
Но есть нюанс.
RTMP — идеален как ингест-протокол.
OBS, стримеры, Twitch, YouTube — все продолжают его использовать, потому что он:
стабилен
понятен
не падает
и работает, даже если интернет держится на степлере и молитве
Это как старый грузовик «ГАЗ».
Да, гремит. Да, дверца закрывается шлепком колена. Да, заводится с третьего раза. Но он везёт. А значит — не заменяют.
RTMP — это покойник, который встаёт каждое утро и идёт на работу, потому что «кто, если не я?».
ONVIF: контролёр, без которого камеры бы давно перегрызли друг друга
ONVIF — это вообще не протокол доставки видео.
Это конгресс, написанный SOAP-сообщениями и XML-молитвами, чтобы камеры разных брендов перестали вести себя как агрессивные хомяки с проприетарными API.
До ONVIF мир видеонаблюдения выглядел так:
у Dahua — свой API
у Hikvision — свой
у Axis — свой
у ноунейм китайцев — вообще что-то, написанное, кажется, под луной
Подключить 10 разных камер было как общаться с 10 людьми, которые каждый говорит на своём языке и одновременно кричат.
ONVIF пришёл и сказал:
«Тихо.
Теперь у нас есть правила.
Вот профили S, G, T.
Вот Discovery.
Вот события.
Вот RTSP-URL.
Все — по очереди!»
С тех пор камеры можно:
найти в сети
получить список потоков
управлять PTZ
настраивать кодеки и битрейт
подписываться на события
и, главное — вытащить RTSP-URL без шаманства
Да, ONVIF использует SOAP.
Да, XML там столько, что плакать хочется.
Но именно он объединяет мир железа в похожий на цивилизацию порядок.
Почему мир не выбрал один протокол, а таскает четыре?
Потому что жизнь несправедлива.
И ещё потому что каждая задача — своя:
Нужно видео «здесь и сейчас»?
→ RTP/RTSP.
Нужно залить поток на стриминговый сервис?
→ RTMP.
Нужно понять, как камера живёт, чем питается и куда отсылает поток?
→ ONVIF.
Нужно позвать соседей посмотреть матч?
→ HLS, чтобы у всех задержка была одинаковая (и никто не орал «ГОООЛ!» раньше времени).
У протоколов конфликтующие цели:
камеры хотят маленькой задержки
CDN хотят длинной задержки «чтобы было стабильно»
фаерволы ненавидят UDP, камеры его обожают
браузеры хотят HTTP, камеры хотят RTP
инженеры хотят стандарты, бизнес хочет быстрее вчера
Поэтому даже попытки «всё переписать» выглядят как:
«Слушайте, давайте оставим всё как есть, но сверху добавим WebRTC!»
Так и живём.
Другие протокольные герои и антигерои мира видео
Если думали, что RTP/RTSP/RTMP/ONVIF — это всё, то держитесь.
HLS — сын Apple, король сегментов
Работает везде.
Стабильно.
С задержкой в 20 секунд.
Зато без нервов.
MPEG-DASH — брат HLS, только из семейства стандартов
Любим корпорациями.
Терпим пользователями.
Ненавидим стримерами из-за задержки.
WebRTC — магия и боль одновременно
Минимальная задержка.
Ультрашифрование.
ICE, STUN, TURN — звучит как заклинание.
Работает, но требует жертв (обычно нервных).
SRT и RIST — элита видеодоставки для телекома
Оптимизированы под ужасные сети.
Дорогие.
Надёжные.
Железно выживают там, где обычные протоколы бегут плакать.
MPEG-TS over UDP — телевизионная классика
Если завтра наступит конец света,
останутся:
тараканы,
ядерные боеголовки,
и MPEG-TS.
Итог, который не хочется признавать, но придётся
Мир видео — это не стройная архитектура.
Это зоопарк, в котором:
RTP таскает мешки
RTSP командует
RTMP старается доказать, что он ещё на что-то годится
ONVIF заставляет всех играть по правилам
HLS и DASH вещают толпам
WebRTC бегает с минимальной задержкой
SRT спасает важные потоки
MPEG-TS живёт в своём болотце и не собирается уходить
Это не красиво.
Не логично.
Не оптимально.
Но это работает.
Иногда даже удивительно хорошо.
И пока инженеры мечтают придумать «идеальный единый протокол», индустрия продолжает пользоваться тем, что есть. Потому что главное в потоковом видео — картинка должна дойти.
А уж каким протоколом — это уже вопрос философский.