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


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

Функция DecodeExecute выполняет операцию декодации с помощью заданного устройства декодатора видео Microsoft DirectX (VA).

Синтаксис

PFND3DDDI_DECODEEXECUTE Pfnd3dddiDecodeexecute;

HRESULT Pfnd3dddiDecodeexecute(
  HANDLE hDevice,
  const D3DDDIARG_DECODEEXECUTE *unnamedParam2
)
{...}

Параметры

hDevice

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

unnamedParam2

pData [in]

Указатель на структуру D3DDDIARG_DECODEEXECUTE, описывающую операцию декодации DirectX VA для выполнения.

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

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

Возвращаемый код Описание
S_OK Операция декодирования DirectX VA успешно выполнена.
E_OUTOFMEMORY ДекодированияExecute не удалось выделить необходимую память для его завершения.

Замечания

Среда выполнения Microsoft Direct3D вызывает функцию DecodeExecute для всех стандартных операций декодирование directX VA. При первом вызове DecodeExecute для каждого кадра D3DDDIARG_DECODEEXECUTE структура, указанная pData, должна содержать все данные буфера, необходимые для декодирования кадра. DecodeExecute впоследствии можно вызвать для того же кадра; Однако эти вызовы требуют только добавочных данных. Если ИДЕНТИФИКАТОР GUID для определенного типа декодера DirectX VA не использует буфер, указанный в D3DDDIARG_DECODEEXECUTE, то дескриптор и описание буфера имеют значение NULL. Например, поскольку тип декодирования MPEG2 требует параметров рисунка, буфера макроблока и буфера остаточной разницы, все эти элементы должны присутствовать в первом вызове каждого кадра. Однако в зависимости от размера данных среда выполнения Direct3D может вызывать DecodeExecute для предоставления только дополнительных данных остаточной разницы, необходимых для декодирования всего кадра.

DirectX VA 1.0 поддерживает внешний механизм синхронизации с помощью вызова функции DdMoCompQueryStatus. В DirectX VA 2.0 драйвер отображения в пользовательском режиме должен выполнять собственную синхронизацию, аналогично тому, как он синхронизирует трехмерный канал. Дополнительные сведения об этой синхронизации см. в синхронизации операций декодирования видео.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно в Windows Vista и более поздних версиях операционных систем Windows.
целевая платформа Настольный
заголовка d3dumddi.h (include D3dumddi.h)

См. также

D3DDDIARG_DECODEEXECUTE

D3DDDI_DEVICEFUNCS