PFND3DWDDM2_0DDI_GETCRYPTOSESSIONPRIVATEDATASIZE 콜백 함수(d3d10umddi.h)
GetCryptoSessionPrivateDataSize 는 선택적 프라이빗 드라이버 데이터의 크기를 검색합니다.
구문
PFND3DWDDM2_0DDI_GETCRYPTOSESSIONPRIVATEDATASIZE Pfnd3dwddm20DdiGetcryptosessionprivatedatasize;
void Pfnd3dwddm20DdiGetcryptosessionprivatedatasize(
D3D10DDI_HDEVICE hDevice,
const GUID *pCryptoType,
const GUID *pDecoderProfile,
const GUID *pKeyExchangeType,
UINT *pPrivateInputSize,
UINT *pPrivateOutputSize
)
{...}
매개 변수
hDevice
디스플레이 디바이스(그래픽 컨텍스트)에 대한 핸들입니다. Direct3D 런타임은 이 핸들을 디바이스를 만들 때 D3DDDIARG_CREATEDEVICE 구조의 hDevice 멤버로 사용자 모드 드라이버를 전달했습니다.
pCryptoType
프라이빗 입력 및 출력 크기를 쿼리할 암호화 형식을 나타냅니다.
pDecoderProfile
프라이빗 입력 및 출력 크기를 쿼리할 디코더 프로필을 나타냅니다.
pKeyExchangeType
프라이빗 입력 및 출력 크기를 쿼리하는 키 교환 유형을 나타냅니다.
pPrivateInputSize
드라이버가 입력 명령에 필요한 프라이빗 데이터의 크기를 반환합니다.
pPrivateOutputSize
드라이버가 출력 명령에 필요한 프라이빗 데이터의 크기를 반환합니다.
반환 값
없음
설명
pKeyExchangeType이 D3D11_KEY_EXCHANGE_HW_PROTECTION 경우 NegotiateCryptessionKeyExchangeDDI(디바이스 드라이버 인터페이스)에서 다음 동작이 예상됩니다.
- DataSize 는 D3D11_KEY_EXCHANGE_HW_PROTECTION_DATA 구조체의 크기로 설정됩니다.
- pData 는 D3D11_KEY_EXCHANGE_CONTENT_PROTECTION_DATA 구조를 가리킵니다.
-
pInputData 는 다음과 같은 D3D11_KEY_EXCHANGE_CONTENT_PROTECTION_OUTPUT_DATA 구조를 가리킵니다.
- pbInput[0] – pbInput[N-1]에는 드라이버에서 사용하도록 예약된 메모리가 포함되어 있습니다. 드라이버에 대해 예약된 바이트 수(N)는 GetCryptoSessionPrivateDataSizeDDI에서 반환된 pPrivateInputSize 값에 의해 결정됩니다.
- pbInput[N]에는 DRM(Digital Rights Management) 명령 패킷의 첫 번째 바이트가 포함되어 있습니다.
-
pOutputData 는 다음과 같은 D3D11_KEY_EXCHANGE_CONTENT_PROTECTION_OUTPUT_DATA 구조를 가리킵니다.
- pbOutput[0] – pbOutput[M-1]에는 드라이버에서 사용하도록 예약된 메모리가 포함되어 있습니다. 드라이버에 예약된 바이트 수(M)는 GetCryptoSessionPrivateDataSizeDDI에서 반환된 pPrivateOutputSize 값에 의해 결정됩니다.
- pbOutput[M]은 DRM 명령 패킷의 첫 번째 바이트를 포함합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 10 |
지원되는 최소 서버 | Windows Server 2016 |
대상 플랫폼 | 데스크톱 |
머리글 | d3d10umddi.h(D3d10umddi.h 포함) |