Streaming PlayReady protected content with Dynamic Delivery

Product(s)
Video Cloud
Role(s)
Player Developer
API Developer
Device SDK Developer
Topic(s)
DRM
Dynamic Delivery
API(s)
CMS API
Playback API
SDK
Android
iOS
tvOS

In this topic you will learn how to stream PlayReady protected content using Dynamic Delivery

Signing up for DRM

This feature requires an additional fee. Video Cloud offers other options for protecting your content across devices. See Content Protection and Digital Rights Management for more information. Contact your Account Manager about bundling DRM protection so that you can secure your content wherever it plays.

Configuring your account

Publisher accounts looking to use Smooth Streaming with PlayReady in Video Cloud will need to have their Video Cloud account configured by Brightcove Support. You should contact Brightcove Support and request that your account be configured to support PlayReady.

Streaming PlayReady protected content

With Dynamic Delivery, packaging in the format requested (for eg. PlayReady) is done Just-In-Time during playback. Playready can be delivered with Smooth Streaming or DASH.

Smooth Streaming + PlayReady

Typically, publishers using Smooth w/ PlayReady integrate with custom player implementations. Client applications should make straightforward HTTP calls to Brightcove servers to obtain the correct playback URLs via Playback API (or CMS API sources endpoint). With packaging for Smooth Streaming done at the Brightcove origin level, URL to the Smooth Manifest is all that is needed to begin playback.

Here is a snippet from the Playback API response:

  {
      "src": "https://bcbolt446c5271-a.akamaihd.net\/media\/v1\/smooth\/simple\/playready\/1910141532001\/c6db389e-1894-4c4e-87d8-52fde971bbda\/d3e0d9fd-6b2e-4f9d-8cbf-f039c8d959be\/manifest.ismc?akamai_token=exp=1483050294~acl=\/media\/v1\/smooth\/simple\/playready\/1910141532001\/c6db389e-1894-4c4e-87d8-52fde971bbda\/d3e0d9fd-6b2e-4f9d-8cbf-f039c8d959be\/manifest.ismc*~hmac=8c8c7a64224eccc4ed4ad26a5bdbbee3bd29d09edc222760afd7732320c358bd",
      "type": "application\/vnd.ms-sstr+xml",
      "uploaded_at": "2016-12-01T21:49:50.115Z",
      "key_systems": {
          "com.microsoft.playready": {
          "license_url": "https://manifest.prod.boltdns.net\/license\/v1\/playready\/1910141532001\/c6db389e-1894-4c4e-87d8-52fde971bbda\/d3e0d9fd-6b2e-4f9d-8cbf-f039c8d959be?fastly_token=NTg2NThkMzZfNThhM2IzOGNmYmQwZDdjYmE3NzMxNzAxMmE4OTJjODc1ZWNjNzJiOWUxNjg5N2I0M2ExODAwOWJiMzViMTI1Yw%3D%3D"
          }
      }
  }

By default, client side Smooth manifests required for playback are delivered with an .ismc extension. If you are a Video Cloud customer currently delivering Smooth Streaming and are expecting to receive an ISM URL with /Manifest appended to the path during Playback, please contact Customer Support to enable your setup for compatibility with your workflows.

MPEG-DASH + PlayReady

Since MPEG-DASH is encrypted with Common Encryption (CENC), it can be decrypted with Playready or Widevine DRM license formats. If delivering content to HBBTV devices is a requirement for you, please contact your account manager to enable delivery of HbbTV variant of DASH (encrypted using PlayReady) for your account. Similarly, Playback API (or CMS API sources endpoint) can be used to retrieve your DASH manifests (both desktop and HbbTV).

Limitations

The following limitations apply to streaming PlayReady protected content using Dynamic Delivery:

  • Our content is currently encrypted using PlayReady DRM which uses 16 byte Initialization Vectors (IV). We do not support a default_IV_size of 8 for encrypted content. For details about Playready DRM, see Microsoft's DASH Content Protection using Microsoft PlayReady document.