Сценарий: аренда содержимого
Для содержимого аренды лицензия, доставленная для содержимого, указывает дату и время окончания срока действия. После этого даты и времени содержимое может по-прежнему находиться на устройстве пользователя, и лицензия может также сохраняться в хранилище данных устройства пользователя, но клиент PlayReady на устройстве пользователя будет использовать систему часов устройства, чтобы проверить, действительна ли лицензия, и применить срок действия, установленный службой в лицензии.
Кроме того, рекомендуется задать дату и время начала (как правило, дату и время, которые пользователь заплатил за содержимое). Это поможет защитить систему в некоторых случаях, когда пользователь сможет откатить часы устройства.
Кроме того, служба может предоставить ограничение в лицензии с точки зрения интервала времени, указывающего, когда срок действия лицензии истекает после первой игры. Это позволяет поставщику услуг выдавать лицензию, которая может начинаться в некоторое время в будущем, истекать в указанное время и (или) истекать после указанной длительности после первого воспроизведения содержимого.
Типичным примером может быть следующее:
Пользователь арендует содержимое в пятницу, 5 января 2018 года в 8 вечера.
Лицензия, доставленная пользователю, включает следующие ограничения:
Справа — воспроизведение (право на расшифровку содержимого для отрисовки на экране)
Время начала — 5 января 2018 г. в 17:55 (время начала немного в прошлом учитывает разницу между клиентом и сервером)
Срок действия — 5 февраля 2018 г. в 18:00 (месяц спустя)
Истечение срока действия после первого воспроизведения — 48 часов (2 полных дня после того, как пользователь начал играть)
Так как содержимое аренды обычно требует времени начала и истечения срока действия, клиенту потребуется поддерживать некоторые типы доверенных часов PlayReady. Дополнительные сведения см. в разделе "Доверенные часы".
На следующем рисунке показано взаимодействие между клиентами и серверами в сценарии аренды содержимого.
Сценарий аренды содержимого выполняет следующие действия, как показано на рисунке:
Содержимое, которое будет распространяться для клиентов, защищено с помощью технологии Microsoft PlayReady.
Поставщик услуг передает сведения о защите содержимого на сервер лицензирования.
Поставщик услуг передает защищенное содержимое серверу для распространения по Интернету.
Клиент запрашивает содержимое для потоковой передачи или скачивания.
Клиент получает лицензию и начинает потоковую передачу или скачивание содержимого с сервера содержимого с помощью интернет-протокола, например SSTP, DASH, HLS или HTTP. Пока клиент выполняет потоковую передачу или скачивание содержимого, он может расшифровать содержимое и расшифрованное содержимое можно постоянно воспроизводить.
Наиболее распространенными механизмами доставки содержимого для аренды является потоковая передача защищенного содержимого из веб-службы или загрузка содержимого на локальное устройство, а затем воспроизведение содержимого.
Потоковая передача содержимого аренды
При потоковой передаче мультимедиа содержимое постоянно воспроизводится во время передачи с веб-сервера. При реализации содержимого аренды, который передается на пользовательские устройства, следует учитывать следующие технические аспекты.
PlayReady поддерживает множество типов протоколов. Для любого протокола не существует ограничений. Однако клиенты PlayReady обычно поддерживают один или несколько следующих стандартов: SSTP (Smooth Streaming), DASH (динамическая адаптивная потоковая передача по протоколу HTTP), HLS (HTTP Live Streaming). Помимо этих протоколов, она является совершенно приемлемой и доступной для службы, которая управляет как серверной частью, так и клиентами для реализации другого протокола, например многоадресной рассылки TS в закрытой сети.
Формат содержимого обычно имеет формат H264 + AAC или H265 + AAC, но все остальные кодеки разрешены PlayReady.
Потоковая передача содержимого аренды может использовать постоянную или непостояную лицензию.
Наиболее очевидным случаем будет непрекращающаяся лицензия. Непрекращающиеся лицензии хранятся в энергонезависимой памяти (ОЗУ) и сохраняются только в течение текущего сеанса. Непрекращающиеся лицензии хорошо адаптированы к сценарию потоковой передачи, так как для потоковой передачи устройство должно быть подключено в любом случае, и может позволить себе получать непостояную лицензию только во время воспроизведения.
Непрекращающаяся лицензия, которая предварительно приобретена, также сократит время до первого кадра. Дополнительные сведения см. в разделе "Создание и выдача лицензий".
Еще один способ оптимизировать время до первого кадра при потоковой передаче содержимого аренды — использовать "Лицензии ограниченной длительности PlayReady". Хотя пользователю предоставляется страница со списком видео для выбора, лицензии с очень небольшой длительностью предварительно приобретаются в фоновом режиме (обычно тридцать секунд). К этим лицензиям относится ограничение "Срок действия в режиме реального времени", которое гарантирует, что клиент фактически перестанет играть с этой лицензией через тридцать секунд. Затем пользователь может выбрать один из перечисленных видео для воспроизведения. В настоящее время воспроизведение может начаться немедленно. Игрок запрашивает полную лицензию на аренду (в течение 48 часов) для видео, выбранного пользователем, и игрок затем легко привязывается к арендной лицензии во время воспроизведения. Эта оптимизация возможна на клиентах PlayReady версии 3.0 или более поздних версий, которые поддерживают истечение срока действия и доставку лицензий в реальном времени в пакетах.
Также можно использовать постоянные лицензии для сценариев потоковой передачи. Постоянные лицензии хранятся в ненезависимой памяти (в локальном хранилище данных) и сохраняются в течение всего времени существования хранилища или до достижения ограничения на основе времени.
Скачивание и воспроизведение содержимого аренды
Содержимое аренды также можно скачать клиенту до начала воспроизведения. Обычно это делается для достижения постоянного качества содержимого, не связанного с качеством сети, но может потребовать некоторой задержки, прежде чем воспроизведение может начаться.
При реализации содержимого аренды, скачаемого и воспроизводимого содержимого, следует учитывать следующие технические аспекты.
Содержимое можно скачать в виде простого файла по протоколу HTTP, если содержимое уже создано в правильном формате для устройства. Другой вариант заключается в том, что клиент получает последовательные сегменты адаптивного ресурса потоковой передачи по протоколу потоковой передачи (SSTP, DASH, HLS, other) и упаковывает их все в локальном хранилище устройства для дальнейшего воспроизведения в виде одного сегментированного файла или коллекции файлов сегментов. Последний позволяет более сложным сценариям, таким как поздняя привязка, которая позволяет клиенту выбирать различные дорожки в зависимости от его предпочтений. Например, выберите одно качество видео среди нескольких качеств, одну конкретную звуковую дорожку или подзаголовок, независимо от первоначальной разработки содержимого на серверной части.
Скачивание и воспроизведение содержимого аренды также может использовать постоянную или непостояную лицензию. Как правило, предпочтительнее использовать предварительную постоянную лицензию.
При использовании постоянных лицензий устройству иногда может потребоваться удалить лицензии из хранилища данных после истечения срока их действия.
Как и все постоянные лицензии, включающие дату окончания срока действия, они также должны включать дату начала, которая помогает предотвратить некоторые атаки пользователей на доверенной системе часов устройства.