Tổng quan
Widevine DRM là hệ thống bảo vệ nội dung của Google dành cho nội dung nghe nhìn cao cấp. Gói thuê bao này được các đối tác lớn trên toàn thế giới sử dụng, chẳng hạn như Google Play, YouTube, Netflix, Disney+, Amazon Prime Video, HBO Max, Hulu, Peacock, Discovery+, Paramount+ và nhiều đối tác khác. Mục tiêu của Widevine là cung cấp trải nghiệm tốt nhất để xem nội dung cao cấp thông qua phương thức phân phối kỹ thuật số.
DRM của Widevine áp dụng các tiêu chuẩn sau:
- Encrypted Media Extensions (Tiện ích nội dung đa phương tiện đã mã hoá) – một quy cách của W3C.
- Mã hoá phổ biến
- ISO/IEC 23001-7 – Phương thức mã hoá phổ biến trong các tệp định dạng tệp phương tiện cơ sở ISO
- ISO/IEC 23001-9 – Phương thức mã hoá phổ biến của luồng truyền tải MPEG-2
Nền tảng được hỗ trợ
Ứng dụng Widevine được nhúng sẵn vào nền tảng thiết bị trừ phi có ghi chú khác.
Thiết bị hoặc Nền tảng | Có hỗ trợ không? |
Android (Thiết bị di động, TV, Ô tô) | Có |
Nguồn mở Android (AOSP) | Có |
Apple iOS | Có [1] |
Apple TV (tvOS) | - |
Chromecast (Truyền) | Có |
Thiết bị Google Home và Nest | Có |
ChromeOS (Chromebook) | Có |
Trình duyệt Chrome (Windows, Mac OS X, Linux) | Có |
Trình duyệt Chromium | Có |
Khung nhúng Chromium (CEF) / Electron | Có |
Trình duyệt Firefox | Có |
Trình duyệt Edge | Có |
Opera (Trình duyệt và Thiết bị được nhúng) | Có |
Trình duyệt Safari (Máy tính) | - |
Thiết bị Roku | Có |
Thiết bị Amazon Echo | Có |
Thiết bị Amazon Fire OS | Có |
Thiết bị Amazon Fire TV | Có |
Thiết bị Facebook Portal | Có |
Nintendo Switch | - |
Trò chơi PlayStation của Sony | Có |
Microsoft Xbox | - |
TV thông minh và đầu phát Blu-ray (Tizen, WebOS) | Có |
Lược đồ mã hoá được hỗ trợ
Bảng dưới đây cung cấp sơ đồ liên kết các giao thức mã hoá trên các nền tảng tích hợp Widevine.
Nền tảng | cenc | cens | cbc1 | cbc |
Android 4.4 – 6.x (bao gồm cả Android TV) | Có | - | - | - |
Android 7.x trở lên (bao gồm cả Android TV) | Có | - | - | Có |
Chromecast (Truyền) | Có | - | Có | Có |
Google Home | Có | - | - | - |
TV thông minh và đầu đĩa Blu-ray | Có | - | - | Có |
Widevine iOS | Có | - | - | Có |
Trình duyệt Chrome (máy tính) và ChromeOS | Có | - | - | Có |
Trình duyệt Chrome (thiết bị di động) | Có | - | - | Có |
Mozilla Firefox | Có | - | - | Có |
Opera | Có | - | - | Có |
SDK NexPlayer | Có | - | - | Có |
Hệ sinh thái
Sơ đồ ở trên minh hoạ các thành phần Widevine có sẵn trong hệ sinh thái DRM.
Các thành phần Cung cấp, Keybox và OEMCrypto dành riêng cho quá trình tích hợp thiết bị. Nếu bạn muốn tích hợp Widevine vào một thiết bị, vui lòng liên hệ với chúng tôi.
Yêu cầu cấp phép từ thiết bị khách ban đầu sẽ được nhận bằng cơ chế proxy do đối tác điều hành (qua HTTPS). Cơ chế proxy này sẽ xác thực yêu cầu và thêm các quy tắc kinh doanh trước khi gửi tải trọng để Dịch vụ cấp phép Widevine thực hiện.
Thiết bị ứng dụng Widevine không giao tiếp trực tiếp với Dịch vụ cấp phép Widevine trong bất kỳ trường hợp nào.
Cấp giấy phép Widevine
Widevine cung cấp 2 phương thức cấp giấy phép cho khách hàng:
- Dịch vụ giấy phép trên đám mây
- Dịch vụ có thể truy cập trên toàn cầu mà không mất phí truy cập hoặc phí giao dịch.
- Quyền truy cập được cung cấp bằng thông tin xác thực của từng tổ chức cho các bên được cấp phép Widevine.
- SDK máy chủ cấp phép
- Được thiết kế để lưu trữ dịch vụ cấp phép của riêng bạn.
Sử dụng Dịch vụ giấy phép đám mây của Widevine
Dịch vụ giấy phép trên đám mây có 2 môi trường là Kiểm thử và Phát hành công khai. Quyền truy cập được cung cấp bằng thông tin xác thực riêng biệt cho mỗi tổ chức cho các bên được cấp phép Widevine.
Dịch vụ giấy phép đám mây cung cấp 2 điểm cuối cho:
- Truy xuất khoá nội dung nhằm mục đích mã hoá nội dung.
- Các khoá nội dung được yêu cầu theo cách này sẽ được Dịch vụ cấp phép trên đám mây của Widevine lưu trữ.
- Cấp giấy phép
- Thực hiện yêu cầu cấp phép do thiết bị ứng dụng Widevine tạo.
Tất cả yêu cầu cấp phép từ thiết bị khách phải được xử lý bằng cơ chế proxy cấp phép.
- Widevine cung cấp một SDK Proxy để giao tiếp với Dịch vụ cấp phép trên đám mây.
- Proxy giấy phép xác thực và xác minh yêu cầu của ứng dụng khách sắp tới, đồng thời xác định quy tắc kinh doanh cần áp dụng.
- Các quy tắc kinh doanh được thêm vào yêu cầu cấp phép ban đầu từ thiết bị và được gửi đến dịch vụ cấp phép để thực hiện.
- Sau khi được tạo, nội dung của giấy phép sẽ không thể sửa đổi được nữa và được cá nhân hoá cho thiết bị yêu cầu.
Trình đóng gói Shaka
Shaka Packager (trước đây gọi là eDASH-Packager) của Widevine là một phương thức triển khai tham chiếu nguồn mở về cách tạo các định dạng MP4 tương thích với DASH, thực hiện mã hoá bằng PSSH Widevine và tạo tệp kê khai DASH. Vui lòng truy cập vào trang github để gửi báo cáo lỗi và yêu cầu về tính năng.
Trình phát – Android
Dự án ExoPlayer nguồn mở do Google duy trì là thư viện trình phát tham chiếu được đề xuất, thể hiện việc phát nội dung đa phương tiện CENC của Widevine. Theo mặc định, việc tạo bản dựng ExoPlayer sẽ tạo một ứng dụng minh hoạ chứa danh sách các nội dung CENC hay đã biết của nhóm Widevine.
Trình phát – Trình duyệt
Dự án nguồn mở Shaka Player là sáng kiến của Widevine nhằm cung cấp một khung thư viện JavaScript toàn diện trên nhiều trình duyệt để hỗ trợ phát CENC HTML5 bằng CDM (tốt nhất là Widevine). Ngoài github, nhóm thảo luận Người dùng Shaka Player cũng được cung cấp và theo dõi bởi nhóm nhà phát triển Shaka Player của Widevine.
Shaka Player cung cấp:
- Khung trình phát nguồn mở có đầy đủ tính năng
- Giao diện người dùng có thể định cấu hình và tuỳ chỉnh
- Có khả năng chạy trên nhiều nền tảng và nhiều trình duyệt
- Hỗ trợ HTML5, MSE, EME và DASH
- Các tuỳ chọn đa DRM