Estructura DRMRIGHTS (drmk.h)
La estructura DRMRIGHTS especifica los derechos de contenido DRM asignados a un pin de audio KS o a un objeto stream del controlador de clase de puerto.
Sintaxis
typedef struct tagDRMRIGHTS {
BOOL CopyProtect;
ULONG Reserved;
BOOL DigitalOutputDisable;
} DRMRIGHTS, *PDRMRIGHTS;
Miembros
CopyProtect
Especifica uno de los siguientes valores de protección de copia:
VERDADERO
Habilita la protección de copia. Una aplicación de audio no debe hacer lo siguiente:
- Almacene el contenido de cualquier forma en cualquier almacenamiento no volátil.
- Pase el contenido por referencia o por valor a cualquier otro componente del sistema host que no esté autenticado por el sistema DRM.
FALSO
Deshabilita la protección de copia. El contenido se puede copiar sin restricciones.
Para obtener más información sobre CopyProtect, vea la sección Comentarios.
Reserved
Reservado para uso futuro. Inicialice en cero.
DigitalOutputDisable
Especifica uno de los siguientes valores de protección de salida digital:
VERDADERO
Deshabilite las salidas digitales. Un componente de software no debe transferir el contenido del sistema host a través de ningún tipo de interfaz digital. Tenga en cuenta que la protección de salida digital no afecta a los dispositivos USB porque el sistema host incluye dispositivos USB.
FALSO
Habilita las salidas digitales. El contenido se puede transferir desde el sistema host a un componente externo sin restricciones.
Para obtener más información sobre DigitalOutputDisable, vea la sección Comentarios.
Observaciones
El Programa de certificación de Windows coloca requisitos específicos en la forma en que un controlador de audio controla los valores de CopyProtect y DigitalOutputDisable. Estos requisitos son aplicables cuando los valores CopyProtect y DigitalOutputDisable se aplican a una secuencia de audio y a la salida desde la que se accede a la secuencia de audio. Los nuevos requisitos para Windows 7 incluyen la manera correcta de programar el sistema de administración de copias serie (SCMS) para puntos de conexión S/PDIF y la protección de contenido digital de alto ancho de banda (HDCP) para puntos de conexión HDMI.
En la tabla siguiente se resume el estado de protección de contenido que el controlador debe establecer para distintos valores de CopyProtect y DigitalOutputDisable.
miembros booleanos DRMRIGHTS | protección de contenido resultante | ||
digitalOutputDisable | CopyProtect | de puerto HDMI y Display | S/PDIF |
Falso | Falso | Habilitado sin HDCP | Habilitado sin SCMS |
Falso | Verdadero | Habilitado con HDCP | Habilitado con SCMS |
Verdadero | No te importa | Habilitado con HDCP | Deshabilitado |
Si el controlador admite DRMRIGHTS e implementa también un mecanismo de protección de copia propietario, el controlador debe agregar el resultado de la implementación propietaria con los valores de CopyProtect y DigitalOutputDisable para determinar el estado de protección de copia final. El estado de protección de copia final debe ser el más restrictivo de todas las solicitudes de protección de copia pendientes.
La macro DEFINE_DRMRIGHTS_DEFAULT define una constante estructura DRMRIGHTS que especifica los derechos de contenido DRM predeterminados.
VOID DEFINE_DRMRIGHTS_DEFAULT(
DRMRIGHTS DrmRights
);
Parámetros
drmRights
DRMRIGHTS
Especifica un nombre para una estructura DRMRIGHTS constante. La macro establece los miembros de DrmRights en los siguientes valores predeterminados:
Valor devuelto
VOID
Esta macro no devuelve un valor.
Requisitos
Requisito | Valor |
---|---|
encabezado de |
drmk.h (incluya Drmk.h) |