# การป้องกันเนื้อหา
ByteArk Player SDK for Flutter รองรับการป้องกันเนื้อหา 2 ระดับ ตั้งแต่การเข้ารหัสเบื้องต้นที่ใช้งานได้ทันที ไปจนถึงระบบจัดการสิทธิ์เนื้อหา (DRM) เต็มรูปแบบสำหรับ Premium content
เนื่องจาก Flutter SDK ครอบ Native SDK ของ iOS และ Android Player จะเลือกใช้ DRM ที่เหมาะสมโดยอัตโนมัติตามแพลตฟอร์มที่กำลังรันอยู่ — Widevine บน Android และ FairPlay บน iOS
# การเข้ารหัสเนื้อหา (Encryption)
ระบบเข้ารหัสที่ใช้กลไก Symmetric key สำหรับ Use case ที่ต้องการป้องกันเนื้อหาเบื้องต้น โดยรองรับผ่าน Native SDK โดยตรง ไม่ต้องตั้งค่า License server หรือเปิดใช้พิเศษ
| ระบบ | คู่มือ |
|---|---|
| HLS ClearKey | รองรับโดยค่าเริ่มต้น ไม่ต้องเปิดใช้งานพิเศษ |
# Digital Rights Management (DRM)
Note
ฟีเจอร์ DRM ของ ByteArk Player รองรับเฉพาะผู้ใช้ ByteArk Video Cloud for Business หากคุณต้องการใช้งานกรุณาติดต่อ sales@byteark.com
ระบบจัดการสิทธิ์เนื้อหาเต็มรูปแบบสำหรับ Premium content โดยใช้ License server แยกเพื่อขอ Decryption key ขณะเล่น มาตรฐานการรักษาความปลอดภัยสูง
| ระบบ DRM | คู่มือ |
|---|---|
| Google Widevine | DRM สำหรับ Android ผ่าน Widevine CDM |
| Apple FairPlay | DRM สำหรับ iOS ผ่าน FairPlay Streaming (FPS) |
# การตั้งค่า DRM
กำหนด DRM แยกในแต่ละ Source ผ่าน Factory ByteArkPlayerSource.drm โดยระบุ Source สำหรับ DRM ของแต่ละแพลตฟอร์ม (Widevine สำหรับ Android, FairPlay สำหรับ iOS) แล้ว Player จะเลือก Source ที่รองรับขณะใช้งานเอง
final playerItem = ByteArkPlayerItem(
sources: [
ByteArkPlayerSource.drm(
url: "<HLS_URL>", // .m3u8 สำหรับ FairPlay (iOS)
drm: FairPlayDrm(
licenseUrl: "<FAIRPLAY_LICENSE_URL>",
certificateUrl: "<FAIRPLAY_CERTIFICATE_URL>",
),
),
ByteArkPlayerSource.drm(
url: "<DASH_URL>", // .mpd สำหรับ Widevine (Android)
drm: WidevineDrm(
licenseUrl: "<WIDEVINE_LICENSE_URL>",
),
),
],
);
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Note
หากต้องการข้อมูลเพิ่มเติม หรือเปิดใช้งาน DRM สามารถติดต่อทีมงานได้ทาง support@byteark.com