Estrutura DRMRIGHTS (drmk.h)
A estrutura DRMRIGHTS especifica os direitos de conteúdo DRM atribuídos a um pino de áudio KS ou ao objeto de fluxo de um driver de classe de porta.
Sintaxe
typedef struct tagDRMRIGHTS {
BOOL CopyProtect;
ULONG Reserved;
BOOL DigitalOutputDisable;
} DRMRIGHTS, *PDRMRIGHTS;
Membros
CopyProtect
Especifica um dos seguintes valores de proteção de cópia:
TRUE
Habilita a proteção de cópia. Um aplicativo de áudio não deve fazer o seguinte:
- Armazene o conteúdo de qualquer forma em qualquer armazenamento não volátil.
- Passe o conteúdo por referência ou por valor para qualquer outro componente dentro do sistema host que não seja autenticado pelo sistema DRM.
FALSE
Desabilita a proteção de cópia. O conteúdo pode ser copiado sem restrições.
Para obter mais informações sobre CopyProtect, consulte a seção Comentários.
Reserved
Reservado para uso futuro. Inicialize para zero.
DigitalOutputDisable
Especifica um dos seguintes valores de proteção de saída digital:
TRUE
Desabilitar saídas digitais. Um componente de software não deve transferir o conteúdo para fora do sistema host por meio de qualquer tipo de interface digital. Observe que a proteção de saída digital não afeta dispositivos USB porque o sistema host inclui dispositivos USB.
FALSE
Habilita saídas digitais. O conteúdo pode ser transferido do sistema host para um componente externo sem restrições.
Para obter mais informações sobre DigitalOutputDisable, consulte a seção Comentários.
Comentários
O Programa de Certificação do Windows coloca requisitos específicos na maneira como um driver de áudio lida com os valores CopyProtect e DigitalOutputDisable . Esses requisitos são aplicáveis quando os valores CopyProtect e DigitalOutputDisable são aplicados a um fluxo de áudio e à saída da qual o fluxo de áudio é acessado. Os novos requisitos para o Windows 7 incluem a maneira correta de programar o SCMS (sistema de gerenciamento de cópia serial) para pontos de extremidade S/PDIF e a HDCP (proteção de conteúdo digital) de alta largura de banda para pontos de extremidade HDMI.
A tabela a seguir resume o estado de proteção de conteúdo que o driver deve estabelecer para valores diferentes de CopyProtect e DigitalOutputDisable.
Membros boolianos DRMRIGHTS | Proteção de conteúdo resultante | ||
DigitalOutputDisable | Copyprotect | HDMI e Porta de exibição | S/PDIF |
Falso | Falso | Habilitado sem HDCP | Habilitado sem SCMS |
Falso | True | Habilitado com HDCP | Habilitado com SCMS |
True | Não se importe | Habilitado com HDCP | Desabilitado |
Se o driver der suporte a DRMRIGHTS e também implementar um mecanismo de proteção de cópia proprietário, o driver deverá agregar o resultado da implementação proprietária com os valores de CopyProtect e DigitalOutputDisable para determinar o estado final de proteção de cópia. O estado de proteção de cópia final deve ser o mais restritivo de todas as solicitações de proteção de cópia pendentes.
A macro DEFINE_DRMRIGHTS_DEFAULT define uma estrutura DRMRIGHTS constante que especifica direitos de conteúdo DRM padrão.
VOID DEFINE_DRMRIGHTS_DEFAULT(
DRMRIGHTS DrmRights
);
Parâmetros
DrmRights
DRMRIGHTS
Especifica um nome para uma estrutura DRMRIGHTS constante. A macro define os membros de DrmRights com os seguintes valores padrão:
Retornar valor
VOID
Essa macro não retorna um valor.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | drmk.h (inclua Drmk.h) |
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de