包含 OEM 內嵌 PlayReady 用戶端的裝置
許多領先的 OEM 已授權使用 PlayReady,並在其裝置中實作了播放機(基於 PlayReady 移植套件)。 然後,他們將其納入 SDK,提供給應用程式開發人員。
例如,Microsoft確保所有 Windows 10 裝置都包含整合在 Windows OS 本身或晶片的裝置韌體中的 PlayReady 用戶端,並透過 UWP API 向應用程式開發人員公開它。 但許多 Android TV 設備製造商都這樣做。 這些裝置會使用各種 API 向應用程式公開 PlayReady Client,包括:
- 計算機、Xbox 上的通用 Windows 平臺 API
- Android 裝置上的 Java DrmManagerClient API
- Linux 裝置上的各種介面
- 新式網頁瀏覽器上的 Javascript EME API
- 舊內嵌網頁瀏覽器上的 CE-HTML HbbTV API
在這些裝置上,應用程式開發人員不需要取得 PlayReady 的授權,也不需要操作 PlayReady 的程式代碼或憑證。 他們只需在平臺上使用 OEM 提供的 SDK,並在其應用程式內執行 PlayReady 操作,如 AcquireLicense(KID)等。
使用此模型開發的應用程式不需支付版稅。
下表顯示各種裝置上 PlayReady 用戶端的目前可用性。
| 內嵌在裝置中 | 在應用程式中 | |
|---|---|---|
| Windows 10 | 是的。 Windows SDK。 Microsoft Edge 中的 UWP 或 Web 應用程式 | |
| Windows 8、8.1 | 是,Windows SDK | 可能的第三方 SDK |
| Windows 7 | 是,Silverlight | 可能的第三方 SDK |
| MacOS | 否 | Silverlight 和第三方 SDK |
| iOS | 否 | 第一方和第三方 SDK |
| Apple TV OS | 否 | 第三方 SDK |
| Chrome OS | 否 | |
| Android Mobile | 在某些模型上是 | 第三方 SDK |
| Android TV | 所有模型皆為 [是] | |
| Linux 電視 | 大多數模型是的 | |
| 機 | 在 PlayStations 和 Xbox 上是 | |
| 網路接收者 | 大多數模型都是如此 | |
| 藍光光碟播放機 | 大多數模型都適用 |
不包含 PlayReady 客戶端的裝置
有些 OEM 已選擇不在其裝置中內嵌 PlayReady Client,或將其內嵌,但無法透過其 SDK 提供給應用程式開發人員使用。
在這些裝置上,應用程式開發人員仍然可以從應用程式內執行 PlayReady 作業,但需要在其應用程式中整合 PlayReady Client,包括 PlayReady 程式代碼和憑證。
應用程式中整合 PlayReady Client,要求應用程式開發人員取得 PlayReady 授權,並在應用程式中使用基於 PlayReady 裝置移植套件的實作。 使用 PlayReady 原始程式碼開發的公司必須持有 PlayReady 裝置開發和中繼產品發佈授權。
此開發需要專業知識來強化應用程式,包括 PlayReady 程式代碼和 PlayReady 秘密(金鑰、憑證)。 大部分的應用程式開發人員決定使用 由Microsoft合作夥伴所開發和維護的 PlayReady SDK)。
在 Windows、Xbox 上使用 PlayReady 開發應用程式
Microsoft在每個 Windows 10、8.1、8 單元和每個 Xbox 單元中開發並散發 PlayReady 用戶端。 此 PlayReady 用戶端可透過高階 API 向應用程式開發人員公開並自由存取。
應用程式開發人員可以建立通用 Windows 平臺 (UWP) 應用程式,以便為使用者提供 PlayReady 內容,同時強制執行內容提供者所定義的存取規則。 應用程式可以在 Windows 8、8.1 或 10 中免費使用此內建 PlayReady 用戶端,而不需與Microsoft簽署任何合約,也不需要任何 PlayReady 憑證,或任何 PlayReady 費用或版稅到期。
您可以在 適用於 Windows 10 的 PlayReady 文件和 Windows.Media.Protection.PlayReady 命名空間 中找到 Windows 10 PlayReady 文件。 PlayReady Windows 10 應用程式的範例可在 UWP 範例集合 和 PlayReady 範例適用於 Windows 10 的通用 Windows 應用程式 (Javascript/C#/EME) 中找到。
若要深入瞭解如何設計在 Xbox 上執行的應用程式,請參閱 Xbox 上的 PlayReady DRM。
您也可以建立適用於 Windows 8.1 的 PlayReady Windows 市集和 Web 應用程式。 您可以在 開發 PlayReady 的 Windows 應用程式商店和網路應用程式 中找到 Windows 8.1 的 PlayReady 文件。 您可以在 適用於 Windows 8.1 市集應用程式的 PlayReady 範例中找到 PlayReady Windows 8.1 應用程式的範例。
在 Windows 7 上使用 PlayReady 開發應用程式
某些 PlayReady 合作夥伴基於 Electron、Xamarin 或其他技術提供 SDK,以在 Windows 7 和 Mac OS 上執行 PlayReady。 您可以直接連絡這些 PlayReady 合作夥伴 以取得詳細資訊。
Silverlight 是在 Windows 7 和 Mac OS 上執行的已淘汰應用程式架構,其中包含功能完整的 PlayReady 用戶端。 它可以在瀏覽器中有限制地運行,也可以脫離瀏覽器在 Windows 7 和 Mac OS 上提供獨立運行的應用程式。
在Android上使用 PlayReady 開發應用程式
雖然許多 Android 裝置型號內嵌由 OEM 整合的 PlayReady 用戶端,但其他則不會。
針對內嵌模型開發應用程式,就像從這些裝置使用 SDK 一樣簡單。 它們通常會透過 Java DrmManagerClient 類別公開 PlayReady 用戶端。 如需詳細資訊,請參閱 適用於Android的 PlayReady 外掛程式Microsoft規格 。
針對未內嵌 PlayReady Client 的模型開發應用程式,需要在應用程式本身中整合 PlayReady Client。
Microsoft合作夥伴從 PlayReady Porting Kit 開發適用於 Android 的 PlayReady SDK,並讓應用程式開發人員可以使用它們。 如果您有在 Android 上使用 PlayReady 開發應用程式的專案,您可以直接連絡列出的 Microsoft合作夥伴 以取得提案和報價。
在 iOS、AppleTV OS、MacOS 上使用 PlayReady 開發應用程式
Apple 產品未隨附內嵌 PlayReady 用戶端。 不過,您可以在這些平台的應用程式中整合 PlayReady Client 並加以分發。
Microsoft合作夥伴也可以從 PlayReady Porting Kit 開發 Apple 型 OS 平臺的 PlayReady SDK,並將其提供給應用程式開發人員使用。 例如,如果您有使用 iOS 上的 PlayReady 開發應用程式的專案,您可以直接連絡列出的 Microsoft合作夥伴 以取得提案和報價。
在網頁瀏覽器中使用 PlayReady 開發應用程式
在支援 HTML5 和 JavaScript 的新式網頁瀏覽器中執行的 Web 應用程式,將會使用 加密媒體延伸模組 (EME) 介面來執行 PlayReady 作業。