Skip to main content

Request DRM License

To playback a DRM-protected content using Player SDK, a valid DRM license is required. Follow the steps to request the DRM license from BlendVision One.

If you are using BlendVision One showroom or iFrame player, there is no need for additional integration, please skip this guide.

Get Service Certificate

Make a GET request to the API: https://drm.platform.blendvision.com/api/v3/drm/license/fairplay\_cert

  • Headers:
KeyValue
x-custom-datatoken_type=upfront&token_value=playback_token

License Acquisition

Make a POST request to the API: https://drm.platform.blendvision.com/api/v3/drm/license

  • Headers:
KeyValue
x-custom-datatoken_type=upfront&token_value=playback_token
  • Body:
OptionTypeValue
Option 1 (Suggested)JSON{"spc": [base64 standard encoded SPC message]}
Option 2Textspc=[base64 standard encoded SPC message]
Option 3byte array[binary array of FairPlay SPC, ex: 0x00 0x00 0x00 0x01 …]

Below is a sample for player integration. For more comprehensive integration guides, refer to the following resources :

import createPlayer from '@blendvision/player'
const config = {
source: {
// Set content URL with FairPlay DRM protection (m3u8Manifest)
src: m3u8Manifest,
drm: {
fairplay: {
licenseUri: "[https://drm.platform.blendvision.com/api/v3/drm/license](https://drm.platform.blendvision.com/api/v3/drm/license)",
certificateUri: "[https://drm.platform.blendvision.com/api/v3/drm/license/fairplay\_cert](https://drm.platform.blendvision.com/api/v3/drm/license/fairplay_cert)"
headers: { // Specify DRM request data
'x-custom-data': \`token\_type=upfront&token\_value=${playbackToken}\`
}
certificateHeaders: {
'x-custom-data': \`token\_type=upfront&token\_value=${playbackToken}\`
}
}
}
}
}
// Create the player
player = createPlayer(target, config)

Workflow sequence diagram