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)

另请参阅

D3DDDIARG_CREATEDEVICE