This article describes how to configure Arris Titanium DRM with THEOplayer.
Head to our page on DRM for more general information.
Web SDK | Android SDK | iOS SDK | tvOS SDK | Android TV SDK | Chromecast SDK |
---|---|---|---|---|---|
Yes | Yes | Unverified | Unverified | Yes | Yes |
if (HLS) {
let drmConfiguration = {
"integration": "titanium",
"accountName": "<ACCOUNT_NAME>",
"customerName": "<CUSTOMER_NAME>",
"friendlyName": "<FRIENDLY_NAME>",
"portalId": "<PORTAL_ID>",
"authToken": "<AXINOM_TOKEN>",
"fairplay": {
"licenseAcquisitionURL": "<LICENSE_KEY_URL_FAIRPLAY>",
"certificateURL": "CERTIFICATE_URL>"
}
};
player.source = {
"sources": {
"src": "<HLS_STREAM_URL>",
"type": "application/x-mpegurl",
"contentProtection": drmConfiguration
}
}
} else if (DASH) {
let drmConfiguration = {
"integration": "titanium",
"accountName": "<ACCOUNT_NAME>",
"customerName": "<CUSTOMER_NAME>",
"friendlyName": "<FRIENDLY_NAME>",
"portalId": "<PORTAL_ID>",
"authToken": "<AXINOM_TOKEN>",
"playready": {
"licenseAcquisitionURL": "<LICENSE_KEY_URL_PLAYREADY>"
},
"widevine": {
"licenseAcquisitionURL": "<LICENSE_KEY_URL_WIDEVINE>"
}
};
player.source = {
"sources": {
"src": "<DASH_STREAM_URL>",
"type": "application/dash+xml",
"contentProtection": drmConfiguration
}
}
}
DRMConfiguration drmConfiguration = TitaniumDRMConfiguration.Builder
.titaniumDrm("<ACCOUNT_NAME>", ">CUSTOMER_NAME>", "<PORTAL_ID>")
// .friendlyName("<FRIENDLY_NAME>")
// .authToken("<AUTH_TOKEN>")
.widevine(
new KeySystemConfiguration(
"<LICENSE_KEY_URL_WIDEVINE>"
)
)
.build();
TypedSource typedSource = new TypedSource.Builder()
.src("<DASH_STREAM_URL>")
.drm(drmConfiguration)
.build();
SourceDescription sourceDescription = SourceDescription.Builder.sourceDescription()
.sources(typedSource)
.build();
theoplayer.getPlayer().setSource(sourceDescription);
Please refer to DRM (custom configuration).