PFND3DWDDM2_4DDI_VIDEODECODERSUBMITBUFFERS回调函数 (d3d10umddi.h)

为 DirectX 视频加速提交一个或多个视频帧缓冲区, (DXVA) 解码。

语法

PFND3DWDDM2_4DDI_VIDEODECODERSUBMITBUFFERS Pfnd3dwddm24DdiVideodecodersubmitbuffers;

HRESULT Pfnd3dwddm24DdiVideodecodersubmitbuffers(
  [in] D3D10DDI_HDEVICE hDevice,
  [in] D3D11_1DDI_HDECODE hDecode,
  [in] UINT BufferCount,
  [in] const D3DWDDM2_4DDI_VIDEO_DECODER_BUFFER_DESC *pBufferDesc
)
{...}

参数

[in] hDevice

显示设备的句柄 (图形上下文) 。

[in] hDecode

通过调用 CreateVideoDecoder 函数创建的视频解码器对象的句柄。

[in] BufferCount

数组中 pBufferDesc 参数引用的缓冲区数。

[in] pBufferDesc

指向一个或多个D3DWDDM2_4DDI_VIDEO_DECODER_BUFFER_DESC结构的数组的指针。 有关详细信息,请参见“备注”部分。

返回值

返回以下 HRESULT 值之一:

返回代码 说明
S_OK 已成功协商加密会话的会话密钥。
E_OUTOFMEMORY 内存无法完成操作。

注解

pBufferDesc 参数指向一个或多个D3DWDDM2_4DDI_VIDEO_DECODER_BUFFER_DESC结构的数组。 数组中的每个元素都描述了提交进行解码的压缩视频帧缓冲区。

每个D3DWDDM2_4DDI_VIDEO_DECODER_BUFFER_DESC结构包括以下数据:

  • 将接收解密和解码帧缓冲区的资源。
  • 一个D3D11_1DDI_ENCRYPTED_BLOCK_INFO结构,用于指定对帧缓冲区的哪些字节进行加密。
  • 指向D3D11_1DDI_AES_CTR_IV结构的指针,该结构包含帧缓冲区数据的初始化向量 (IV) ,该帧缓冲区数据使用 128 位高级加密标准 CTR 模式 (AES-CTR) 块加密算法进行加密。

注意

如果解码缓冲区不包含任何加密数据,则此指针将设置为 NULL。 此函数不接受可能已设置的 Microsoft Direct3D 11 谓词。

要求

要求
Header d3d10umddi.h