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.Use the API →Trusted inputs, authorization, and responses.
How playback is authorized
Your backend decides who can watch. DRM-X provides playback authorization. The player uses that authorization to request a DRM license.
- Viewer
Signs in to your service and requests a video.
- Your backend
Checks the user's purchase, subscription, or other permission to watch.
- DRM-X
Applies the selected playback rules and returns the playback configuration and authorization.
- Player
Uses the returned authorization to request the DRM license needed for playback.
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-stepConnect a DRM-X Packager profile, choose encoding and encryption settings, run a Windows batch and recover uploads with illustrated 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.
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.
- 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.
- 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#
- Backend language examplesDRM-X 6.0 backend integration patterns for PHP, ASP.NET Core, Node.js, Python, Java, Go, and Ruby using one secure Playback Session API.
- WordPress and MoodleIntegrate DRM-X 6.0 protected video with WordPress, LearnDash, LearnPress, and Moodle while keeping credentials and entitlement decisions server-side.
- SDKs and example downloadsDownload the DRM-X Universal Player Web package and find the working PHP integration and platform guides.
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.
- 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