Developer Center

We provide all the tools

Explore the ExpressPlay platform.
Click on a component to learn more.


Service Admin

ExpressPlay Admin is a web console for easy administration of your account and service activity.

  • Dashboard
  • Tokens
  • Activity
  • Settings

Dashboard

The Dashboard provides an overview of your ExpressPlay account status.

  1. Activity Summary

    You can review total production token usage.

  1. Authenticator

    Your Customer Authenticator is your API key, censored to protect accidental exposure.

  1. Recent Activity Overview

    The Recent Activity monitor displays the fifty most recent transactions.

Tokens

The Tokens tab allows you to create ad-hoc test and production tokens for development and integration testing.

  1. Tokens for Testing

    You can create Marlin MS3 and Marlin BB tokens one at-a-time for testing.

  1. Marlin BB Devices

    Marlin BB tokens for device registration are also available here.

Activity

The Activity tab provides a detailed history of redeemed tokens. Tokens can be filtered by Token type.

  1. Variable Pagination

    The Activity Monitor can display between ten and one hundred different entries at a time for easy viewing.

  1. Intuitive Filtering

    Token activity is split into two distinct sets: MS3 Tokens and Marlin BB Tokens.

  1. Detailed Transaction History

    Each Token transaction entry contains the transaction type, time of transaction, error code, device ID, client type, Token ID, and content ID.

Settings

The account settings section provides your account details including your current service plan.

  1. Information

    Edit the personal information associated with your account.

  1. Service Plan

    View your current plan, and abbreviated payment info.


ExpressPlay SDK

The ExpressPlay SDK includes comprehensive documentation, and it is designed to easily enable Hollywood studio grade DRM protection within an iOS, Android, Windows and Mac OS X application . The links below provide a general overview, important concepts and additional details on the ExpressPlay SDK.

Mobile Players

The ExpressPlay SDK can work in conjunction with a variety of player frameworks available on Android and iOS. The following mobile player frameworks are compatible with ExpressPlay SDK. In the case of Android VideoView and ExoPlayer those frameworks are available as part of the Android SDK. In the case of other mobile players, please contact the mobile player developer for more information on their product.

SDK Documentation

This section provides links to the developer guides and reference documentation for each flavor of the ExpressPlay SDK.

iOS & Android

ExpressPlay SDK for iOS and SDK for Android both offer easy to use APIs with simple examples to help point you in the right direction. See below for SDK API documentation options.

OSX & Windows

The ExpressPlay SDK for Windows and SDK for OS X are available upon request. You can request access to these SDKs via the ExpressPlay Admin web console. See below for SDK API documentation options.

Source SDK

Qualified developers looking for a solution on custom platforms (such as embedded Linux) may need access to the ExpressPlay Source SDK. See below for the Source SDK documentation options.

Devices with Marlin or PlayReady

Devices which have Marlin or PlayReady built-in do not need the ExpressPlay SDK in order to work with ExpressPlay. You simply use the app SDK for the device platform such as the Roku SDK or the XBOX XDK. You can use the ExpressPlay service to provide tokens for your apps on those platforms to play protected content.


Packaging Tools

The ExpressPlay Packaging Tools is a set of free tools recommended by ExpressPlay which allow for content to be formatted and encrypted to use with ExpressPlay-enabled devices. The tools use a straight forward command-line interface for all three major operating systems and can be easily integrated into existing workflows.

ExpressPlay Packaging Guide

We’ve provided a summary of the command line tools and options, however it’s strongly recommended for you to visit the Tutorials section to first familiarize yourself with these tools within an entire workflow.

Download the Packaging Tools

Install for OS X

The following are download links to the current version of the ExpressPlay Packaging Tools for Mac OS X.

Install for Windows

The following are download links to the current version of the ExpressPlay Packaging Tools for Windows.

Install for Linux

The following are download links to the current version of the ExpressPlay Packaging Tools for Linux.


Service API

The Service API is how your storefront server gets tokens from ExpressPlay. Learn about this simple interface in the Service API documentation.


Storefront and ExpressPlay Interaction

  1. App requests permission from the Storefront to play content

  2. Your Storefront requests a token from ExpressPlay

  3. ExpressPlay grants the requested token

  4. Your Storefront permits content to play on App


Advanced Test Tool

The ExpressPlay Advanced Test Tool (ATT) provides a suite of useful command-line debugging tools for advanced Marlin BB use cases. The ATT is available to download from the ExpressPlay Admin site.


Key Storage

ExpressPlay offers an optional secure online storage service for your content keys at no additional charge. The ExpressPlay Key Storage Service uses the Simple Key Management (SKM) API, a simple REST API that allows you to push/pull content keys to/from ExpressPlay. You can learn more about this open API for key management in the SKM API documentation. The documentation is not specific to the ExpressPlay service, so the url patterns are missing the base url. In the case of ExpressPlay, the url base should be as follows.

  • Production URL Base: https://api.service.expressplay.com/keystore
  • Test URL Base: https://api.test.expressplay.com/keystore

