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 Writer abgelöst. Source Reader und Sink Writer wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit quellleser und Senkenschreiber anstelle des Windows Media Format 11 SDK verwendet. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]
Das Lesen und Schreiben von DRM-geschützten Dateien in DirectShow erfolgt im Grunde auf die gleiche Weise wie bei der direkten Verwendung des Windows Media Format SDK. Zunächst benötigen Sie die statische Bibliothek wmstubdrm, die separat von Microsoft abgerufen wird. Darüber hinaus müssen Sie die IKeyProvider-Schnittstelle implementieren, damit Ihre Anwendung auf die Windows Media Format SDK-Laufzeitobjekte zugreifen kann, wenn DRM aktiviert ist.
Verwenden Sie beim Anwenden des DRM-1-Schutzes die IWMHeaderInfo-Schnittstelle , die wie unter Lesen von ASF-Dateien in DirectShow beschrieben abgerufen wird. Rufen Sie beim Anwenden des DRM-Schutzes version 7 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 entsprechen genau der Beschreibung unter Aktivieren der DRM-Unterstützung. Verwenden Sie QueryService , um die IWMDRMReader-Schnittstelle aus dem WM ASF Reader-Filter abzurufen.
DirectX 9.0 enthält das Beispiel PlayWndASF, eine DRM-fähige DirectShow-Playeranwendung, die den Lizenzerwerb von DRM-Versionen 1 und Version 7 veranschaulicht. Dieses Beispiel enthält auch eine Implementierung der CKeyProvider-Klasse , die die IKeyProvider-Schnittstelle unterstützt.