interface PlayReadyDRMConfig {
    LA_URL?: string;
    customData?: string;
    forceSSL?: boolean;
    headers?: HttpHeaders;
    keySystemPriority?: string[];
    licenseRequestRetryDelay?: number;
    maxLicenseRequestRetries?: number;
    mediaKeySystemConfig?: MediaKeySystemConfiguration;
    plaintextChallenge?: boolean;
    utf8message?: boolean;
    withCredentials?: boolean;
}

Properties

LA_URL?: string

An URL to the PlayReady license server for this content (optional). Can be defined in the configuration or taken out from the video manifest if defined there. If the config URL is defined it has precedence over the URL defined in the manifest.

customData?: string

A custom data string sent along with the license request. This is only supported in browsers using the legacy Microsoft prefixed EME (IE, Edge legacy).

forceSSL?: boolean

Specifies whether to upgrade all license requests to use SSL.

headers?: HttpHeaders

An object which specifies custom HTTP headers.

DRMtoday by castLabs Specific Example:

headers : {
'dt-custom-data': 'INSERT-YOUR-BASE64-ENCODED-CUSTOMDATA'
}
keySystemPriority?: string[]

Specify the priority of PlayReady DRM key system strings for this source. Non-specified strings which the player knows will be put at the end of the list. The first key system string of this list, which is supported on the current platform is used.

Since

8.143.0

licenseRequestRetryDelay?: number

Specifies how long in milliseconds should be waited before a license request should be retried.

maxLicenseRequestRetries?: number

Specifies how often a license request should be retried if was not successful (e.g. the license server was not reachable). Default is 1. 0 disables retries.

mediaKeySystemConfig?: MediaKeySystemConfiguration

An object which allows to specify configuration options of the DRM key system, such as distinctiveIdentifier or persistentState (refer to MediaKeySystemConfiguration for more details). Please note that these settings need to be supported by the browser or playback will fail.

plaintextChallenge?: boolean

Specifies, whether the Challenge specified in the keymessage is provided in plaintext rather than being Base64 encoded.

On most desktop browsers, the Challenge is Base64 encoded, which requires additional preprocessing before a license request can be sent. Devices like smart TVs or set-top boxes often already provide a plaintext challenge in the key message, so the preprocessing step can be skipped. Default value is false.

utf8message?: boolean

Specifies, whether the keymessage provided by the browser is already UTF-8 encoded.

On most desktop browsers, the keymessage is UTF-16 encoded, which requires additional preprocessing before a license request can be sent. Devices like smart TVs or set-top boxes often already provide a UTF-8 encoded key messages, so the preprocessing step can be skipped. Default value is false.

withCredentials?: boolean

Set to true to send credentials such as cookies or authorization headers along with the license requests. Default is false.