PlayreadyCdm

A PlayReady Content Decryption Module.

Build one from a .prd with fromDevice, open a session, hand a WRMHEADER to getLicenseChallenge, POST the result to the license server yourself, feed the response to parseLicense, and read the content keys out with getKeys.

Like ktvine's Widevine Cdm, this ships no HTTP client: moving bytes to and from a license server is the caller's business.

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
open suspend override fun close(sessionId: ByteString)

Close a session and release its slot.

Link copied to clipboard
open suspend override fun getKeys(sessionId: ByteString): List<PlayreadyKey>

The decrypted keys for the session.

Link copied to clipboard
open suspend override fun getLicenseChallenge(sessionId: ByteString, wrmHeader: WrmHeader, revocationLists: List<Uuid>? = null): String

Build a signed license challenge for wrmHeader.

Link copied to clipboard
open suspend override fun open(): ByteString

Open a session.

Link copied to clipboard
open suspend override fun parseLicense(sessionId: ByteString, licenseMessage: String)

Verify and parse a license response, loading its keys into the session.