A CDM (Content Decryption Module) is the DRM client implementation inside a browser or device - Widevine in Chrome, PlayReady in Edge, FairPlay in Safari - that handles the secret parts of protected playback: generating license requests, storing the key, and decrypting media inside a boundary the page's JavaScript cannot inspect.
On the web, application code reaches the CDM only through the EME API: it can ask the CDM for a license challenge and hand back the license, but never sees the key itself. The CDM's security level (software vs hardware-backed) determines what quality a device is allowed to play, which is why robustness rules tie premium resolutions to a hardware CDM.


The handbook · 7 volumes
Fora Soft Video Engineering Handbook
The CDM is where browser DRM succeeds or fails, and differences between the Widevine, PlayReady and FairPlay CDMs explain many errors that happen on only one browser. Our seven-volume handbook covers the whole video stack; for the CDM start with Volume 3 on DRM and players, with Volume 2 on HLS, DASH and CMAF packaging and Volume 1 on encoding. Written by Nikolay Sapunov, CEO at Fora Soft.
DRM playback failing in one browser's CDM but working in the others?
Send us your player setup and a test stream, and we will trace the license and CDM flow and return a fix list per browser. 250+ video products shipped since 2005.