Concurrent Stream Limiting (CSL) with Axinom DRM
Did you know that Axinom DRM supports Concurrent Stream Limiting (CSL)? This feature allows you to control how many simultaneous streams a single user can initiate—enforced through robust DRM integration. As a service provider you can configure:
- The maximum number of concurrent streams
- License renewal interval and grace period
- Concurrency enforcement mode
What is Concurrent Stream Limiting?
Concurrent Stream Limiting (CSL) is a feature used by streaming platforms to restrict how many streams a user can play simultaneously using the same account.CSL is an effective measure to discourage credential sharing and helps protect your platform’s revenue by enforcing fair usage policies.
CSL works by actively monitoring the number of live playback sessions linked to a user and applying limitations based on defined thresholds.
DRM vs. Non-DRM CSL
While CSL can be implemented without DRM, using Digital Rights Management (DRM) provides significantly stronger enforcement. DRM enables enforcement at the client level, leveraging secure, tamper-resistant mechanisms that are much harder to bypass than backend-only solutions.
Axinom DRM supports CSL with all major DRM technologies:
- Widevine
- PlayReady
- FairPlay
Refer to the official documentation for details.
How CSL works with Axinom DRM
🖥️ Server-Side Configuration
CSL settings are defined in the Entitlement Message, and include:
- Number of simultaneous streams: Maximum concurrent playback sessions per user.
- Renewal interval (default 5 minutes): The interval at which license renewal is requested.
- Grace period (default 1 minute): The time window after a renewal is triggered during which playback can continue until a new license is granted.
- Concurrency mode: Defines what happens when the limit is reached (e.g., block the new device, block the new session, or terminate the oldest session).
To enable CSL, you must assign a unique ´user_id´ in each Entitlement Message. For session-based concurrency modes, a ´session_id´ is also required—this can be the same as your content ID or another session identifier.
📱 Client-Side Considerations
Client-side behavior varies depending on the DRM technology in use:
- Widevine - Supports CSL and license renewal natively. Minimal client-side logic is required.
- FairPlay - Requires manual triggering of license renewals—your video player needs to be extended to support this behavior.
- PlayReady - Similar to FairPlay, but lacks a built-in license renewal concept. You must use low-level Encrypted Media Extensions (EME) APIs to create new DRM sessions each time a license nears expiration.
Axinom is working on a demo player to showcase some of the manual implementation steps that are required to support CSL from the client-side.
🚀 Try Axinom DRM Today
Want to explore CSL and other DRM capabilities hands-on? Start your free evaluation and see how easy it is to integrate secure, scalable content protection.