You can use the features of the Primetime Digital Rights Management (DRM) system to provide secure access to your video content. Alternatively, you can use third-party DRM solutions as an alternative to Adobe’s integrated Primetime DRM solution.
Check with your Adobe representative for the most up-to-date information on the availability of 3rd-party DRM solutions.
The key client-side element of the Primetime digital rights management (DRM) system is the DRM Manager. The sample application included with the Android SDK includes a DRMHelper
class that demonstrates how to make certain DRM operations easier to implement.
Primetime DRM provides a scalable, efficient workflow to implement content protection in TVSDK applications. You protect and manage the rights to your video content by creating a license for each digital media file.
Refer to the DRM sample player code included in the TVSDK package.
These are the most important API elements for working with DRM:
A reference in the media player to the DRM manager object that implements the DRM subsystem:
MediaPlayer.getDRMManager();
This API will return a valid DRMManager
object only after the MediaPlayerEvent.DRM_METADATA
is fired. If you call getDRMManager()
before this event fires, it might return NULL.
The DRMHelper
helper class, which is useful when implementing DRM workflows.
You can see DRMHelper
in ReferencePlayer
.
A DRMHelper
metadata loader method, which loads DRM metadata when it is located in a separate URL from the media.
public static void loadDRMMetadata(final DRMManager drmManager,
final String drmMetadataUrl,
final DRMLoadMetadataListener loadMetadataListener);
A DRMHelper
method to check the DRM metadata to determine whether authentication is needed.
/**
* Return whether authentication is needed for the provided
* DRMMetadata.
*
* @param drmMetadata
* The desired DRMMetadata on which to check whether auth is needed.
* @return whether authentication is required for the provided metadata
*/
public static boolean isAuthNeeded(DRMMetadata drmMetadata);
DRMHelper
method to perform authentication.
/**
* Helper method to perform DRM authentication.
*
* @param drmManager
* the DRMManager, used to perform the authentication.
* @param drmMetadata
* the DRMMetadata, containing the DRM specific information.
* @param authenticationListener
* the listener, on which the user can be notified about the
* authentication process status.
* @param authUser
* the DRM username provider by the user.
* @param authPass
* the DRM password provided by the user.
*/
public static void performDrmAuthentication(final DRMManager drmManager,
final DRMMetadata drmMetadata,
final String authUser,
final String authPass,
final DRMAuthenticationListener authenticationListener);
Events that notify your application about various DRM activities and status.
Additional relevant API elements:
For more information about DRM, see the Adobe Primetime DRM documentation.