Build protected playback with DRM-X
Explore tutorials, API reference, and integration guides. Start with one protected video, then follow the path for your platform.
Your first protected video →A guided path from Console to playback.Package your content →Publish encrypted DASH and HLS outputs.Integrate your player →Web, Android, Apple, and native paths.Choose your integration →Find your platform, download the kit and follow its setup guide.Use the API →Trusted inputs, authorization, and responses.
Get started#
- Your first protected videoStart DRM-X 6.0 protected Web playback: publish content, create least-privilege credentials, authorize a viewer, and load the registered manifest.
- Create server integration credentialsFind your Environment ID, Site Key, Access Key, and Content ID. Keep credentials on your trusted backend.
Core concepts#
Prepare content#
- Package and publish contentPackage and publish DRM-X 6.0 protected VOD using DASH/CENC, HLS/CBCS, single-key or multi-key quality tiers, and managed or registered cloud storage.
- Desktop Packager: step-by-stepPackage video or audio, check Content IDs, choose encryption, copy CLI commands and recover uploads with illustrated Windows instructions.
- CLI Packager: commands and recoveryPackage a master video, automate with protected credentials, interpret progress and resume an interrupted upload without re-encoding.
- Long videos, 4K and 8KPlan three-hour VOD workflows with an interactive package-size and upload-time calculator, source-aware resolution ladders and recovery guidance.
- Connect cloud storageConnect AWS S3, Microsoft Azure, Google Cloud Storage, Alibaba Cloud OSS, or Tencent Cloud COS for encrypted media delivery.
- Amazon S3 and CloudFront: step by stepConnect a private S3 bucket to DRM-X 6.0 with scoped IAM permissions, browser CORS, CloudFront HTTPS delivery and an upload verification checklist.
License authorization#
- License authorization overviewUse the Playback Session API after your backend has checked permission to watch. Choose playback rules, connect the player, and release the session when playback ends.
- Named templates and custom policiesChoose a DRM-X license policy matching the published package, including durations, output protection, and quality tiers.
- Use a server-side token proxyKeep the DRM License Token behind your own backend while preserving native DRM challenges and license response bytes.
API reference#
- Create a playback sessionRequest and consume the DRM-X Universal Playback Session Contract with authentication, trusted Content IDs, and bounded authorization.
- Playback session error referenceIdentify playback session API errors, understand HTTP status and request IDs, and choose a safe recovery action.
Players and SDKs#
- Web and HTML5 playbackIntegrate DRM-X 6.0 protected Web playback with the Universal Player, qualified Shaka, PHP, ASP.NET Core, automatic DRM selection, and safe diagnostics.
- Build native apps with Universal PlayerChoose Android, iOS, Apple TV or Samsung Tizen. Download eligible SDKs, try public evaluation players, follow setup steps and view app screenshots.
- Android SDK and native Media3Download the Android player with in-video controls, draggable playlists, saved shuffle/repeat and offline resume. Integrate protected playback using DRM-X or native Media3.
- Apple FairPlay integrationIntegrate DRM-X 6.0 FairPlay Streaming on iOS, iPadOS, tvOS, and Safari using Swift, AVFoundation, SPC and CKC exchange, and secure server authorization.
- Samsung Tizen SDK and TV evaluationInstall the Samsung TV evaluation player, configure and sign its WGT, then integrate Widevine VOD with the Tizen Universal Player SDK.
- Amazon Fire TV SDK for Vega OSBuild a native Amazon Fire TV app with DRM-X Universal Player: download eligibility, screenshots, Vega setup, viewer authentication, configuration, build and device testing.
- Roku TV Universal Player SDKBuild a native Roku TV app with protected Widevine playback, remote controls, playlists, audio and subtitles using the DRM-X 6.0 Universal Player SDK.
- Native DRM integrationIntegrate native Widevine, PlayReady, FairPlay, or WisePlay clients with DRM-X 6.0 using the Universal Playback Session Contract without embedding server credentials.
Integrations#
- Integration center and downloadsKeep your existing login and database. Download the complete integration kit or one platform, then follow the visual edit map to connect protected playback.
- WordPress plugin installation and configurationInstall the shared WordPress plugin, map a lesson to Content ID, and keep your LMS enrollment and membership rules.
- LearnDash video DRM: embed Universal PlayerConnect LearnDash lessons and shared steps to DRM-X with the shared WordPress plugin and existing course access rules.
- Moodle protected-video activitiesInstall the Moodle activity, add protected content to a course, and reuse native enrollment and availability rules.
- Backend language examplesUnderstand the common playback flow and find the exact callback to modify in Node.js, Django, Laravel, PHP, ASP.NET or Java.
- ASP.NET Core Universal Player integrationInstall the .NET SDK, connect your authenticated user and content lookup, then expose the supplied playback-session endpoint.
- ASP.NET Framework 4.8 video DRM integrationAdd the Windows/IIS source adapter to your existing ASP.NET Framework application and connect its per-request authorization delegate.
- Node.js + Express video DRM integrationInstall the Express SDK, connect your existing login, and return an authorized Content ID from one request-time callback.
- Django protected videoUse Django authentication and your own permission callback. The DRM-X package creates no video or access-grant tables.
- Java, Spring Boot and VueInstall the Spring Boot starter and connect ContentEntitlement to your existing user and content repository. Add Vue only if your frontend uses it.
- Laravel and Node.js integrationsConnect Laravel to your existing catalog and purchase system through ContentAuthorizer. No DRM-X content or access tables are required.
- Canvas, Blackboard, Brightspace and Open edXUse the LTI 1.3 bridge to open protected video from an LMS with a signed platform launch.
- Shopify protected videoUse a signed Shopify app proxy and server-verified purchases to open a protected-video page.
- SDKs and example downloadsDownload the complete Web integration kit, a platform-specific SDK and example, or a native-player SDK.
- Kajabi, Thinkific and TeachableConnect a trusted learner login to server-side enrollment checks before opening protected video.
Operate#
- Live DRM integrationIntegrate DRM-X 6.0 Live DRM with CPIX or SPEKE packaging, rotating crypto periods, synchronized manifests, renewable authorization, and multi-platform testing.
- AWS and OBS live streaming setupCreate an AWS live workflow, configure OBS, test DRM playback, and stop resources after your event.
- Troubleshoot protected playbackTroubleshoot DRM-X 6.0 packaging, authorization, certificate, DRM license, manifest, decryption, and playback failures with safe redacted diagnostics.
- Production security checklistProduction security checklist for DRM-X 6.0 integrations: least-privilege credentials, server-side policy, secret handling, safe logs, transport boundaries, and release lifecycle.
DRM-X 6.0