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


Метод IDirectXVideoDecoder::GetBuffer (dxva2api.h)

Извлекает указатель на буфер декодера DirectX Video Acceleration (DXVA).

Синтаксис

HRESULT GetBuffer(
  [in]  UINT BufferType,
  [out] void **ppBuffer,
  [out] UINT *pBufferSize
);

Параметры

[in] BufferType

Тип извлекаемого буфера. Используйте одно из следующих значений.

Значение Значение
DXVA2_PictureParametersBufferType
Буфер параметров декодирования рисунков.
DXVA2_MacroBlockControlBufferType
Буфер команд управления макроблоком.
DXVA2_ResidualDifferenceBufferType
Буфер данных блока с разницей остатков.
DXVA2_DeblockingControlBufferType
Разблокирование буфера команд управления фильтром.
DXVA2_InverseQuantizationMatrixBufferType
Буфер матрицы обратного квантования.
DXVA2_SliceControlBufferType
Буфер управления срезом.
DXVA2_BitStreamDateBufferType
Буфер данных битового потока.
DXVA2_MotionVectorBuffer
Буфер вектора движения.
DXVA2_FilmGrainBuffer
Буфер данных синтеза плёнки.

[out] ppBuffer

Получает указатель на начало буфера памяти.

[out] pBufferSize

Получает размер буфера в байтах.

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

Метод возвращает HRESULT. Допустимые значения включают, но не ограничиваются, значения, приведенные в следующей таблице.

Код возврата Описание
S_OK
Метод выполнен успешно.

Комментарии

Метод блокирует поверхность Direct3D, содержащую буфер. Завершив использование буфера, вызовите IDirectXVideoDecoder::ReleaseBuffer , чтобы разблокировать поверхность.

Этот метод может блокироваться, если на GPU поставлено в очередь слишком много операций. Метод разблокирует, когда становится доступен свободный буфер.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header dxva2api.h

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

DirectX Video Acceleration 2.0

IDirectXVideoDecoder