Adobe HTTP Dynamic Streaming (HDS) CDN
Основные понятия HDS
Adobe HTTP Dynamic Streaming (HDS) - это реализация технологии адаптивного потокового вещания от компании Adobe.
Исторически компания Adobe является лидером на рынке решений в области доставки и воспроизведения мультимедиа контента в сети Интернет в первую очередь благодаря технологии Adobe Flash. Являясь на сегодняшний момент устаревшей, последняя в свое время дала мощный толчок развитию сети Интернет в направлении повсеместного использования мультимедиа.
Одним из важнейших преимуществ является поддержка большинства "Умных телевизоров" (SMART TV) и мультимедийных приставок.
Для работы HDS требуются следующие компоненты:
- url для получения сегментов;
- f4m-манифест файл, содержащий описание видео и url для получения сегментов;
- индексный f4m файл, содержащий ссылки на f4m-манифесты нескольких вариантов детализации видео (различающиеся качеством изображения, битрейтом).
Использование HDS CDN
Для организации HDS трансляции отдельного файла без переключения между вариантами видео, достаточно передать плееру ссылку с HDS-маркером:
USERNAME.cdn.zerocdn.com/ file.mp4 :hds:manifest.f4m
При этом URL фрагмента будет следующим:
USERNAME.cdn.zerocdn.com/ file.mp4 :hds:N
где N - идентификатор фрагмента.
USERNAME.cdn.zerocdn.com/ file.mp4 :hds:frag-v1-a1-Seg1-Frag1
Для организации HDS трансляции с возможностью переключения детализации необходимо создать в соотвествующей папке индексный f4m-файл, следующего содержания:
<manifest xmlns="http://ns.adobe.com/f4m/3.0"> <media href="240.mp4:hds:manifest.f4m" height="240" /> <media href="360.mp4:hds:manifest.f4m" height="360" /> <media href="480.mp4:hds:manifest.f4m" height="480" /> <media href="720.mp4:hds:manifest.f4m" height="720" /> </manifest>
Где 240.mp4, 360.mp4, 480.mp4, 720.mp4 и 1080.mp4 - разные варианты детализации расположенные в этой папке, а тэг media описание характеристик этих файлов, a http://USERNAME.cdn.zerocdn.com/path/to/ - место расположения видео файлов.
Подписывание HDS ссылок
Для организации эффективной работы механизма защиты HDS ссылок, необходимо расположить файлы таким образом, что бы разные варианты одного видео, находились в одной папке.
- video1/
- 240.mp4
- 360.mp4
- 480.mp4
- 720.mp4
- 1080.mp4
- hds.f4m
- video2/
- 240.mp4
- 360.mp4
- 480.mp4
- 720.mp4
- 1080.mp4
- hds.f4m
В таком случае появляется возможность подписи общей части URL для всех файлов внутри указанной папки. А Подписанный URL HDS будет выглядеть следующим образом:
http://USERNAME.cdn.zerocdn.com/path/to/video1/[sign]:[deadline]/hds.f4m
При этом для генерации подписи будут использоваться следующие исходные данные:
md5(/path/to/-[ip]-[deadline]-[secret])
Технические требования HDS
ZeroCDN.com обеспечивает поддержку HDS стриминга для файлов с учетом следующих требований:
- mp4-контейнер,
- видео-кодек h264,
- аудио-кодек AAC,
- поддержка faststart.