Skip to main content

THEOplayer

THEOplayer is a universal video player solution that allows enterprises and online media companies to provide video playback on a wide variety of devices and platforms. THEOplayer supports all major platforms, such as Android, iOS, Roku, Casting, and Smart TVs. It plays adaptive media formats, HLS and MPEG-DASH. By default, THEOplayer supports FairPlay, Widevine, and PlayReady DRM technologies.

It is easy to integrate THEOplayer with Axinom DRM as it is already pre-integrated.

Available SDKs​

The SDKs available for integrating Axinom DRM and THEOplayer include:

  • Web SDK
  • Android SDK
  • iOS SDK
  • tvOS SDK (unverified)
  • Android TV SDK
  • Chromecast SDK

The code examples for Web, Android, and iOS SDKs are given below. For more information, check the THEOplayer website.

Web SDK Code Sample​

Refer to this code sample when integrating Axinom DRM with THEOplayer for web.

if (HLS) {
let drmConfiguration = {
"integration": "axinom",
"token": "<AXINOM_TOKEN>",
"fairplay": {
"licenseAcquisitionURL": "<AXINOM_DRM_LICENSE_SERVICE_URL_FAIRPLAY>",
"certificateURL": "<CERTIFICATE_URL>"
}
};
player.source = {
"sources": {
"src": "<HLS_STREAM_URL>",
"type": "application/x-mpegurl",
"contentProtection": drmConfiguration
}
}
} else if (DASH) {
let drmConfiguration = {
"integration": "axinom",
"token": "<AXINOM_TOKEN>",
"playready": {
"licenseAcquisitionURL": "<AXINOM_DRM_LICENSE_SERVICE_URL_PLAYREADY>"
},
"widevine": {
"licenseAcquisitionURL": "<AXINOM_DRM_LICENSE_SERVICE_URL_WIDEVINE>"
}
};
player.source = {
"sources": {
"src": "<DASH_STREAM_URL>",
"type": "application/dash+xml",
"contentProtection": drmConfiguration
}
}
}

Android SDK Code Sample​

Refer to this code sample when integrating Axinom DRM with THEOplayer for Android.

DRMConfiguration drmConfiguration = new AxinomDRMConfiguration.Builder("<AXINOM_TOKEN>")
.widevine(
new KeySystemConfiguration(
"<AXINOM_DRM_LICENSE_SERVICE_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);

iOS SDK Code Sample​

Refer to this code sample when integrating Axinom DRM with THEOplayer for iOS.

let drmConfiguration = AxinomDRMConfiguration(
licenseAcquisitionURL: "<AXINOM_DRM_LICENSE_SERVICE_URL_FAIRPLAY>",
certificateURL: "<CERTIFICATE_URL>",
token: "<AXINOM_TOKEN>"
)
let typedSource = TypedSource(src: "<HLS_STREAM_URL>", type: "application/x-mpegurl", drm: drmConfiguration)
let sourceDescription = SourceDescription(source: typedSource)
theoplayer.source = sourceDescription

Video Playback Tool in Portal​

Note that under My DRM >> Tools >> DRM Video Playback, you can actually try out THEOplayer and check whether your video plays with it. This tool allows you to play the DRM-protected video as well as generate and adjust the Entitlement Message. Copy the video URL, the JWT, and the license acquisition URL and choose THEOplayer from the drop-down menu at the bottom. Click to get the player link and then copy-paste the link to see whether your video plays with THEOplayer.