Адаптивная потоковая передача

редактировать

Обзор адаптивной потоковой передачи Адаптивная потоковая передача в действии

Адаптивная потоковая передача - это метод, используемый в потоковая передача мультимедиа по компьютерным сетям. В то время как в прошлом в большинстве технологий потоковой передачи видео или аудио использовались такие протоколы потоковой передачи, как RTP с RTSP, современные технологии адаптивной потоковой передачи почти полностью основаны на HTTP и предназначены для эффективно работать в больших распределенных сетях HTTP, таких как Интернет. Он работает, определяя полосу пропускания пользователя и мощность ЦП в реальном времени и соответствующим образом регулируя качество медиапотока. Это требует использования кодировщика , который может кодировать один исходный носитель (видео или аудио) с несколькими битовыми скоростями. Клиент плеера переключается между потоковой передачей различных кодировок в зависимости от доступных ресурсов. «Результат: очень небольшая буферизация, быстрое время начала и хорошее качество как для высокопроизводительных, так и для низкоуровневых соединений».

Более конкретно, потоковая передача с адаптивной скоростью передачи данных - это метод передачи видео потоковая передача по HTTP, где исходный контент кодируется с несколькими скоростями передачи. Каждый из потоков с разной скоростью передачи данных сегментируется на небольшие многосекундные части. Размер сегмента может варьироваться в зависимости от конкретной реализации, но обычно составляет от двух (2) до десяти (10) секунд. Сначала клиент загружает файл манифеста, в котором описаны доступные сегменты потока и их соответствующие скорости передачи данных. Во время запуска потока клиент обычно запрашивает сегменты из потока с самой низкой скоростью передачи данных. Если клиент обнаруживает, что пропускная способность сети превышает скорость передачи загруженного сегмента, он запрашивает сегмент с более высокой скоростью передачи данных. Позже, если клиент обнаружит, что пропускная способность сети ухудшилась, он запросит сегмент с более низкой скоростью передачи данных. Алгоритм адаптивного битрейта (ABR) в клиенте выполняет ключевую функцию, решая, какие сегменты битрейта загружать, на основе текущего состояния сети. Несколько типов алгоритмов ABR используются в коммерческих целях: алгоритмы на основе пропускной способности используют пропускную способность, достигнутую в недавних предыдущих загрузках для принятия решений (например, правило пропускной способности в dash.js ), алгоритмы на основе буфера используют только текущий уровень буфера клиента (например, BOLA в dash.js ) и гибридные алгоритмы объединяют оба типа информации (например, DYNAMIC в dash.js ).

.

Содержание

  • 1 Текущее использование
  • 2 Преимущества потоковой передачи с адаптивным битрейтом
  • 3 История
  • 4 Реализации
    • 4.1 MPEG-DASH
    • 4.2 Adobe HTTP Dynamic Streaming
    • 4.3 Apple HTTP Прямая трансляция
    • 4.4 Microsoft Smooth Streaming
    • 4.5 QuavStreams Адаптивная потоковая передача по HTTP
    • 4.6 upLynk
    • 4.7 Самообучающиеся клиенты
  • 5 Критика
  • 6 См. Также
  • 7 Ссылки
  • 8 Дополнительная литература

Current использует

Post-production дома, сети доставки контента и студии используют технологию адаптивной скорости передачи данных, чтобы предоставить потребителям видео более высокого качества с меньшими трудозатратами и меньшими ресурсами. Создание нескольких видеовыходов, особенно для потоковой передачи с адаптивной скоростью передачи данных, имеет большое значение для потребителей. Если технология работает должным образом, контент конечного пользователя или потребителя должен воспроизводиться без перерывов и потенциально оставаться незамеченным. Медиа-компании уже много лет активно используют технологию адаптивной скорости передачи данных, и это, по сути, стало стандартной практикой для поставщиков потокового вещания высокого класса; разрешая небольшую буферизацию при потоковой передаче каналов с высоким разрешением (начинается с низкого разрешения и увеличивается).

Преимущества потоковой передачи с адаптивной скоростью передачи данных

Традиционная потоковая передача с адаптивной скоростью передачи данных, управляемая сервером, обеспечивает потребителям потокового мультимедиа наилучшие возможности, поскольку сервер мультимедиа автоматически адаптируется к любым изменениям в сети каждого пользователя и условия воспроизведения. Индустрия медиа и развлечений также выигрывает от потоковой передачи с адаптивным битрейтом. По мере роста видеопространства сети доставки контента и поставщики видео могут предоставлять клиентам превосходные впечатления от просмотра. Технология адаптивного битрейта требует дополнительного кодирования , но упрощает общий рабочий процесс и дает лучшие результаты.

