Multi-DRM Onboarding Guide
We provide onboarding guides for DoveRunner Multi-DRM service, so that you can easily find guide documents that suit your various situations and requirements.
Step 1 - Content packaging
Section titled “Step 1 - Content packaging”graph TD;
start_onboarding(Start Onboarding) --> content_packaging["Step 1 - Content packaging"]
content_packaging --> vod_packager{"Choose file-based packager<br/>(for VOD content)"}
vod_packager --> tnp_service(DoveRunner<br/>T&P Service  )
vod_packager --> cli_packager(DoveRunner<br/>CLI Packager)
vod_packager --> mediaconvert(AWS Elemental<br/>MediaConvert)
vod_packager --> bitmovin_vod(Bitmovin<br/>Encoder)
vod_packager --> wowza_vod(Wowza Streaming<br/>Engine)
vod_packager --> hybrik_encoder(Hybrik<br/>Encoder)
cli_packager --> live_packager{"Choose live packager<br/>(for live content)"}
tnp_service --> live_packager
mediaconvert --> live_packager
bitmovin_vod --> live_packager
wowza_vod --> live_packager
hybrik_encoder --> live_packager
live_packager --> wowza_live(Wowza Streaming<br/>Engine)
live_packager --> mediapackage(AWS Elemental<br/>MediaPackage)
live_packager --> bitmovin_live(Bitmovin<br/>Encoder)
live_packager --> cpix(Other CPIX-based<br/>solutions)
wowza_live --> packaging_done[Apply CDN to result<br/>- End of step 1]
mediapackage --> packaging_done
wowza_live --> packaging_done
bitmovin_live --> packaging_done
cpix --> packaging_done
click tnp_service "/content-security/multi-drm/packaging/drm-tnp-service/"
click cli_packager "/content-security/multi-drm/packaging/cli-packager/"
click mediaconvert "/content-security/multi-drm/packaging/aws-elemental/#mediaconvert"
click mediapackage "/content-security/multi-drm/packaging/aws-elemental/#mediapackage"
click wowza_live "/content-security/multi-drm/packaging/wowza-integration/"
click wowza_vod "/content-security/multi-drm/packaging/wowza-integration/"
click bitmovin_vod "/content-security/multi-drm/packaging/bitmovin-encoder-guide/"
click bitmovin_live "/content-security/multi-drm/packaging/bitmovin-encoder-guide/"
click hybrik_encoder "/content-security/multi-drm/packaging/dolby-hybrik-drm-integration/"
click cpix "/content-security/multi-drm/packaging/cpix-api/"
Step 2 - Server-side DRM integration
Section titled “Step 2 - Server-side DRM integration”graph TD;
drm_license[Step 2 - Server-side DRM integration] --> apple_support{Need FairPlay DRM<br/>for Apple devices?}
apple_support -->|Yes| fps_cert(Request and register FairPlay cert)
apple_support -->|No| license_token(Implement license token)
fps_cert --> license_token
license_token --> license_test[Test license token integration<br/>- End of step 2]
click license_token "/content-security/multi-drm/license/license-token"
click fps_cert "/content-security/multi-drm/license/fps-cert-tutorial"
Step 3 - Client integration
Section titled “Step 3 - Client integration”graph TD;
drm_client[Step 3 - Client integration] --> web_client{"Choose HTML5 player<br/>(for browser support)"}
web_client --> shaka_player(Shaka Player)
web_client --> bitmovin_player(Bitmovin Player)
web_client --> theo_player(THEO Player)
web_client --> videojs(VideoJS Player)
web_client --> html5_player(Other<br/>HTML5 Player)
shaka_player --> mobile_sdk{"Choose mobile SDK<br/>or self-integration<br/>(for mobile app)"}
bitmovin_player --> mobile_sdk
theo_player --> mobile_sdk
videojs --> mobile_sdk
html5_player --> mobile_sdk
mobile_sdk --> widevine_android(Widevine<br/>Android SDK)
mobile_sdk --> fps_ios(FPS<br/>iOS SDK)
mobile_sdk --> ncg_android(NCG<br/>Android SDK)
mobile_sdk --> ncg_ios(NCG<br/>iOS SDK)
mobile_sdk --> multidrm_native(Multi-DRM<br/>native integration)
mobile_sdk --> crossplatform_integration(Cross-platform<br/>Frameworks)
widevine_android --> ott_devices{"Choose OTT SDK<br/>(for OTT devices)"}
fps_ios --> ott_devices
ncg_android --> ott_devices
ncg_ios --> ott_devices
multidrm_native --> ott_devices
crossplatform_integration --> ott_devices
ott_devices -->|Android TV| widevine_androidtv(Widevine<br/>AndroidTV SDK)
ott_devices -->|Apple TV| fps_tvos(FPS<br/>iOS SDK)
ott_devices -->|XBox| playready_uwp(PlayReady<br/>UWP SDK)
ott_devices -->|Chromecast| chromecast(ChromeCast<br/>integration)
widevine_androidtv --> playback_test[Playback test<br/>- End of step 3]
fps_tvos --> playback_test
playready_uwp --> playback_test
chromecast --> playback_test
playback_test --> finish_onboarding(Finish Onboarding)
click shaka_player "/content-security/multi-drm/clients/html5-player/#shaka"
click bitmovin_player "/content-security/multi-drm/clients/html5-player/#bitmovin"
click theo_player "/content-security/multi-drm/clients/html5-player/#theo"
click videojs "/content-security/multi-drm/clients/html5-player/#videojs"
click html5_player "/content-security/multi-drm/clients/html5-player/"
click widevine_android "/content-security/multi-drm/clients/widevine-android/"
click fps_ios "/content-security/multi-drm/clients/fairplay-ios/"
click fps_tvos "/content-security/multi-drm/clients/fairplay-ios/"
click ncg_android "/content-security/multi-drm/clients/ncg-android/"
click ncg_ios "/content-security/multi-drm/clients/ncg-ios/"
click crossplatform_integration "/content-security/multi-drm/clients/crossplatform-client-integration/"
click multidrm_native "/content-security/multi-drm/clients/multidrm-native-integration/"
click widevine_androidtv "/content-security/multi-drm/clients/widevine-android/"
click playready_uwp "/content-security/multi-drm/clients/playready-uwp/"
click chromecast "/content-security/multi-drm/clients/chromecast-integration/"