GetContentProtectionCaps function

Queries the available content protection for a specified encryption algorithm and video decoder profile.


HRESULT APIENTRY* GetContentProtectionCaps(
  _In_        D3D10DDI_HDEVICE                         hDevice,
  _In_  const GUID                                     *pCryptoType,
  _In_  const GUID                                     *pDecodeProfile,


hDevice [in]

A handle to the display device (graphics context).

pCryptoType [in]

A pointer to a GUID that specifies the type of encryption algorithm to query.

pDecodeProfile [in]

A pointer to a GUID that specifies the decoder profile to query.

pCaps [out]

A pointer to a D3D11_1DDI_VIDEO_CONTENT_PROTECTION_CAPS structure that contains the protection capabilities for the specified encryption algorithm and decoder profile.

Return value

GetContentProtectionCaps returns one of the following values:

Return codeDescription

The content protection capabilities were queried successfully.


The encryption algorithm specified by the pCryptoType parameter is not supported.



The pCryptoType parameter can contain one of the following values:

  • D3DCRYPTOTYPE_AES128_CTR if the driver is configured to use the 128-bit Advanced Encryption Standard CTR mode (AES-CTR) block cipher.

  • D3DCRYPTOTYPE_PROPRIETARY if the driver is configured to use a proprietary encryption algorithm.

  • NULL_GUID if the driver is not configured to use any encryption algorithm.

Note  The Microsoft Direct3D runtime verifies that the pDecodeProfile and pCryptoType parameter data is valid before it calls the GetContentProtectionCaps function.


Minimum supported client

Windows 8

Minimum supported server

Windows Server 2012

Target platform



D3d10umddi.h (include D3d10umddi.h)

See also




Send comments about this topic to Microsoft