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

Adobe HTTP Dynamic Streaming

Adobe HTTP Dynamic Streaming (HDS) — это проприетарная технология адаптивной потоковой передачи видео и аудио по протоколу HTTP, разработанная компанией Adobe Systems. HDS предназначена для доставки мультимедийного контента в реальном времени и по запросу через обычные веб-серверы, без необходимости использования специализированных потоковых серверов. Технология основана на разбиении медиафайлов на небольшие фрагменты (сегменты) и предоставлении клиенту возможности динамически переключаться между потоками разного битрейта в зависимости от пропускной способности сети и производительности устройства. HDS является частью экосистемы Adobe Flash Platform и тесно связана с протоколом RTMP (Real-Time Messaging Protocol) и форматом контейнера FLV/F4V.

История

Технология HDS была анонсирована компанией Adobe в 2010 году как ответ на рост популярности потокового видео в интернете и необходимость решения проблем, связанных с использованием RTMP. Основным недостатком RTMP была его зависимость от постоянного TCP-соединения и специализированных серверов (например, Adobe Flash Media Server), что делало его сложным для масштабирования и дорогим в обслуживании. HDS, напротив, позволяла использовать стандартные HTTP-серверы (например, Apache, Nginx, Microsoft IIS) и сети доставки контента (CDN), что значительно упрощало инфраструктуру и снижало затраты.

Первоначально HDS была реализована в Adobe Flash Player 10.1 и Adobe AIR 2.5. Технология была представлена как открытая спецификация, но на практике оставалась проприетарной, так как её реализация требовала лицензирования у Adobe. В 2011 году Adobe выпустила серверную часть HDS в составе Adobe Flash Media Server 4.5, а также предоставила инструменты для создания HDS-манифестов (файлы .f4m) и сегментирования контента.

В 2012—2013 годах HDS активно использовалась крупными медиаплатформами, такими как Hulu, BBC iPlayer и некоторые другие, однако уже к середине 2010-х годов её популярность начала снижаться. Основной причиной стало распространение открытого стандарта MPEG-DASH (Dynamic Adaptive Streaming over HTTP), который был принят в 2012 году и не требовал лицензирования. Кроме того, в 2015 году Adobe объявила о прекращении поддержки Flash Player к концу 2020 года, что фактически означало конец развития HDS как технологии. В 2017 году Adobe официально прекратила поддержку Flash Media Server, а в 2020 году Flash Player был окончательно отключён.

Принцип работы

HDS работает по принципу «адаптивного битрейта» (ABR — Adaptive Bitrate). Основные этапы работы технологии:

  1. Кодирование и сегментация: Исходный медиафайл (видео или аудио) кодируется в несколько потоков с разным битрейтом (например, 300 кбит/с, 800 кбит/с, 1500 кбит/с, 3000 кбит/с). Каждый поток разбивается на небольшие фрагменты (сегменты) одинаковой длительности (обычно 2–10 секунд). Сегменты упаковываются в контейнер F4V (формат на основе ISO Base Media File Format, аналогичный MP4) или FLV.
  1. Создание манифеста: Для каждого потока создаётся файл манифеста (расширение .f4m), который содержит метаданные: список доступных битрейтов, URL-адреса сегментов, длительность фрагментов, информацию о кодеках и разрешении. Манифест также может включать данные о ключах шифрования для DRM (Digital Rights Management).
  1. Доставка по HTTP: Клиент (Flash Player или AIR-приложение) загружает манифест с веб-сервера. Затем, на основе текущей пропускной способности сети и загрузки процессора, клиент выбирает наиболее подходящий битрейт и начинает последовательно загружать сегменты этого потока. Если условия сети ухудшаются, клиент автоматически переключается на более низкий битрейт, и наоборот.
  1. Переключение между потоками: Переключение происходит на границах сегментов, что позволяет избежать разрывов воспроизведения. Для обеспечения синхронизации все потоки имеют одинаковую временную шкалу.

Классификация

HDS можно классифицировать по нескольким признакам:

По типу контента

  • Видео по запросу (VOD): Предварительно записанные видеофайлы, доступные для просмотра в любое время.
  • Прямые трансляции (Live): Потоковое вещание в реальном времени, где сегменты создаются «на лету» и публикуются на сервере.

По способу доставки

  • HTTP-доставка: Использует стандартные HTTP-запросы (GET) для загрузки сегментов. Поддерживает кэширование на CDN и прокси-серверах.
  • HTTPS-доставка: Зашифрованная версия для повышения безопасности.

