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

ISO/IEC 23009-1

ISO/IEC 23009-1 — это международный стандарт, определяющий формат и протокол динамической адаптивной потоковой передачи данных через HTTP (Dynamic Adaptive Streaming over HTTP, DASH). Стандарт разработан объединённым техническим комитетом Международной организации по стандартизации (ISO) и Международной электротехнической комиссии (IEC). Он регламентирует структуру файла описания медиа-презентации (Media Presentation Description, MPD) и механизмы, позволяющие клиентскому устройству выбирать и переключаться между различными версиями одного и того же медиаконтента (например, разного битрейта или разрешения) в зависимости от текущих условий сети и возможностей устройства. ISO/IEC 23009-1 является первой частью семейства стандартов ISO/IEC 23009 (MPEG-DASH) и служит основой для многих современных сервисов потокового видео, включая YouTube, Netflix и онлайн-кинотеатры.

История

Разработка стандарта началась в 2009 году в рамках группы Moving Picture Experts Group (MPEG) при ISO/IEC. Ключевой целью было создание универсального формата для адаптивной потоковой передачи, который не зависел бы от проприетарных решений (таких как Adobe Flash, Microsoft Smooth Streaming или Apple HLS). Первая версия стандарта, ISO/IEC 23009-1:2012, была опубликована в 2012 году. В 2014 году вышла вторая редакция (ISO/IEC 23009-1:2014), добавившая поддержку субтитров, рекламных вставок и улучшенное управление буферизацией. Третья редакция (ISO/IEC 23009-1:2019) расширила функциональность для работы с событиями, пространственным звуком и многопоточным видео (например, для виртуальной реальности). Последняя на 2024 год редакция — ISO/IEC 23009-1:2022 — включает поддержку низкозадержного вещания (Low-Latency DASH) и улучшенную интеграцию с защитой контента (DRM).

Архитектура и принцип работы

Компоненты системы

Система DASH состоит из трёх основных компонентов:

  • Сервер HTTP: хранит медиаконтент, разделённый на сегменты (файлы), и файл MPD. Не требует специализированного потокового сервера — используется обычный веб-сервер (например, Apache, Nginx) или CDN.
  • Файл MPD (Media Presentation Description): XML-документ (или JSON-альтернатива), описывающий структуру контента: периоды, адаптационные наборы, представления, сегменты и их URL-адреса.
  • Клиент DASH: приложение (браузер, плеер, приставка), которое загружает MPD, анализирует его и запрашивает сегменты через HTTP GET-запросы, адаптируя качество в реальном времени.

Структура MPD

Файл MPD организует контент иерархически:

  1. Период (Period): временной отрезок медиа-презентации (например, одна рекламная вставка или глава фильма). Периоды могут следовать последовательно или перекрываться.
  2. Адаптационный набор (AdaptationSet): группа взаимозаменяемых представлений одного типа (например, все видеодорожки или все аудиодорожки). Внутри одного набора может быть несколько представлений с разными кодеками или языками.
  3. Представление (Representation): конкретная версия контента с определёнными характеристиками (битрейт, разрешение, кодек). Клиент выбирает одно представление из каждого адаптационного набора.
  4. Сегмент (Segment): минимальная единица данных, доступная для загрузки. Сегменты могут быть фиксированной длительности (например, 2 секунды) или переменной. Существуют начальные сегменты (Initialization Segment) для инициализации декодера и медиа-сегменты (Media Segment) с аудио/видео.

Адаптация битрейта

Клиент DASH реализует алгоритм адаптации (ABR — Adaptive Bitrate), который оценивает пропускную способность сети и буфер плеера. Если скорость сети падает, клиент переключается на представление с более низким битрейтом (и, как правило, меньшим разрешением), чтобы избежать буферизации. При улучшении сети — переключается на более высокое качество. Это происходит без прерывания воспроизведения, так как переключение выполняется на границе сегментов.

Классификация и профили

