Функция MFCreateDXSurfaceBuffer (mfapi.h)

Создает объект буфера мультимедиа, который управляет поверхностью Direct3D 9.

Синтаксис

HRESULT MFCreateDXSurfaceBuffer(
  [in]  REFIID         riid,
  [in]  IUnknown       *punkSurface,
  [in]  BOOL           fBottomUpWhenLinear,
  [out] IMFMediaBuffer **ppBuffer
);

Параметры

[in] riid

Определяет тип поверхности Direct3D 9. В настоящее время это значение должно быть IID_IDirect3DSurface9.

[in] punkSurface

Указатель на интерфейс IUnknown поверхности DirectX.

[in] fBottomUpWhenLinear

Если задано значение TRUE, метод IMF2DBuffer::ContiguousCopyTo буфера копирует буфер в формат снизу вверх. Формат снизу вверх совместим с GDI для несжатых RGB-изображений. Если этот параметр имеет значение FALSE, метод ContiguousCopyTo копирует буфер в формат сверху вниз, совместимый с DirectX.

Дополнительные сведения об изображениях сверху вниз и снизу вверх см. в разделе Image Stride.

[out] ppBuffer

Получает указатель на интерфейс IMFMediaBuffer . Вызывающий объект должен освободить буфер.

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

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

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

Комментарии

Эта функция создает объект буфера мультимедиа, содержащий указатель на поверхность Direct3D, указанную в punkSurface. Блокировка буфера предоставляет вызывающей объекту доступ к контактной памяти. При уничтожении объекта буфера он освобождает поверхность. Дополнительные сведения о буферах мультимедиа см. в разделе Буферы мультимедиа.

Примечание Эта функция не выделяет саму поверхность Direct3D.
 
Объект buffer, созданный этой функцией, также предоставляет интерфейс IMF2DBuffer . Дополнительные сведения см. в разделе DirectX Surface Buffer.

Эта функция не поддерживает поверхности DXGI.

Требования

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

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

Буфер Поверхности DirectX

Буферы мультимедиа

Функции Media Foundation