функция обратного вызова PFND3DWDDM2_4DDI_VIDEODECODERBEGINFRAME_RS4_0 (d3d10umddi.h)

Запускает операцию декодирования DirectX Video Acceleration (DXVA) для декодирования видеокадра.

Синтаксис

PFND3DWDDM2_4DDI_VIDEODECODERBEGINFRAME_RS4_0 Pfnd3dwddm24DdiVideodecoderbeginframeRs40;

HRESULT Pfnd3dwddm24DdiVideodecoderbeginframeRs40(
  D3D10DDI_HDEVICE hDevice,
  D3D11_1DDI_HDECODE hDecode,
  const D3DWDDM2_4DDIARG_VIDEODECODERBEGINFRAME_RS4_0 *pBeginFrame
)
{...}

Параметры

hDevice

Дескриптор устройства отображения (графический контекст).

hDecode

Дескриптор объекта декодера видео, созданного с помощью вызова функции CreateVideoDecoder.

pBeginFrame

Указатель на структуру D3DWDDM2_4DDIARG_VIDEODECODERBEGINFRAME_RS4_0. Дополнительные сведения см. в разделе «Примечания».

Возвращаемое значение

Возвращает одно из следующих значений HRESULT:

Код возврата Описание
S_OK Ключ сеанса для сеанса шифрования успешно согласован.
E_OUTOFMEMORY Память не была доступна для завершения операции.

Комментарии

Если эта функция возвращает S_OK, среда выполнения Microsoft Direct3D вызывает функцию VideoDecoderSubmitBuffers для выполнения операций декодирования. После выполнения всех операций декодирования среда выполнения вызывает функцию VideoDecoderEndFrame, чтобы остановить операцию декодирования видеокадра.

Примечание

Каждый вызов VideoDecoderBeginFrame должен иметь соответствующий вызов VideoDecoderEndFrame, а вызовы VideoDecoderBeginFrame не могут быть вложенными.

Структура D3DWDDM2_4DDIARG_VIDEODECODERBEGINFRAME_RS4_0 содержит следующие данные:

  • Ресурс, который получит расшифрованные и декодированные данные.
  • Ключ содержимого, используемый для шифрования данных видеокадра.

Если элемент pContentKey этой структуры не имеет значения NULL, буфер, на который ссылается этот элемент, содержит ключ содержимого для каждого кадра. Этот ключ необходимо использовать для расшифровки данных вместо ключа сеанса.

Примечание

Если для элемента pContentKey не задано значение NULL, буфер, на который ссылается этот элемент, шифруется с помощью ключа сеанса с алгоритмом AES-ECB.

Если член pContentKey имеет значение NULL, данные видеокадра должны быть расшифрованы с помощью ключа сеанса.

Требования

Требование Значение
Заголовок d3d10umddi.h

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

CreateVideoDecoderNegotiateCryptoSessionKeyeExchange