ISO/IEC 23009-1 определяет несколько профилей (profiles), которые задают обязательные и опциональные функции для совместимости устройств:

  • Simple Profile: минимальный набор функций для базовых плееров; поддерживает только один период и один адаптационный набор.
  • Live Profile: предназначен для прямых трансляций; включает поддержку динамического обновления MPD и сегментов с временными метками.
  • Main Profile: наиболее распространённый профиль; поддерживает несколько периодов, адаптационных наборов, представлений и сложные схемы сегментации.
  • Full Profile: включает все возможности стандарта, включая пространственный звук, многопоточное видео и расширенную защиту контента.

Применение

Потоковое видео в интернете

ISO/IEC 23009-1 является основой для сервисов по запросу (VoD) и прямых трансляций. Крупнейшие платформы, такие как YouTube, Netflix, Amazon Prime Video, используют DASH для доставки видео на веб-плееры (через HTML5 Video) и мобильные приложения. В России стандарт применяется в сервисах «Кинопоиск», «Иви», «Okko» и других.

Цифровое телевидение

Стандарт используется в системах гибридного телевидения (HbbTV) и в проекте DVB-DASH (Digital Video Broadcasting), где он служит альтернативой традиционным транспортным потокам MPEG-TS. В России DASH применяется в некоторых реализациях цифрового телевидения второго поколения (DVB-T2) для доставки контента через интернет.

Образование и корпоративные системы

Платформы для онлайн-обучения (например, Coursera, Stepik) и корпоративные системы видеоконференций (например, Zoom в режиме записи) используют DASH для обеспечения адаптивной доставки записей лекций и вебинаров.

Сравнение с другими протоколами

ХарактеристикаISO/IEC 23009-1 (MPEG-DASH)Apple HLSMicrosoft Smooth StreamingAdobe Flash
СтандартизацияМеждународный стандарт ISO/IECПроприетарный (Apple)Проприетарный (Microsoft)Проприетарный (Adobe)
Формат манифестаXML (MPD)M3U8 (текстовый)XML (ISM)XML (F4M)
Поддержка кодековЛюбые (H.264, H.265, VP9, AV1)H.264, H.265 (ограниченно)H.264, VC-1H.264, VP6
Низкая задержкаДа (Low-Latency DASH)Да (LL-HLS)ОграниченноНет
РаспространённостьШирокая (веб, мобильные, ТВ)Широкая (iOS, Safari)УстаревшаяУстаревшая

Критика и ограничения

Несмотря на широкое распространение, стандарт имеет ряд недостатков:

  • Сложность реализации: создание корректного MPD и клиента, поддерживающего все профили, требует значительных усилий. Некоторые реализации (например, в браузерах) поддерживают только подмножество функций.
  • Зависимость от HTTP/HTTPS: при плохой сети (высокие потери пакетов, задержки) DASH может работать менее эффективно, чем протоколы на базе UDP (например, WebRTC).
  • Фрагментация: разные версии стандарта и профили могут приводить к несовместимости между устройствами разных производителей.
  • Отсутствие встроенной защиты: DASH не включает механизмы DRM; защита контента реализуется через отдельные системы (например, Widevine, PlayReady), что усложняет интеграцию.

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

  • Первая версия стандарта (2012) была разработана на основе предложений от компаний Microsoft, Apple, Adobe и других, но в итоге стала открытым стандартом.
  • DASH поддерживает «живую» трансляцию с задержкой менее 1 секунды при использовании Low-Latency DASH (LL-DASH), что сравнимо с традиционным телевидением.
  • В 2020 году MPEG объявила о прекращении разработки новых версий DASH в пользу более современных подходов, таких как CMAF (Common Media Application Format), который, однако, базируется на принципах ISO/IEC 23009-1.

Источники

  • ISO/IEC 23009-1:2022 — Information technology — Dynamic adaptive streaming over HTTP (DASH) — Part 1: Media presentation description and segment formats.
  • Moving Picture Experts Group (MPEG) — MPEG-DASH Overview.
  • DASH Industry Forum — DASH-IF Implementation Guidelines.
  • Статья «MPEG-DASH: The Standard for Dynamic Adaptive Streaming» (IEEE Transactions on Broadcasting, 2014).
  • Документация по HbbTV и DVB-DASH (ETSI TS 103 286).

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

На главную BFOmetr →