# Content Protection
ByteArk Player SDK for Flutter supports two tiers of content protection: basic encryption that works out of the box, and full DRM for Premium content.
Because the Flutter SDK wraps the native iOS and Android SDKs, the player automatically selects the appropriate DRM based on the current platform — Widevine on Android, FairPlay on iOS.
# Encryption
Symmetric-key encryption for use cases where you need basic content protection. Supported through the native SDK directly — no license server or additional setup.
| System | Guide |
|---|---|
| HLS ClearKey | Supported by default — no special setup required |
# Digital Rights Management (DRM)
Note
The DRM feature of ByteArk Player is available only to ByteArk Video Cloud for Business customers. Please contact sales@byteark.com if you would like to use this feature.
Full content rights management for Premium content. Uses a separate license server to obtain decryption keys at playback time, with strong security.
| DRM | Guide |
|---|---|
| Google Widevine | DRM for Android via Widevine CDM |
| Apple FairPlay | DRM for iOS via FairPlay Streaming (FPS) |
# DRM configuration
Configure DRM via ByteArkDrm on ByteArkPlayerItem. You can specify both Widevine and FairPlay simultaneously — the player picks the right one for the current platform:
final playerItem = ByteArkPlayerItem(
url: "<MEDIA_URL>",
drm: ByteArkDrm(
widevineDrm: WidevineDrm(
licenseUrl: "<WIDEVINE_LICENSE_URL>",
),
fairPlayDrm: FairPlayDrm(
licenseUrl: "<FAIRPLAY_LICENSE_URL>",
certificateUrl: "<FAIRPLAY_CERTIFICATE_URL>",
),
),
);
2
3
4
5
6
7
8
9
10
11
12
Note
For more information or to enable DRM, contact our team at support@byteark.com.