Struttura DRMRIGHTS (drmk.h)

La struttura DRMRIGHTS specifica i diritti di contenuto DRM assegnati a un pin audio KS o a un oggetto flusso del driver di classe porta.

Sintassi

typedef struct tagDRMRIGHTS {
  BOOL  CopyProtect;
  ULONG Reserved;
  BOOL  DigitalOutputDisable;
} DRMRIGHTS, *PDRMRIGHTS;

Membri

CopyProtect

Specifica uno dei valori di protezione della copia seguenti:

VERO

Abilita la protezione della copia. Un'applicazione audio non deve eseguire le operazioni seguenti:

  • Archiviare il contenuto in qualsiasi formato in qualsiasi risorsa di archiviazione non volatile.
  • Passare il contenuto per riferimento o per valore a qualsiasi altro componente all'interno del sistema host non autenticato dal sistema DRM.

FALSO

Disabilita la protezione della copia. Il contenuto può essere copiato senza restrizioni.

Per altre informazioni su CopyProtect, vedere la sezione Osservazioni.

Reserved

Riservato per uso futuro. Inizializzare su zero.

DigitalOutputDisable

Specifica uno dei valori di protezione dell'output digitale seguenti:

VERO

Disabilitare gli output digitali. Un componente software non deve trasferire il contenuto dal sistema host tramite qualsiasi tipo di interfaccia digitale. Si noti che la protezione dell'output digitale non influisce sui dispositivi USB perché il sistema host include dispositivi USB.

FALSO

Abilita gli output digitali. Il contenuto può essere trasferito dal sistema host a un componente esterno senza restrizioni.

Per altre informazioni su DigitalOutputDisable, vedere la sezione Osservazioni.

Osservazioni

Il Programma di certificazione Windows inserisce requisiti specifici nel modo in cui un driver audio gestisce i valori di CopyProtect e DigitalOutputDisable. Questi requisiti sono applicabili quando i valori CopyProtect e DigitalOutputDisable vengono applicati a un flusso audio e all'output da cui si accede al flusso audio. I nuovi requisiti per Windows 7 includono il modo corretto per programmare il sistema di gestione della copia seriale (SCMS) per gli endpoint S/PDIF e hdCP (High-Bandwidth Digital Content Protection) per gli endpoint HDMI.

La tabella seguente riepiloga lo stato di protezione del contenuto che il driver deve stabilire per valori diversi di CopyProtect e DigitalOutputDisable.

membri booleani DRMRIGHTS di protezione del contenuto risultante
DigitalOutputDisable CopyProtect porta HDMI e display S/PDIF
Falso Falso Abilitato senza HDCP Abilitato senza SCMS
Falso Vero Abilitato con HDCP Abilitato con SCMS
Vero Non importa Abilitato con HDCP Disabile
 
Nota Se il driver non è in grado di applicare correttamente HDCP o SCMS, il driver deve disabilitare l'output nell'endpoint.
 
Quando un driver audio applica la protezione della copia SCMS a un endpoint S/PDIF, il driver audio usa una combinazione dei bit L, Cp e Category Code per selezionare uno stato SCMS "Copia mai". Per altre informazioni sulla protezione della copia per il contenuto digitale, vedere IEC 60958 disponibile nel sito Web IEC.

Se il driver supporta DRMRIGHTS e implementa anche un meccanismo di protezione della copia proprietario, il driver deve aggregare il risultato dell'implementazione proprietaria con i valori di CopyProtect e DigitalOutputDisable per determinare lo stato di protezione della copia finale. Lo stato finale di protezione della copia deve essere il più restrittivo di tutte le richieste di protezione della copia in sospeso.

La macro DEFINE_DRMRIGHTS_DEFAULT definisce una struttura DRMRIGHTS che specifica i diritti di contenuto DRM predefiniti.

VOID DEFINE_DRMRIGHTS_DEFAULT(
   DRMRIGHTS DrmRights
);

Parametri

DrmRights

DRMRIGHTS

Specifica un nome per una struttura DRMRIGHTS costante. La macro imposta i membri di DrmRights sui valori predefiniti seguenti:

Valore restituito

VOID

Questa macro non restituisce un valore.

Fabbisogno

Requisito Valore
intestazione drmk.h (include Drmk.h)

Vedere anche

DrmCreateContentMixed

DrmDestroyContent

DrmForwardContentToFileObject

DrmForwardContentToInterface

DrmGetContentRights