# Apple FairPlay

Note

ฟีเจอร์นี้ของ ByteArk Player รองรับเฉพาะผู้ใช้ ByteArk Video Cloud for Business หากคุณต้องการใช้งานกรุณาติดต่อ sales@byteark.com

ByteArk Player SDK for Flutter รองรับการเล่นวิดีโอที่ป้องกันด้วย Apple FairPlay Streaming (FPS) (opens new window) บน iOS โดย Flutter SDK จะส่ง DRM configuration ผ่านไปยัง AVPlayer ของ iOS SDK เพื่อจัดการ License และ Decryption

Note

FairPlay ต้องใช้ source ในรูปแบบ HLS (.m3u8)

# การใช้งาน

แนบ FairPlayDrm เข้ากับ Source ผ่าน Factory ByteArkPlayerSource.drm

final playerItem = ByteArkPlayerItem(
  sources: [
    ByteArkPlayerSource.drm(
      url: "<HLS_M3U8_URL>",
      drm: FairPlayDrm(
        licenseUrl: "<FAIRPLAY_LICENSE_URL>",
        certificateUrl: "<FAIRPLAY_CERTIFICATE_URL>",
      ),
    ),
  ],
);
1
2
3
4
5
6
7
8
9
10
11
Property Type Required Description
licenseUrl String? Yes URL ของ FairPlay License server (สำหรับขอ CKC)
certificateUrl String? Yes URL ของ FairPlay Application Certificate
licenseRequestHeaders Map<String, String>? No Custom header ที่ส่งไปยัง License server

# ส่ง Custom Header ไปยัง License Server

final playerItem = ByteArkPlayerItem(
  sources: [
    ByteArkPlayerSource.drm(
      url: "<HLS_M3U8_URL>",
      drm: FairPlayDrm(
        licenseUrl: "<FAIRPLAY_LICENSE_URL>",
        certificateUrl: "<FAIRPLAY_CERTIFICATE_URL>",
        licenseRequestHeaders: {
          "Authorization": "Bearer <YOUR_TOKEN>",
        },
      ),
    ),
  ],
);
1
2
3
4
5
6
7
8
9
10
11
12
13
14

Note

หากใช้งาน ByteArk Multi-DRM สามารถดูวิธีสร้าง JWT Token สำหรับ Authorization header ได้ที่ ขั้นตอนการสร้าง Authorization Token สำหรับใช้งาน DRM License Server

ข้อควรระวัง

  • การใช้งาน DRM ต้องใช้งานผ่าน HTTPS เท่านั้น
  • FairPlay decryption ทำงานได้บนอุปกรณ์จริงเท่านั้น ไม่สามารถใช้งานบน iOS Simulator ได้