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
返回驱动程序在输出命令中所需的私有数据的大小。
返回值
无
备注
当 pKeyExchangeTypeD3D11_KEY_EXCHANGE_HW_PROTECTION时, 在 NegotiateCryptessionKeyExchange设备驱动程序接口 (DDI) 中预期会出现以下行为:
- 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) 命令数据包的第一个字节。
-
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) |