PFND3D11_1DDI_CREATECRYPTOSESSION funzione di callback (d3d10umddi.h)
Crea una sessione di crittografia per crittografare il contenuto video inviato al driver miniport di visualizzazione.
Sintassi
PFND3D11_1DDI_CREATECRYPTOSESSION Pfnd3d111DdiCreatecryptosession;
HRESULT Pfnd3d111DdiCreatecryptosession(
D3D10DDI_HDEVICE hDevice,
const D3D11_1DDIARG_CREATECRYPTOSESSION *pCreateData,
D3D11_1DDI_HCRYPTOSESSION hCryptoSession,
D3D11_1DDI_HRTCRYPTOSESSION hRTCryptoSession
)
{...}
Parametri
hDevice
Handle per il dispositivo di visualizzazione (contesto grafico).
pCreateData
Puntatore a una struttura D3D11_1DDIARG_CREATECRYPTOSESSION . Questa struttura specifica gli attributi della sessione di crittografia da creare.
hCryptoSession
Handle per i dati privati del driver per la sessione di crittografia. Per altre informazioni, vedere la sezione Osservazioni.
hRTCryptoSession
Handle per la sessione di crittografia che il driver deve usare quando viene chiamato nel runtime Direct3D.
Valore restituito
Restituisce uno dei valori seguenti:
Codice restituito | Descrizione |
---|---|
S_OK | Il canale autenticato è stato creato correttamente. |
D3DDDIERR_DEVICEREMOVED | La scheda grafica è stata rimossa. |
D3DDDIERR_UNSUPPORTEDCRYPTO | È stato specificato un tipo di crittografia non supportato dal profilo di decodifica. |
E_OUTOFMEMORY | Memoria non disponibile per completare l'operazione. |
Commenti
Il runtime Direct3D chiama CreateCryptoSession per creare una sessione di crittografia usata dal runtime per gestire una chiave di sessione e per eseguire operazioni di crittografia per il contenuto video archiviato in memoria protetta.
Il runtime chiama CreateCryptoSession dopo che ha chiamato il CalcPrivateCryptoSessionSize del driver per determinare le dimensioni in byte per i dati privati richiesti dal driver per la sessione di crittografia. Il runtime alloca la memoria per questi dati privati per il driver. Il driver usa questa memoria per archiviare i dati privati correlati alla sessione di crittografia.
Quando il runtime chiama CreateCryptoSession, passa l'handle alla memoria dei dati privati nel parametro hCryptoSession . Questo handle è in realtà un puntatore alla memoria.
Il driver deve tenere traccia dell'handle per il dispositivo di visualizzazione usato per creare la sessione di crittografia. Il driver deve avere esito negativo per tutte le chiamate successive che usano questa sessione di crittografia creata, ad esempio NegotiateCryptoSessionKeyExchange, se il dispositivo di visualizzazione specificato in tali chiamate è diverso dal dispositivo di visualizzazione usato per creare la sessione di crittografia.
Se il membro DecodeProfile della struttura D3D11_1DDIARG_CREATECRYPTOSESSION è impostato su NULL_GUID, la sessione di crittografia non verrà usata per la decodifica DXVA (DirectX Video Acceleration). Se DecodeProfile non è impostato su NULL_GUID, il driver deve interrompere la chiamata con D3DDDIERR_UNSUPPORTEDCRYPTO se il membro CryptoType è impostato su un tipo di crittografia non supportato dal profilo di decodifica.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 8 |
Server minimo supportato | Windows Server 2012 |
Piattaforma di destinazione | Desktop |
Intestazione | d3d10umddi.h (include D3d10umddi.h) |