По поддержке DRM

  • Без защиты: Открытый контент.
  • С защитой: Использует Adobe Access (ранее Flash Access) для шифрования и управления правами.

Устройство и характеристики

Форматы файлов

  • Манифест (.f4m): XML-файл, описывающий структуру потока. Содержит теги <media> (указывает на поток), <bootstrapInfo> (информация о начальной загрузке), <segments> (список сегментов).
  • Сегменты (.f4f, .f4v): Фрагменты медиаданных. Файлы .f4f содержат собственно аудио- и видеоданные, а .f4v — метаданные и индексы.
  • Индексный файл (.f4x): Дополнительный файл для ускорения поиска в VOD-потоках.

Кодеки

HDS поддерживает следующие кодеки:

  • Видео: H.264 (AVC), VP6 (устаревший), Sorenson Spark (устаревший).
  • Аудио: AAC, MP3, Nellymoser (устаревший).

Параметры адаптации

  • Битрейт: от 100 кбит/с до 10 Мбит/с и выше.
  • Разрешение: от 320×240 до 1920×1080 (Full HD) и выше.
  • Частота кадров: 24, 25, 30, 50, 60 кадров/с.

Применение

HDS использовалась в следующих областях:

  • Веб-видеоплееры: Встраивалась в Flash-плееры на сайтах новостных агентств, телеканалов и видеохостингов.
  • Прямые трансляции: Спортивные события, концерты, новостные эфиры.
  • Образовательные платформы: Дистанционное обучение, вебинары.
  • Корпоративные системы: Внутренние видеотрансляции, архивы записей.

В России HDS применялась, например, на сайтах телеканалов «Первый канал» и «Россия-1» для трансляции новостей и спортивных мероприятий, а также в системах видеонаблюдения.

Преимущества и недостатки

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

  • Простота инфраструктуры: Использование стандартных HTTP-серверов и CDN.
  • Адаптивность: Автоматическое переключение битрейта в зависимости от качества сети.
  • Поддержка DRM: Встроенная защита контента через Adobe Access.
  • Низкая задержка: В прямых трансляциях задержка составляла 2–5 секунд (при использовании специальных настроек).

Недостатки

  • Проприетарность: Зависимость от лицензирования и экосистемы Adobe.
  • Ограниченная поддержка: Только в Flash Player и AIR, что исключало использование на iOS и Android без сторонних решений.
  • Устаревание: С прекращением поддержки Flash Player технология стала неработоспособной.
  • Отсутствие открытых реализаций: В отличие от MPEG-DASH, не было открытых библиотек для серверной и клиентской частей.

Сравнение с другими технологиями

ТехнологияПротоколФормат контейнераПоддержка DRMОткрытостьСтатус
HDSHTTPF4V, FLVAdobe AccessПроприетарнаяУстарела
HLS (Apple)HTTPMPEG-TS, fMP4FairPlay, AES-128Открытая (де-факто)Активна
MPEG-DASHHTTPMP4, MPEG-TSCommon Encryption (CENC)Открытый стандартАктивна
RTMPTCPFLV, F4VAdobe AccessПроприетарнаяУстарела

Интересные факты

  • HDS была одной из первых технологий, реализовавших адаптивный стриминг по HTTP, опередив HLS (Apple) на несколько месяцев.
  • Файлы манифеста .f4m могли быть сжаты с помощью GZip для ускорения загрузки.
  • В 2013 году Adobe выпустила библиотеку для конвертации HDS в HLS, что позволяло использовать Flash-плееры для трансляции на iOS-устройства.
  • Технология поддерживала «живую» рекламную вставку (ad-insertion) без прерывания основного потока.

Источники

  • Adobe Systems Incorporated. Adobe HTTP Dynamic Streaming Specification. — 2010.
  • Adobe Flash Media Server 4.5 Developer Guide. — Adobe, 2011.
  • Ozer J. Adaptive Streaming: HDS, HLS, and MPEG-DASH // Streaming Media Magazine. — 2012.
  • Tanenbaum A. S., Wetherall D. J. Computer Networks. — 5th ed. — Pearson, 2011. — Глава 7 (Multimedia Networking).
  • Документация Adobe Flash Player 10.1. — Adobe, 2010.
  • Статья «HTTP Dynamic Streaming» на сайте Adobe Developer Connection (архив, 2015).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →