Microsoft Azure Media Services — обзор основных возможностей платформы

Habrahabr

Прежде, чем попасть на сайт или проигрыватель смартфона, потоковое видео и онлайн-трансляции проходят несколько важных этапов обработки. Они нужны для того, чтобы картинка отображалась корректно и работала на максимальном количестве устройств и платформ. Эта обработка происходит при помощи специальных сервисов.

Azure Media Services — это сервисы технологии платформы Microsoft Media Platform, которые доступны из облака в формате SaaS (Software as Service) и PaaS (Platform as Service). Среди преимуществ работы с ними — возможность масштабирования, а также использования их совместно с собственными средствами кодирования, вещания и распространения контента. Также платформа позволяет загружать контент, проводить его перекодирование и конвертацию, организовывать прямые трансляции, вещание по расписанию и просто встраивать видео на сайты. Также пользователям доступна защита контента, работа с рекламой и аналитикой.

Эти и многие другие полезные функции сделали Azure Media Services очень популярной платформой. Например, с ее помощью велась трансляция соревнований Олимпийских игр 2016 года в Рио-де-Жанейро, сервисами Azure Media пользуется один из самых титулованных футбольных клубов мира Реал (Мадрид).

Интерфейс

Работа со всеми функциями Azure Media Services происходит во вкладке браузера. Нужно просто залогиниться в свою учетную запись и запустить службу. Интерфейс довольно простой — слева панель меню, сверху адресная панель и панель уведомлений и настроек, посредине — рабочее пространство. На скриншоте внизу, например, вы видите процесс перекодирования и обработки видео.

Работа с мультимедиа

Перед тем, как видео появляется на том или ином сайте, оно проходит несколько этапов подготовки. Начинается все с загрузки исходного видео на сервер, его обработки, конвертации, и т. д. Для этих и многих других действий в Azure Media Services есть специальные инструменты REST API, .NET и Java SDK. Также присутствует ряд клиентских инструментов, разработанные специалистами Microsoft. С помощью этого обширного инструментария можно настроить и контролировать каждый аспект подготовки и воспроизведения видео, например, перемотку или добавление рекламы. Расскажем вкратце о всех этих этапах по порядку.

Загрузка

Отправлять файлы в облако Azure для дальнейшей обработки можно через веб-интерфейс. Для этого нужно просто выбрать пункт Ресурсы, а затем нажать кнопку Отправить. Затем нужно выбрать файлы с компьютера (для загрузки доступны видео, аудио, изображения, коллекции эскизов, текстовые каналы, файлы скрытых субтитров и метаданные этих файлов) и отправить их в облако. При этом размер файлов не ограничен, а хранится они будут в безопасной облачной среде, доступные для последующих изменений и потоковой передачи.

Ресурсы также могут быть отправлены в облако при помощи инструментов .NET и REST. В этом случае данные могут быть сразу зашифрованы, также будут доступны некоторые другие возможности. Подробности и примеры вы можете найти на сайте Microsoft.

При необходимости отправки множества больших файлов также можно воспользоваться функцией массовой загрузки из библиотеки .NET. Альтернатива —сторонние инструменты, например, Aspera, — программное обеспечение для высокоскоростной передачи файлов. Это средство должно быть куплено отдельно в Azure Marketplace. После регистрации продукта, установки модуля для браузера и клиента, а также настройки инструмента вы сможете без проблем отправлять большие объемы файлов в облако. Подробнее об Aspera читайте здесь.

Также отправлять файлы в учетную запись можно с помощью Azure StorSimple — решения интегрированного хранилища, которое управляет его задачами на локальных устройствах и в облаке Azure. В Azure StorSimple облачное хранилище используется в качестве расширения локального решения и автоматически связывает их данные. Перед отправкой файлов в облако StorSimple дублирует и сжимает их, таким образом обеспечивается эффективная передача данных большого объема. Подробнее о работе с Azure StorSimple вы узнаете здесь.

Кодировка

У Windows Azure Media Services есть инструменты для перекодировки файлов в разнообразные мультимедийные форматы. Система поддерживает FLV, MXF, GXF, MPEG2, 3GP, Windows Media Video, Microsoft Digital Video Recording, AVI, MP4, Matroska/WebM, WAVE/WAV и QuickTime (все поддерживаемые видео- и аудиокодеки смотрите по ссылке).

Одним из главных преимуществ платформы Azure Media Services перед конкурентами является то, что она использует динамичную упаковку контента. Каждый файл в облаке хранится в одном варианте и перекодируется уже непосредственно перед доставкой на конечное устройство, вместо того, чтобы хранить по экземпляру файла для каждой платформы (например, для Android, iOS, и XboX). Это позволяет существенно экономить место в облаке и, как следствие, средства.

Скорость обработки мультимедиа можно регулировать вручную. Таким задачам присваиваются значения — S1, S2 и S3. Например, если использовать тип зарезервированной единицы S2, задание по кодированию выполняется быстрее по сравнению заданием, для которого выбран тип S1. В разных типах учетных записей количество параллельных задач обработки варьируется. Например, если в учетной записи имеется пять зарезервированных единиц, то можно запустить пять одновременно выполняемых задач. Остальные задания, если они были поставлены, будут дожидаться своей очереди и как только один из потоков будет обработан, задание из очереди станет выполняться автоматически. Более подробную информацию о кодировании вы найдете на сайте Microsoft.

Проигрыватель

Еще одна отличительная особенность Azure Media Services — это универсальность фирменного проигрывателя. Сервис поддерживает практически все современные устройства и платформы — Mac и ПК, iOS и Android, HTML5, Flash, Silverlight, XboX и т. д. Для работы с разнообразными встраиваемыми устройствами, которые имеют собственный фреймворк разработки, можно лицензировать пакеты для портирования Smooth Streaming Client Porting Kit и Microsoft PlayReady Device Porting Kit. Примеры таких устройств — медиаплееры, Smart TV и т. д.

Проигрыватель в своей работе также использует отраслевые стандарты Media Source Extensions (MSE) и Encrypted Media Extensions (EME), которые лучше всего подходят для адаптивной потоковой передачи. Если же они недоступны на устройстве или в браузере, проигрыватель переходит на Flash и Silverlight. Эти опции задаются в расширенных настройках проигрывателя путем выбора соответствующих пунктов из выпадающего списка. Причем для трансляции можно задать как описанную выше возможность автовыбора, так и использование конкретной технологии.

Службы мультимедиа Microsoft Azure поддерживают форматы потоковой передачи DASH, Smooth Streaming и HLS для воспроизведения содержимого. Azure Media Player учитывает эти различные форматы и автоматически воспроизводит наиболее подходящую ссылку в зависимости от возможностей платформы или браузера. Но можно также задать работу с конкретным форматом. Какую-бы технологию и платформу не выбрал бы разработчик, он получает единый интерфейс JavaScript для доступа к интерфейсам API. Все это позволяет проигрывателю Azure обслуживать содержимое для воспроизведения на самом широком спектре устройств и в различных браузерах. Говоря проще, не стоит волноваться, что видео не будет работать или отображаться некорректно на каком-то типе устройств.

Если транслятор хочет зашифровать свои ресурсы от несанкционированного доступа, сделать это можно при помощи технологий PlayReady, Widevine или 128-битного алгоритма шифрования AES. Все что для этого нужно сделать — это поставить галочку напротив соответствующего пункта в настройках плеера и указать необходимый маркер. Больше вы можете узнать на сайте Microsoft.

Схема кодирования 128-битным алгоритмом шифрования AES и другими средствами Azure Media Services

Для применения всех выбранных опций, значений и параметров выставлены нажать кнопку Update Player. Затем можно получить код ролика со всеми заданными параметрами для вставки на ресурсы.

Фирменные коннекторы

В службе Azure Media Services доступны удобный и простой в использовании коннектор для интеграции со сторонними сервисами. Он доступен для таких сервисов и платформ, как Dropbox, Facebook, Twitter и другие. Коннектор позволяет клиентам подготавливать и размещать видео и мультимедийные материалы в своих приложениях и сервисах не беспокоясь о сложностях, связанных с подготовкой и размещением видео на разнообразных устройствах. Вот несколько примеров того, где он может использоваться:

Приложения, в которых видео является ключевым элементом. Это, например, могут быть обучающие приложения. — Вертикальные решения для предприятий, базирующиеся вокруг видео. Как пример — система управления обучением или сервисы типа Enterprise Tube. — Веб-сайты с видео. Для тех, кто хочет сделать маркетинговый веб-сайт с разнообразными видеоматериалами. — Решения с прямыми трансляциями. Это могут быть приложения для совещаний, проведения опросов, вебинаров — везде, где клиент хочет получить широкий охват аудитории.

Выводы

Платформа Azure Media Services это простая и удобная облачная служба для обработки и доставки на устройства видео и других мультимедиа данных. Она позволяет в несколько кликов подготовить видео к публикации на разных устройствах, при этом можно быть уверенным, что на любом девайсе под разные операционные системы это видео будет проигрываться корректно.