cbcs. One encrypted copy serves every playback path (MoQ, HLS and
DASH) and every key system (Clear Key, Widevine, PlayReady and FairPlay). The
relays only carry encrypted media. They never have the keys.
Key systems
Without a DRM vendor, protected media uses Clear Key. When you connect a vendor
(see DRM provider), the player uses the best key system that
the viewer’s browser supports.
Turn on DRM for a recorded asset
Before you turn on DRM, make sure that:- your organization has an active Ed25519 playback signing key,
- Auto-transcode (ABR) is on in the VOD defaults.
- The player gets its keys from
/api/streams/playback/<pb>/license(or from the license proxy for a vendor key system), with a playback token. /source, the MP4 download andassets.playbackUrlrefuse a DRM asset, because they would give the clear original.
Turn on DRM for a live input
Live DRM works for inputs that you publish over RTMP or SRT. The ingest encrypts the media before the stream gets to a relay. Open the live input and turn on DRM in the DRM card, or use the API:- The change applies at the next publish. If the input is live now, stop the encoder and start it again.
- The input then refuses publishing over WHIP and MoQ, because those paths cannot be encrypted by the platform. Use RTMP or SRT.
- If the platform cannot load the input’s keys, it refuses the encoder (ingest
error
drm_keys_unavailable). It never publishes a DRM input in the clear. - When you turn DRM off, the keys stay stored. If you turn DRM on again, the same keys are used.
What the viewer needs
The<clutchcall-player> element and StreamPlayer do DRM by
themselves. The browser must support Encrypted Media Extensions (EME).
- For a protected asset, the player never falls back to a clear path. If the browser cannot decrypt, the player shows an error.
- Safari without a FairPlay vendor cannot play Clear Key through native HLS.
DRM provider
A DRM vendor gives Widevine, PlayReady and FairPlay licenses. Connect one in Settings → Content protection, or withstreams.drm.setProvider. Only an
owner or an admin can change it.
All URLs must start with
https:// and must not point at a private address.
Use Test provider (streams.drm.testProvider) to check the CPIX connection
before you save.
How licensing works with a vendor
The player sends its license request to the platform’s license proxy, not to the vendor:Limits
- Keys that were made before you connected a provider stay Clear Key keys. Turn DRM off and on again for an asset to get vendor keys.
- The CPIX client accepts keys in plain text over TLS. It refuses keys that are encrypted with a document key.
- Vendors that need a new token for each license request are not supported. Only fixed credential headers are supported.
- Live inputs carry only the common pssh box in the init segment.