Технологии потоковой передачи с адаптивной скоростью передачи данных на основе HTTP дают дополнительные преимущества по сравнению с традиционной потоковой передачей с адаптивной скоростью передачи данных, управляемой сервером. Во-первых, поскольку технология потоковой передачи построена на основе HTTP, в отличие от адаптивной потоковой передачи на основе RTP, пакеты не имеют проблем при прохождении межсетевого экрана и устройств NAT. Во-вторых, поскольку поток HTTP управляется исключительно клиентом, вся логика адаптации находится на клиенте. Это снижает потребность в постоянных соединениях между сервером и клиентским приложением. Кроме того, серверу не требуется поддерживать информацию о состоянии сеанса на каждом клиенте, что увеличивает масштабируемость. Наконец, можно легко адаптировать существующую инфраструктуру доставки HTTP, такую ​​как кеши HTTP и серверы.

Масштабируемая CDN используется для доставки потокового мультимедиа интернет-аудитории. CDN получает поток от источника на своем исходном сервере, затем реплицирует его на многие или все свои пограничные кэш-серверы. Конечный пользователь запрашивает поток и перенаправляется на «ближайший» пограничный сервер. Это можно проверить с помощью libdash и набора данных Distributed DASH (D-DASH), который имеет несколько зеркал в Европе, Азии и США. Использование адаптивной потоковой передачи на основе HTTP позволяет пограничному серверу запускать простое программное обеспечение HTTP-сервера, стоимость лицензии которого дешевая или бесплатная, что снижает стоимость лицензирования программного обеспечения по сравнению с дорогостоящими лицензиями на медиа-сервер (например, Adobe Flash Media Streaming Server). Стоимость CDN для потокового мультимедиа HTTP в этом случае аналогична стоимости CDN веб-кэширования HTTP.

История

Адаптивная скорость передачи данных по HTTP была создана DVD Forum в специальной потоковой группе WG1 в октябре 2002 года. Сопредседателями группы были Toshiba и Phoenix Technologies, экспертная группа рассчитывает при сотрудничестве Microsoft, Apple Computer, DTS Inc., Warner Brothers, 20th Century Fox, Disney, Macromedia и Akamai. Технология изначально называлась DVDoverIP и была неотъемлемой частью книги DVD ENAV. Эта концепция возникла из хранения секторов TS MPEG-1 и MPEG-2 DVD в небольших файлах размером 2 КБ, которые будут обслуживаться проигрывателем с помощью HTTP-сервера. Сегменты MPEG-1 обеспечивали поток с меньшей полосой пропускания, тогда как MPEG-2 обеспечивали поток с более высокой скоростью передачи данных. Исходная схема XML предоставляла простой список воспроизведения с битрейтами, языками и серверами URL. Первый рабочий прототип был представлен на DVD Forum компанией Phoenix Technologies в Harman Kardon Lab в Виллингене, Германия.

Реализации

Адаптивная потоковая передача данных была представлена ​​Move Networks и в настоящее время разрабатывается и используется Adobe Systems, Apple, Microsoft и. В октябре 2010 г. компания Move Networks получила патент на свою потоковую передачу с адаптивной скоростью передачи данных (номер патента США 7818444).

MPEG-DASH

MPEG-DASH является единственным протоколом HTTP с адаптивной скоростью передачи данных. потоковое решение на основе международного стандарта MPEG-DASH было разработано в рамках MPEG. Работа над DASH началась в 2010 году; он стал проектом международного стандарта в январе 2011 г. и международным стандартом в ноябре 2011 г. Стандарт MPEG-DASH был опубликован как ISO / IEC 23009-1: 2012 в апреле 2012 г.

MPEG-DASH - это технология, относящаяся к Adobe Systems HTTP Dynamic Streaming, Apple Inc. HTTP Live Streaming (HLS) и Microsoft Smooth Streaming. DASH основан на адаптивной потоковой передаче HTTP (AHS) в 3GPP версии 9 и на адаптивной потоковой передаче HTTP (HAS) в Open IPTV Forum версии 2. В рамках их сотрудничества с MPEG, 3GPP В версии 10 используется DASH (с определенными кодеками и режимами работы) для использования в беспроводных сетях.

Стандартизация решения для адаптивной потоковой передачи призвана дать рынку уверенность в том, что решение может быть принято для универсального развертывания по сравнению с аналогичные, но более ориентированные на поставщиков решения, такие как HLS от Apple, Smooth Streaming от Microsoft или HDS от Adobe.

Доступные реализации: проигрыватель битдэш-файлов MPEG-DASH на основе HTML5, а также библиотека клиентского доступа DASH на основе C ++ с открытым исходным кодом libdash компании bitmovin GmbH, инструменты DASH Института информации Technology (ITEC) в Университете Альпен-Адрия в Клагенфурте, мультимедийная структура группы GPAC в Telecom ParisTech и проигрыватель dash.js DASH-IF.

