Condividi tramite


Supporto DRM in DirectShow

[La funzionalità associata a questa pagina, Windows Media Format 11 SDK, è una funzionalità legacy. È stata sostituita dal lettore di origine e dal writer sink. Lettore di origine e writer sink sono stati ottimizzati per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi lettore di origine e writer sink anziché Windows Media Format 11 SDK, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

La lettura e la scrittura di file protetti da DRM in DirectShow vengono eseguite praticamente allo stesso modo di quando si usa direttamente Windows Media Format SDK. Per iniziare, è necessaria la libreria statica wmstubdrm, ottenuta separatamente da Microsoft. Inoltre, devi implementare l'interfaccia IKeyProvider per consentire all'applicazione di accedere agli oggetti di runtime di Windows Media Format SDK quando è abilitato DRM.

Quando si applica la protezione DRM versione 1, usare l'interfaccia IWMHeaderInfo , ottenuta come descritto in Lettura di file ASF in DirectShow. Quando si applica la protezione DRM versione 7, ottenere l'interfaccia IWMDRMWriter chiamando QueryService nel filtro WM ASF Writer , come illustrato nel frammento di codice più avanti in questo argomento.

Tutte le altre configurazioni specifiche di DRM sono esattamente le stesse descritte in Abilitazione del supporto DRM. Usare QueryService per ottenere l'interfaccia IWMDRMReader dal filtro lettore ASF WM .

DirectX 9.0 contiene un esempio, PlayWndASF, un'applicazione lettore DirectShow abilitata per DRM che dimostra l'acquisizione di licenze DRM versione 1 e versione 7. Questo esempio include anche un'implementazione della classe CKeyProvider , che supporta l'interfaccia IKeyProvider .