Products
Products
Video Hosting
Upload and manage your videos in a centralized video library.
Image Hosting
Upload and manage all your images in a centralized library.
Galleries
Choose from 100+templates to showcase your media in style.
Video Messaging
Record, and send personalized video messages.
CincoTube
Create your own community video hub your team, students or fans.
Pages
Create dedicated webpages to share your videos and images.
Live
Create dedicated webpages to share your videos and images.
For Developers
Video API
Build a unique video experience.
DeepUploader
Collect and store user content from anywhere with our file uploader.
Solutions
Solutions
Enterprise
Supercharge your business with secure, internal communication.
Townhall
Webinars
Team Collaboration
Learning & Development
Creative Professionals
Get creative with a built in-suite of editing and marketing tools.
eCommerce
Boost sales with interactive video and easy-embedding.
Townhall
Webinars
Team Collaboration
Learning & Development
eLearning & Training
Host and share course materials in a centralized portal.
Sales & Marketing
Attract, engage and convert with interactive tools and analytics.
"Cincopa helped my Enterprise organization collaborate better through video."
Book a Demo
Resources
Resources
Blog
Learn about the latest industry trends, tips & tricks.
Help Centre
Get access to help articles FAQs, and all things Cincopa.
Partners
Check out our valued list of partners.
Product Updates
Stay up-to-date with our latest greatest features.
Ebooks, Guides & More
Customer Stories
Hear how we've helped businesses succeed.
Boost Campaign Performance Through Video
Discover how to boost your next campaign by using video.
Download Now
Pricing
Watch a Demo
Demo
Login
Start Free Trial
Widevine DRM implements resolution constraints through hardware security tiers. The system categorizes devices into L1, L2, and L3 based on their hardware protection mechanisms for cryptographic operations and video processing. Content providers set resolution ceilings in DRM licenses according to device security levels. Widevine verifies these constraints during playback through cryptographic checks. The tiered model allows content distribution across devices while preventing unauthorized quality upgrades. Hardware capabilities dictate the maximum supported resolution for each security level. Widevine Security Levels and Resolution Control Widevine DRM applies content protection using discrete security levels ( L1 , L2 , and L3 ). Each of them defines cryptographic isolation, media pipeline integrity, and maximum permissible resolution. Level 1 (L1) Execution : All decryption and processing occur inside the device's Trusted Execution Environment (TEE). Resolution Support : Up to 4K UHD (3840x2160). Requirements : Full hardware-based protection for both keys and the media decoding pipeline. Usage : Mandatory for playback of high-value content (e.g., 4K movies on licensed OTT platforms). Level 2 (L2) Execution : Decryption happens in TEE, but video decoding is handled in software outside the secure environment. Resolution Support : Capped at 720p or 1080p, depending on the license policy. Usage : Some mid-range or older SoCs that lack full secure video pipelines. Level 3 (L3) Execution : The entire process (including key management and decoding) occurs in software without any hardware-based isolation. Resolution Support : Limited to SD (480p or lower). Usage : Emulators, uncertified devices, or devices without Widevine L1/L2 certification. License Configuration and Resolution Limits The license server response can limit resolution via the allowed_track_types or key control parameters. Example License Policy Snippet (JSON-like format) : { 'keys': [ { 'key_id': 'abc123...', 'track_type': 'SD', 'security_level': 'L3' }, { 'key_id': 'xyz789...', 'track_type': 'HD', 'security_level': 'L1' } ] } Explanation: key_id: 32-byte KID (hex/Base64URL) derived from PSSH must match encrypted media segment ID. track_type: Resolution constraint tag (' SD ,' ' HD ,' ' UHD1 ,' or ' UHD2 ') overrides player capability negotiation. security_level: L1 (TEE-backed, HDCP-bound) or L3 (software-only, fallback). Resolution Filtering in DASH Manifests DASH manifests include multiple representations (bitrates/resolutions). Players like ExoPlayer filter out unsupported representations based on device security level and license rules. Example DASH Adaptation Set :
Explanation : On L3 devices, only the SD representation would be selected. On L1 devices, HD or 4K representations are allowed if permitted by the license. Device-Level Validation Developers can query the security level of a device using Android's MediaDrm API: val mediaDrm = MediaDrm(WIDEVINE_UUID) val securityLevel = mediaDrm.getPropertyString('securityLevel') Log.d('WidevineLevel', 'Security Level: $securityLevel') Explanation: MediaDrm(WIDEVINE_UUID) initializes DRM context getPropertyString('securityLevel') queries device TEE