IMPORTANT NOTE: ExpressPlay requires that each SKM API request include a "customerAuthenticator" query parameter using your production or test customer authenticator value.


Content Key Flow

Here you can see how the content is encrypted and remains protected through playback on device. The storefront requests tokens from ExpressPlay using the content key, then passes down the token to the player device or app which uses the SDK to process the token for secure playback.

Using Key Storage

In this scenario, content keys are stored by ExpressPlay in encrypted form. They content keys may be generated by a 3rd party provisioning service, then pushed to ExpressPlay using the open SKeyMa API, a REST-style interface for pushing and pulling keys. When content is packaged/encrypted the packing tools (or hardware encoder) pulls the key for each piece of content using SKeyMa. The storefront can request tokens using a content ID instead of a content key, as ExpressPlay already has the content key.


Tutorials

We’ve put together a handful of tutorials to acquaint you with the key features and components of ExpressPlay. We hope you find them helpful.

Getting Started

An overview of what it takes to get up and running, from signup to playback.


Service Tutorials

Storefront Hookup

This tutorial explains the MS3 Token life cycle and the processes necessary to integrate your service with ExpressPlay.

Test Token Generation

This tutorial explains the two methods available for generating Test Tokens.

Packaging Tutorials

DASH Packaging

This tutorial guides you through the process of packaging DASH content to use with ExpressPlay using Encoding.com, S3 and the Bento4 tools

HLS Packaging

This Tutorial guides you through the steps involved in packaging HLS content to use with ExpressPlay using Encoding.com, S3 and the Apple HLS tools.

Using Zencoder

This tutorial explains how to use the Zencoder (www.zencoder.com) cloud encoding service to package DASH content protected by ExpressPlay.

Validating with ExpressPlayer

This tutorial explains how to use the ExpressPlayer app for iOS and Android to validate your packaged content, one at a time or in bulk using JSON formatted playlists.

SDK Tutorials

iOS App

A step-by-step guide to making a barebones ExpressPlay-enabled media app for iOS. This tutorial demonstrates the use of Marlin MS3 tokens.

iOS App (Using BB Token)

A step-by-step guide to making a barebones ExpressPlay-enabled media app for iOS. This tutorial demonstrates the use of Marlin BB tokens.

Android App

A step-by-step guide to making a barebones ExpressPlay-enabled media app for Android. This tutorial demonstrates the use of Marlin MS3 tokens.

Android App (Using BB Token)

A step-by-step guide to making a barebones ExpressPlay-enabled media app for Android. This tutorial demonstrates the use of Marlin BB tokens.

 

Test Apps

Web Playback

ExpressPlay supports secure web playback using the Silverlight plugin for many popular web browsers. Using the test player below, you can validate your packaged content. Note that the Silverlight plugin currently supports DASH and Smooth formatted video only, and it requires PlayReady tokens for secure playback.

Connected TV

ExpressPlay works with today's most popular connected TV devices, like Roku and Chomecast and Amazon FireTV. Here we offer test apps on each platform to help you validate your content to make sure it can play on each using ExpressPlay protection.

Some of the apps require that you know how to install a private app onto the platform. They are provided as a zip file containing the executable code that will play ExpressPlay protected video. The apps are configured to play a sample list of test content hosted by ExpressPlay.

Test App for Roku

ExpressPlayer for Roku is an easy way to validate that your video content plays on Roku when secured with ExpressPlay. Currently the Roku players require that you use PlayReady tokens, and from our internal testing we found that it's best to use smooth streaming formatted video using a play scale of 10000000. Also, the PlayReady token must be included in the ProtectionHeader element within the smooth manifest. If you are using Bento4 to encrypt your smooth streaming content, there is a "play ready" command line option that will handle this.

Test App for fireTV

ExpressPlayer for Fire TV is an easy way to validate that your video content plays on Fire TV when secured with ExpressPlay. Currently the Fire TV can play MPEG-DASH formatted content with common encryption (CENC). You can use Marlin MS3 tokens for secure playback if your Fire TV app is using the ExpressPlay SDK for Android. ExpressPlayer can also play encrypted DASH content using Marlin MS3 tokens.

Test App for Chromecast

ExpressPlayer for Chromecast is an easy way to validate that your video content plays on Chromecast when secured with ExpressPlay. Currently the Chromecast can play MPEG-DASH formatted content with common encryption (CENC) using PlayReady tokens. ExpressPlayer for Chromecast includes a sender app which runs on your desktop Chrome browser and a receiver app with runs on the Chromecast.

 

ExpressPlayer (Mobile)

ExpressPlayer is an app for iOS and Android which allows easy testing of content encrypted by the ExpressPlay Packaging Tools. Here we provide a simple screencast showing how you can use ExpressPlayer to validate your encrypted video assets.