# 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
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
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 ได้