Overview
Nearly every DRM license provider does have customized DRM workflow in place, which is different to the default approach, especially when it comes to Fairplay DRM. In order to support those custom requirements, each Bitmovin native SDK does support the same customizable callbacks as the HTML5 player, so you can adjust the DRM requests to the needs of your DRM provider accordingly.
If you are not yet familiar with the Bitmovin SDK, please see the related blog post and have a look at the demo applications available in our iOS sample applications or Android sample applications repository.
Android SDK using ExpressPlay/Intertrust (Java, Widevine DRM)
This example is based on "BasicDRMPlayback" which is available in its sample application repository.
1protected void initializePlayer()2{3 // Create a new source configuration4 SourceConfiguration sourceConfiguration = new SourceConfiguration();56 // Create a new source item7 SourceItem sourceItem = new SourceItem("https://url/to/your/stream.mpd");89 // setup DRM handling10 String drmLicenseUrl = "http://vv.test.expressplay.com/hms/wv/rights/ExpressPlayToken=YOUR_WIDEVINE_EXPRESSPLAY_TOKEN";11 UUID drmSchemeUuid = DRMSystems.WIDEVINE_UUID;12 sourceItem.addDRMConfiguration(drmSchemeUuid, drmLicenseUrl);1314 // Add source item including DRM configuration to source configuration15 sourceConfiguration.addSourceItem(sourceItem);1617 // load source using the created source configuration18 this.bitmovinPlayer.load(sourceConfiguration);19}