Estrutura DRMRIGHTS (drmk.h)
A estrutura DRMRIGHTS
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:
VERDADEIRO
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ãovolatile.
- 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.
FALSO
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:
VERDADEIRO
Desabilitar saídas digitais. Um componente de software não deve transferir o conteúdo 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.
FALSO
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.
Observações
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 | de proteção de conteúdo resultante | ||
DigitalOutputDisable | CopyProtect | de porta HDMI e Display | S/PDIF |
Falso | Falso | Habilitado sem HDCP | Habilitado sem SCMS |
Falso | Verdadeiro | Habilitado com HDCP | Habilitado com SCMS |
Verdadeiro | Não se importe | Habilitado com HDCP | Desactivado |
Se o driver der suporte ao DRMRIGHTS e também implementar um mecanismo proprietário de proteção contra cópia, o driver deverá agregar o resultado da implementação proprietária com os valores de CopyProtect e DigitalOutputDisable para determinar o estado de proteção de cópia final. 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 constante estrutura de DRMRIGHTS 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 do DrmRights com os seguintes valores padrão:
Valor de retorno
void
Essa macro não retorna um valor.
Requisitos
Requisito | Valor |
---|---|
cabeçalho | drmk.h (inclua Drmk.h) |