Adobe HTTP Dynamic Streaming

" HTTP Динамическая потоковая передача - это процесс эффективной доставки потокового видео пользователям путем динамического переключения между различными потоками разного качества и размера во время воспроизведения. Это обеспечивает пользователям наилучшие возможности просмотра при их пропускной способности и аппаратном обеспечении локального компьютера (CPU ) может поддерживаться. Еще одна важная цель динамической потоковой передачи - сделать этот процесс плавным и незаметным для пользователей, так что если масштабирование вверх или вниз необходимо, качество потока будет плавным и почти незаметное переключение без нарушения работы многократное воспроизведение. "

Последние версии Flash Player и Flash Media Server поддерживают потоковую передачу с адаптивной скоростью передачи данных по традиционному протоколу RTMP, а также HTTP, аналогичный к решениям на основе HTTP от Apple и Microsoft, динамическая потоковая передача HTTP поддерживается в Flash Player 10.1 и более поздних версиях. Потоковая передача на основе HTTP имеет то преимущество, что не требует открытия каких-либо портов брандмауэра за пределами обычных портов, используемых веб-браузерами. Потоковая передача на основе HTTP также позволяет кэшировать видеофрагменты браузерами, прокси-серверами и сетями CDN, резко снижая нагрузку на исходный сервер.

Apple HTTP Live Streaming

HTTP Live Streaming (HLS) - это протокол передачи потокового мультимедиа на основе HTTP, реализованный Apple Inc. как часть QuickTime X и iOS. HLS поддерживает как живое, так и видео по запросу. Он работает, разбивая потоки или видеоресурсы на несколько небольших файлов MPEG2-TS (фрагменты видео) с разной скоростью передачи данных и установленной продолжительностью с помощью средства сегментирования потока или файла. Одна такая реализация сегментатора предоставляется Apple. Сегментер также отвечает за создание набора индексных файлов в формате M3U8, который действует как файл списка воспроизведения для фрагментов видео. Каждый список воспроизведения относится к заданному уровню битрейта и содержит относительные или абсолютные URL-адреса фрагментов с соответствующим битрейтом. Затем клиент отвечает за запрос соответствующего списка воспроизведения в зависимости от доступной полосы пропускания.

HTTP Live Streaming - стандартная функция в iPhone 3.0 и более поздних версиях.

Apple представила свое решение в IETF для рассмотрения в качестве информационного запроса Для комментариев. Существует ряд проприетарных решений и решений с открытым исходным кодом как для серверной реализации (segmenter), так и для клиентского проигрывателя.

Потоки HLS можно идентифицировать по расширению формата URL-адреса списка воспроизведения m3u8. Эти адаптивные потоки могут быть доступны с множеством различных битрейтов, и клиентское устройство взаимодействует с сервером, чтобы получить наилучший доступный битрейт, который может быть надежно доставлен. В число клиентских устройств входят iPad, iPhone, телеприставки (STB) и другие подходящие клиентские устройства.

Воспроизведение HLS изначально поддерживается только в Safari на iOS и Mac и Microsoft Edge в Windows 10. Решения для воспроизведения HLS на других платформах в основном полагается на сторонние плагины, такие как Flash или QuickTime.

Microsoft Smooth Streaming

Smooth Streaming - это расширение IIS Media Services, которое обеспечивает адаптивную потоковую передачу мультимедиа клиентам через HTTP. Спецификация формата основана на базовом формате медиафайлов ISO и стандартизирована Microsoft как защищенный интероперабельный формат файлов. Microsoft активно участвует в усилиях организаций 3GPP, MPEG и DECE по стандартизации потоковой передачи HTTP с адаптивной скоростью передачи данных. Microsoft предоставляет комплекты разработки программного обеспечения Smooth Streaming Client для Silverlight и Windows Phone 7, а также комплект Smooth Streaming Porting Kit, который можно использовать для других клиентских операционных систем, таких как Apple iOS, Android и Linux. IIS Media Services 4.0, выпущенный в ноябре 2010 года, представил функцию, которая позволяет динамически переупаковывать видео Live Smooth Streaming H.264 / AAC в формат Apple HTTP Adaptive Streaming и доставлять на устройства iOS без необходимости перекодирования. Корпорация Майкрософт успешно продемонстрировала доставку как реального времени, так и по запросу HD-видео 1080p с Smooth Streaming клиентам Silverlight. В 2010 году Microsoft также в партнерстве с NVIDIA продемонстрировала прямую трансляцию стереоскопического 3D-видео 1080p на ПК, оснащенные технологией NVIDIA 3D Vision.

