DRM-Unterstützung in DirectShow
[Das dieser Seite zugeordnete Feature Windows Media Format 11 SDK-ist ein Legacyfeature. Es wurde von Source Reader und Sink Writerersetzt. Source Reader und Sink Writer wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code Source Reader und Sink Writer- anstelle Windows Media Format 11 SDK-verwendet werden soll. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, um die neuen APIs zu verwenden, falls möglich umgeschrieben werden.]
Das Lesen und Schreiben von DRM-geschützten Dateien in DirectShow erfolgt im Wesentlichen auf die gleiche Weise wie beim direkten Verwenden des Windows Media Format SDK. Zunächst benötigen Sie die statische wmstubdrm-Bibliothek, die separat von Microsoft abgerufen wird. Darüber hinaus müssen Sie die IKeyProvider Schnittstelle implementieren, damit Ihre Anwendung auf die Laufzeitobjekte des Windows Media Format SDK zugreifen kann, wenn DRM aktiviert ist.
Verwenden Sie beim Anwenden des DRM Version 1-Schutzes die IWMHeaderInfo Schnittstelle, die wie in Lesen von ASF-Dateien in DirectShowbeschrieben wird. Rufen Sie beim Anwenden des DRM Version 7-Schutzes die IWMDRMWriter--Schnittstelle ab, indem Sie QueryService- für den WM ASF Writer Filter aufrufen, wie im Codeausschnitt weiter unten in diesem Thema gezeigt.
Alle anderen DRM-spezifischen Konfigurationen sind identisch wie in Aktivieren der DRM-Unterstützungbeschrieben. Verwenden Sie QueryService-, um die IWMDRMReader Schnittstelle aus dem WM ASF Reader Filter abzurufen.
DirectX 9.0 enthält ein Beispiel, PlayWndASF, eine DRM-fähige DirectShow-Playeranwendung, die DRM-Version 1 und Version 7-Lizenzerwerb veranschaulicht. Dieses Beispiel enthält auch eine Implementierung der CKeyProvider--Klasse, die die IKeyProvider--Schnittstelle unterstützt.