Typically, all Primetime DRM licenses, at creation time, are bound to a unique device. This binding prevents users from sharing licenses across different devices without authorization. In addition to per-device binding, Primetime DRM provides the ability to bind licenses to a Device Domain, or group of devices.
If the content metadata specifies that device domain registration is required, the application can invoke an API to join a device group. This action triggers a domain registration request to be sent to the domain server. Once a license is issued to a device group, the license can be exported and shared with other devices that have joined the device group.
The device group information is then used in the DRMContentData
VoucherAccessInfo
object, which will then be used to present the information that is required to successfully retrieve and consume a license.
To play encrypted content using Primetime DRM , perform the following steps:
VoucherAccessInfo.deviceGroup
, check if device group registration is required.Use the DeviceGroupInfo.authenticationMethod
property find out if authentication is required.
If authentication is required, authenticate the user by performing ONE of the following steps:
DRMManager.authenticate(deviceGroup.serverURL, deviceGroup.domain, username, password)
.DRMManager.setAuthenticationToken()
.Invoke DRMManager.addToDeviceGroup()
DRMManager.loadVoucher()
method.DRMManager
through the DRMManager.storeVoucher()
method.Primetime.play()
method.DRMVoucher.toByteArray()
method after obtaining the license from the Primetime DRM license server. Content providers typically limit the number of devices in a device group. If the limit is reached, you may need to call the DRMManager.removeFromDeviceGroup()
method on an unused device before registering the current device.