PFND3D11_1DDI_CREATECRYPTOSESSION fonction de rappel (d3d10umddi.h)

Crée une session de chiffrement pour chiffrer le contenu vidéo envoyé au pilote miniport d’affichage.

Syntaxe

PFND3D11_1DDI_CREATECRYPTOSESSION Pfnd3d111DdiCreatecryptosession;

HRESULT Pfnd3d111DdiCreatecryptosession(
  D3D10DDI_HDEVICE hDevice,
  const D3D11_1DDIARG_CREATECRYPTOSESSION *pCreateData,
  D3D11_1DDI_HCRYPTOSESSION hCryptoSession,
  D3D11_1DDI_HRTCRYPTOSESSION hRTCryptoSession
)
{...}

Paramètres

hDevice

Handle de l’appareil d’affichage (contexte graphique).

pCreateData

Pointeur vers une structure D3D11_1DDIARG_CREATECRYPTOSESSION . Cette structure spécifie les attributs de la session de chiffrement à créer.

hCryptoSession

Handle des données privées du pilote pour la session de chiffrement. Pour plus d'informations, consultez la section Notes.

hRTCryptoSession

Handle de la session de chiffrement que le pilote doit utiliser lorsqu’il revient au runtime Direct3D.

Valeur de retour

Renvoie l'une des valeurs suivantes :

Code de retour Description
S_OK Le canal authentifié a été créé avec succès.
D3DDDIERR_DEVICEREMOVED L’adaptateur graphique a été supprimé.
D3DDDIERR_UNSUPPORTEDCRYPTO Un type de chiffrement a été spécifié qui n’est pas pris en charge par le profil de décodage.
E_OUTOFMEMORY La mémoire n’était pas disponible pour terminer l’opération.

Remarques

Le runtime Direct3D appelle CreateCryptoSession pour créer une session de chiffrement utilisée par le runtime pour gérer une clé de session et effectuer des opérations de chiffrement pour le contenu vidéo stocké en mémoire protégée.

Le runtime appelle CreateCryptoSession une fois qu’il a appelé CalcPrivateCryptoSessionSize du pilote pour déterminer la taille en octets pour les données privées requises par le pilote pour la session de chiffrement. Le runtime alloue la mémoire pour ces données privées pour le pilote. Le pilote utilise cette mémoire pour stocker des données privées liées à la session de chiffrement.

Lorsque le runtime appelle CreateCryptoSession, il transmet le handle à la mémoire de données privées dans le paramètre hCryptoSession . Ce handle est en fait un pointeur vers la mémoire.

Le pilote doit effectuer le suivi du handle sur le périphérique d’affichage utilisé pour créer la session de chiffrement. Le pilote doit échouer tous les appels suivants qui utilisent cette session de chiffrement créée, comme NegotiateCryptoSessionKeyExchange, si l’appareil d’affichage spécifié dans ces appels est différent de celui utilisé pour créer la session de chiffrement.

Si le membre DecodeProfile de la structure D3D11_1DDIARG_CREATECRYPTOSESSION est défini sur NULL_GUID, la session de chiffrement ne sera pas utilisée pour le décodage directX Video Acceleration (DXVA). Si DecodeProfile n’est pas défini sur NULL_GUID, le pilote doit échouer à l’appel avec D3DDDIERR_UNSUPPORTEDCRYPTO si le membre CryptoType est défini sur un type de chiffrement qui n’est pas pris en charge par le profil de décodage.

Spécifications

   
Client minimal pris en charge Windows 8
Serveur minimal pris en charge Windows Server 2012
Plateforme cible Desktop (Expérience utilisateur)
En-tête d3d10umddi.h (include D3d10umddi.h)

Voir aussi

CalcPrivateCryptoSessionSize

D3D11_1DDIARG_CREATECRYPTOSESSION

NegotiateCryptoSessionKeyExchange