# 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>",
    ),
  ),
);
1
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.