Operating a PlayReady Packager
Note that operating a packager that provides PlayReady protection for content you want to protect:
- Does not require a licensing agreement from Microsoft.
- Does not bear any fees or royalty payments to Microsoft.
The following figure shows the overall view of how a PlayReady packager operates with other parts of the content delivery system.
Steps:
You need to connect the packager to a Key Management system to store the content encryption keys for each piece of content. Alternatively, you may set the content encryption keys or Key Seed manually through the packager's interface.
The packager receives clear content.
The packager outputs protected content.
The packager just packages and protects the content. It does not define the policies that will be sent to clients by the PlayReady License Server.
Once the content is protected, the service can define any set of PlayReady policies to be sent to any client independantly, by inserting them in the license generated for that particular client. That means, the same piece of content, once protected, and identified with its KID or list of KIDs, can be served to client A with a certain set of playback policies (for example, play on internal screen, up to the 4K resolution, for 48 hours maximum), while served to client B with a different set of playback policies (for example, play on internal and external screens, up to the 1080p resolution maximum, with no time limitation).
The packager typically provides a configuration interface through a webpage, and through APIs. Here is a sample of the configuration interface for the packager built-in to Azure Media Services:
For each piece of content to protect, you are going to input the KID and content encryption key with one of the following methods:
Input the KID and Content Key. The Key Seed is not needed in this case.
Input the KID and Key Seed, and let the packager compute the Content Key.