QuavStreams Adaptive Streaming по HTTP

QuavStreams Adaptive Streaming - это технология потоковой передачи мультимедиа, разработанная Quavlive. Сервер потоковой передачи - это HTTP-сервер, который имеет несколько версий каждого видео, закодированных с разными битрейтами и разрешениями. Сервер доставляет закодированные видео / аудиокадры, переключаясь с одного уровня на другой в соответствии с текущей доступной пропускной способностью. Управление полностью серверное, поэтому клиенту не нужны специальные дополнительные функции. Потоковое управление использует теорию управления с обратной связью. В настоящее время QuavStreams поддерживает кодеки H.264 / MP3, мультиплексированные в контейнер FLV, и кодеки VP8 / Vorbis , мультиплексированные в контейнер WEBM.

upLynk

upLynk обеспечивает адаптивную потоковую передачу HD на несколько платформ, включая: iOS, Android, Windows 8/10 / Mobile, Roku и все комбинации браузеров ПК / Mac / Linux путем кодирования видео в облако с использованием единого непатентованного адаптивного потокового формата. Вместо потоковой передачи и хранения нескольких форматов для разных платформ и устройств, upLynk хранит и передает только один. Первой студией, которая применила эту технологию для доставки, была Disney ABC Television, которая использовала ее для кодирования видео для веб-приложений, мобильных приложений и приложений для потоковой передачи планшетов в приложениях ABC Player, ABC Family и Watch Disney, а также для прямых трансляций Watch Disney Channel, Watch Disney. Junior и Watch Disney XD.

Самообучающиеся клиенты

В последние годы в академических кругах исследовались преимущества самообучающихся алгоритмов при потоковой передаче с адаптивным битрейтом. Хотя большинство первоначальных подходов к самообучению реализованы на стороне сервера (например, выполнение контроля доступа с использованием обучения с подкреплением или искусственных нейронных сетей ), более поздние исследования сосредоточены на разработке самообучающихся клиентов HTTP Adaptive Streaming. В литературе представлено несколько подходов с использованием алгоритма SARSA или Q-Learning. Во всех этих подходах состояние клиента моделируется с использованием, среди прочего, информации о текущей воспринимаемой пропускной способности сети и уровне заполнения буфера. На основе этой информации самообучающийся клиент самостоятельно решает, какой уровень качества выбрать для следующего видеофрагмента. Процесс обучения управляется с использованием информации обратной связи, представляющей Качество взаимодействия (QoE) (например, на основе уровня качества, количества переключений и количества зависаний видео). Кроме того, было показано, что мультиагентное Q-Learning может применяться для улучшения справедливости QoE среди нескольких клиентов адаптивной потоковой передачи.

Критика

Технологии адаптивной скорости передачи данных на основе HTTP значительно сложнее в эксплуатации, чем традиционные технологии потоковой передачи. Среди задокументированных соображений - дополнительные расходы на хранение и кодирование, а также проблемы с поддержанием качества во всем мире. Также была обнаружена некоторая интересная динамика взаимодействия между сложной логикой адаптивной скорости передачи данных, конкурирующей со сложной логикой управления потоком TCP.

Однако на практике эти критические замечания были перевешены экономикой и масштабируемостью доставки HTTP: тогда как Решения потоковой передачи, отличные от HTTP, требуют массового развертывания инфраструктуры специализированных серверов потоковой передачи. Адаптивная потоковая передача на основе HTTP может использовать те же веб-серверы HTTP, которые используются для доставки всего остального контента через Интернет.

Без единого четко определенного или открытого стандарта для управления цифровыми правами, используемого в вышеуказанных методах, не существует 100% совместимого способа доставки ограниченного или чувствительного ко времени контента на любое устройство или игрок. Это также оказывается проблемой при использовании управления цифровыми правами любым протоколом потоковой передачи.

Метод сегментирования файлов на файлы меньшего размера, используемый некоторыми реализациями (как используется HTTP Live Streaming ), может считаться ненужным из-за способности клиентов HTTP запрашивать диапазоны байтов из одного файл видеоресурсов, который может иметь несколько видеодорожек с разной скоростью передачи данных, а в файле манифеста указывается только номер дорожки и скорость передачи данных. Однако этот подход позволяет обслуживать фрагменты любым простым HTTP-сервером и, таким образом, гарантирует совместимость CDN. Реализации, использующие диапазоны байтов, такие как Microsoft Smooth Streaming, требуют выделенного HTTP-сервера, такого как IIS, для ответа на запросы фрагментов видеоресурсов.

См. Также

Кодирование с множественным описанием

Ссылки

Дополнительная литература

Последняя правка сделана 2021-06-10 00:07:13
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте