Поделиться через


Структура DDICONTENTPROTECTIONCAPS (d3dumddi.h)

Структура DDICONTENTPROTECTIONCAPS описывает определенную комбинацию шифрования и декодирования, которую использует драйвер.

Синтаксис

typedef struct _DDICONTENTPROTECTIONCAPS {
  [in] GUID CryptoType;
  [in] GUID DecodeProfile;
} DDICONTENTPROTECTIONCAPS;

Члены

[in] CryptoType

GUID, указывающий тип шифрования, который использует драйвер. В настоящее время определены идентификаторы GUID:

D3DCRYPTOTYPE_AES128_CTR

Идентификатор GUID, указывающий блочный шифр AES-CRT 128-бит.

D3DCRYPTOTYPE_PROPRIETARY

GUID, указывающий собственный алгоритм шифрования.

Значение NULL указывает, что шифрование не используется.

[in] DecodeProfile

GUID, указывающий профиль декодирования DirectX Video Acceleration (DirectX VA), используемый драйвером, а также тип шифрования, который указывает член CryptoType . Не все драйверы разрешают шифрование всех типов. Например, MPEG2 IDCT часто требует, чтобы частные библиотеки, которые поставщик оборудования предоставляет, выполняли проприетарное шифрование. Значение NULL указывает, что профиль декодирования DirectX VA не используется.

Комментарии

Среда выполнения указывает указатель на структуру DDICONTENTPROTECTIONCAPS в элементе pInfoструктуры D3DDDIARG_GETCAPS вместе со значением D3DDDICAPS_GETCONTENTPROTECTIONCAPS в элементе Type D3DDDIARG_GETCAPS в вызове функции GetCaps драйвера отображения пользовательского режима для определения возможностей защиты содержимого, поддерживаемых драйвером. GetCaps драйвера возвращает указатель на заполненную структуру D3DCONTENTPROTECTIONCAPS в элементе pData D3DDDIARG_GETCAPS, которая описывает возможности защиты содержимого, поддерживаемые драйвером. Приложение вызывает метод IDirect3DDevice9Video::GetContentProtectionCaps для получения этих возможностей защиты содержимого. Дополнительные сведения об IDirect3DDevice9Video::GetContentProtectionCaps и D3DCONTENTPROTECTIONCAPS см. в документации по пакету SDK для DirectX.

Если среда выполнения указывает NULL_GUID (все нули) в DecodeProfile, драйвер должен возвращать возможности защиты содержимого, которые относятся к тем случаям, когда профиль декодирования DirectX VA не используется. Эти возможности защиты содержимого соответствуют функциям DDI защиты содержимого, которые при необходимости реализует драйвер. Дополнительные сведения об этих необязательных функциях см. в статье Content Protection DDI.

Если тип шифрования, указанный в элементе CryptoType , поддерживается графическим оборудованием и драйвером, но не поддерживается профилем декодирования DirectX VA, указанным в элементе DecodeProfile , функция GetCaps драйвера должна возвращать D3DDDIERR_UNSUPPORTEDCRYPTO. Если тип шифрования, указанный в элементе CryptoType , не поддерживается, функция GetCaps драйвера должна возвращать D3DDDIERR_NOTAVAILABLE.

Если среда выполнения указывает NULL_GUID в элементе CryptoType , драйвер должен сообщить о надмножестве своих возможностей защиты содержимого. Например, если тип шифрования A поддерживает некоторые возможности, а тип шифрования B поддерживает некоторые другие возможности, драйвер должен возвращать совокупные возможности.

Требования

Требование Значение
Минимальная версия клиента DDICONTENTPROTECTIONCAPS поддерживается начиная с операционной системы Windows 7.
Верхняя часть d3dumddi.h (включая D3dumddi.h)

См. также раздел

D3DDDIARG_GETCAPS

GetCaps