PFND3D11_1DDI_CREATEVIDEODECODER callback function

Creates a video decoder object.

Syntax

PFND3D11_1DDI_CREATEVIDEODECODER Pfnd3d111DdiCreatevideodecoder;

HRESULT Pfnd3d111DdiCreatevideodecoder(
  D3D10DDI_HDEVICE Arg1,
  const D3D11_1DDIARG_CREATEVIDEODECODER *Arg2,
  D3D11_1DDI_HDECODE Arg3,
  D3D11_1DDI_HRTDECODE Arg4
)
{...}

Parameters

Arg1

hDevice [in]

A handle to the display device (graphics context).

Arg2

pCreateData [in]

A pointer to a D3D11_1DDIARG_CREATEVIDEODECODER structure. This structure specifies the attributes of the video decoder object to be created.

Arg3

hRTDecode [in]

A handle to the video decoder object that the driver should use when it calls back into the runtime.

Arg4

Return Value

CreateVideoDecoder returns one of the following values:

Return code Description
S_OK The video decoder object was created successfully.
D3DDDIERR_DEVICEREMOVED The graphics adapter was removed.
E_OUTOFMEMORY Memory was not available to complete the operation.

Remarks

The Microsoft Direct3D runtime calls CreateVideoDecoder after it has called the driver's CalcPrivateVideoDecoderSize to determine the size in bytes for the private data that the driver requires for the video decoder object. The runtime allocates the memory for this private data for the driver. The driver uses this memory to store private data that is related to the video decoder object.

When the runtime calls CreateVideoDecoder, it passes the handle to the private data memory in the hDecoder parameter. This handle is actually a pointer to the memory.

The driver must keep track of the handle to the display device that was used to create the cryptographic session. The driver should fail all subsequent calls that use this created cryptographic session, such as VideoDecoderBeginFrame, if the display device that is specified in those calls is different from the display device that was used to create the video decoder.

Requirements

   
Minimum supported client Windows 8
Minimum supported server Windows Server 2012
Target Platform Desktop
Header d3d10umddi.h (include D3d10umddi.h)

See Also

CalcPrivateVideoDecoderSize

D3D11_1DDIARG_CREATEVIDEODECODER

NegotiateCryptoSessionKeyExchange

VideoDecoderBeginFrame