Compatibilidad con DRM en DirectShow
[La característica asociada a esta página, SDK de Windows Media Format 11, es una característica heredada. Se ha reemplazado por lector de origen y escritor receptor. El lector de origen y el sistema de escritura receptor se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use lector de origen y escritor receptor en lugar del SDK de Windows Media Format 11, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.
La lectura y escritura de archivos protegidos con DRM en DirectShow se realiza básicamente de la misma manera que cuando se usa el SDK de Windows Media Format directamente. Para empezar, necesita la biblioteca estática wmstubdrm, que se obtiene por separado de Microsoft. Además, debes implementar la interfaz IKeyProvider para permitir que la aplicación acceda a los objetos en tiempo de ejecución del SDK de Windows Media Format cuando DRM esté habilitado.
Al aplicar la protección drm versión 1, use la interfaz IWMHeaderInfo , que se obtiene como se describe en Lectura de archivos ASF en DirectShow. Al aplicar la protección drm versión 7, obtenga la interfaz IWMDRMWriter llamando a QueryService en el filtro WM ASF Writer , como se muestra en el fragmento de código más adelante en este tema.
Todas las demás configuraciones específicas de DRM son exactamente las mismas que se describen en Habilitación de la compatibilidad con DRM. Use QueryService para obtener la interfaz IWMDRMReader del filtro lector asf wm .
DirectX 9.0 contiene un ejemplo, PlayWndASF, una aplicación de reproductor directShow habilitada para DRM que muestra la adquisición de licencias drm versión 1 y versión 7. Este ejemplo también incluye una implementación de la clase CKeyProvider , que admite la interfaz IKeyProvider .