共用方式為


DirectShow 中的DRM支援

[與此頁面相關聯的功能 Windows Media Format 11 SDK是舊版功能。 來源讀取器接收寫入器已取代它。 來源讀取器接收寫入器 已針對 Windows 10 和 Windows 11 優化。 Microsoft強烈建議新程式代碼盡可能使用 來源讀取器接收寫入器,而不是 Windows Media Format 11 SDK。 Microsoft建議使用舊版 API 的現有程式代碼,盡可能改寫成使用新的 API。]

在 DirectShow 中讀取和寫入受DRM保護的檔案,基本上與直接使用 Windows 媒體格式 SDK 的方式相同。 首先,您需要 wmstubdrm 靜態庫,這是從 Microsoft分別取得的。 此外,您必須實作 IKeyProvider 介面,讓應用程式在啟用DRM時存取 Windows Media Format SDK 運行時間物件。

套用DRM第1版保護時,請使用 IWMHeaderInfo 介面,如 directShow 讀取 ASF 檔案中所述。 套用DRM第7版保護時,在 WM ASF 寫入器 篩選器上呼叫 QueryService,以取得 IWMDRMWriter 介面,如本主題稍後的代碼段所示。

所有其他DRM特定組態都與 啟用DRM支援中所述完全相同。 使用 QueryService,從 WM ASF 讀取器 篩選器取得 IWMDRMReader 介面。

DirectX 9.0 包含範例 PlayWndASF,這是已啟用DRM的 DirectShow 播放器應用程式,可示範 DRM 第 1 版和第 7 版的授權取得。 此範例也包含 CKeyProvider 類別的實作,該類別支援 IKeyProvider 介面。