Structure D3DCONTENTPROTECTIONCAPS (d3d9caps.h)
Décrit les fonctionnalités de protection du contenu d’un pilote d’affichage. Pour obtenir les fonctionnalités, appelez IDirect3DDevice9Video::GetContentProtectionCaps.
Syntaxe
typedef struct _D3DCONTENTPROTECTIONCAPS {
DWORD Caps;
GUID KeyExchangeType;
UINT BufferAlignmentStart;
UINT BlockAlignmentSize;
ULONGLONG ProtectedMemorySize;
} D3DCONTENTPROTECTIONCAPS;
Membres
Caps
OR au niveau du bit de zéro ou plusieurs indicateurs.
Valeur | Signification |
---|---|
|
Le chiffrement est implémenté dans le logiciel par le pilote. |
|
Le chiffrement est implémenté dans le matériel par le GPU. |
|
La protection du contenu est toujours appliquée à une surface Direct3D protégée, que l’application active explicitement ou non la protection du contenu. |
|
Le pilote peut utiliser des mémoires tampons partiellement chiffrées. Si cette fonctionnalité n’est pas présente, la mémoire tampon entière doit être chiffrée ou effacée. |
|
Le pilote peut chiffrer des données à l’aide d’une clé de contenu distincte chiffrée à l’aide de la clé de session. Pour plus d’informations, consultez IDirect3DCryptoSession9::D ecryptionBlt. |
|
Le pilote peut actualiser la clé de session sans la renégocier. Pour actualiser la clé de session, appelez IDirect3DCryptoSession9::StartSessionKeyRefresh. |
|
Le pilote peut lire des données chiffrées à partir d’une surface protégée, à l’aide de la méthode IDirect3DCryptoSession9::EncryptionBlt . |
|
Le pilote a besoin d’une clé distincte pour lire les données chiffrées à partir d’une surface protégée. Pour obtenir cette deuxième clé, appelez IDirect3DCryptoSession9::GetEncryptionBltKey. |
|
Si le type de chiffrement est D3DCRYPTOTYPE_AES128_CTR, l’application doit utiliser un nombre séquentiel dans la structure DXVA2_AES_CTR_IV . Pour plus d’informations, consultez les remarques relatives à DXVA2_AES_CTR_IV. |
KeyExchangeType
Spécifie le type d’échange de clés requis pour négocier la clé de session. Les GUID suivants sont définis.
BufferAlignmentStart
Alignement de la mémoire requis pour les mémoires tampons utilisées par le moteur de chiffrement GPU. Si l’application utilise une mémoire tampon système pour passer du contenu chiffré au GPU ou pour lire du contenu chiffré à partir du GPU, l’adresse de départ de la mémoire tampon doit être un multiple de cette valeur.
BlockAlignmentSize
Alignement de blocs requis par le moteur de chiffrement GPU. La taille des données à chiffrer doit être un multiple de cette valeur.
ProtectedMemorySize
Quantité totale de mémoire qui peut être utilisée pour contenir des surfaces protégées.
Spécifications
Client minimal pris en charge | Windows 7 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 R2 [applications de bureau uniquement] |
En-tête | d3d9caps.h (inclure D3d9.h) |