Setup the Bitmovin Player with Conax

If you are not sure what DRM is, you want have an overview and get started, please have a look at our DRM Setup Guide.

Nearly every license provider, such as Irdeto, EZDRM or Conax, requires a few special information being sent to the DRM license server, or responds with a proprietary format. Instead of integrating a few license providers into the core of our player, we decided to provide necessary configuration options via the player configuration.

Widevine, PlayReady & FairPlay

var conf = {
    source: {
        dash: 'MPEG-DASH_MANIFEST_URL',
	drm: {
	    widevine: {
		headers: [{
		    name: 'Conax-Custom-Data',
		    value: '{"Version":"1.0.0","CxAuthenticationDataToken":"'+ TOKEN +'","CxClientInfo":{"DeviceType":"Browser","DrmClientType":"Widevine-HTML5","DrmClientVersion":"1.0.0","CxDeviceId":"'+ DEVICE_ID +'"}}'
	    playready: {
		headers: [{
		    name: 'Conax-Custom-Data',
		    value: '{"Version":"1.0.0","CxAuthenticationDataToken":"'+ TOKEN +'","CxClientInfo":{"DeviceType":"Browser","DrmClientType":"PlayReady-HTML5","DrmClientVersion":"1.0.0","CxDeviceId":"'+ DEVICE_ID +'"}}'
	    fairplay: {
		certificateURL: 'CERTIFICATE_URL',			   			    
		prepareMessage : function(event, session) {				    
		    return event.message;
		prepareContentId : function(initDataAsString) {
		    var base64decoded = window.atob(initDataAsString.split("skd://")[1].split("?")[0]);
		    var json = JSON.parse(base64decoded);
		    return '{"contentRef": "' + json.ContentRef + '", "keyId": "' + json.KeyId + '"}';
		prepareLicense : function(license) {			
		    return JSON.parse(license).CkcMessage;
		useUint16InitData : true,
		headers: [{
		    name: 'Content-type',
		    value: 'application/octet-stream'
		    name: 'Conax-Custom-Data',
		    value: '{"Version":"1.0.0","CxAuthenticationDataToken":"'+ TOKEN +'","CxClientInfo":{"DeviceType":"Browser","DrmClientType":"FairPlay-HTML5","DrmClientVersion":"1.0.0","CxDeviceId":"'+ DEVICE_ID +'"}}'

Please replace the following placeholders in the code:

  • HLS_MANIFEST_URL: The URL to the HLS manifest (M3U8) file.
  • MPEG-DASH_MANIFEST_URL: The URL to the DASH manifest (mpd) file.
  • CERTIFICATE_URL: The URL to the Fairplay certificate. This needs to be accessible for the player.
  • TOKEN: The provided by Conax
  • DEVICE_ID: The device ID provided by Conax
Back to Top
Simple Share Buttons