MFCreate2DMediaBuffer 函数 (mfapi.h)

创建用于保存 2D 图像数据的系统内存缓冲区对象。

语法

HRESULT MFCreate2DMediaBuffer(
  [in]  DWORD          dwWidth,
  [in]  DWORD          dwHeight,
  [in]  DWORD          dwFourCC,
  [in]  BOOL           fBottomUp,
  [out] IMFMediaBuffer **ppBuffer
);

parameters

[in] dwWidth

图像的宽度(以像素为单位)。

[in] dwHeight

图像的高度(以像素为单位)。

[in] dwFourCC

用于指定视频格式的 FOURCC 代码或 D3DFORMAT 值。 如果你有视频子类型 GUID,则可以使用子类型的第一个 DWORD

[in] fBottomUp

如果 为 TRUE, 则缓冲区的 IMF2DBuffer::ContiguousCopyTo 方法会将缓冲区复制到自下而上的格式。 对于未压缩的 RGB 图像,自下而上格式与 GDI 兼容。 如果此参数为 FALSE则 ContiguousCopyTo 方法会将缓冲区复制到与 DirectX 兼容的自上而下格式。

有关自上而下与自下而上图像的详细信息,请参阅 图像步幅

[out] ppBuffer

接收指向 IMFMediaBuffer 接口的指针。

返回值

此函数可以返回其中一个值。

返回代码 说明
S_OK
成功。
MF_E_INVALIDMEDIATYPE
无法识别的视频格式。

注解

返回的缓冲区对象还公开 IMF2DBuffer2 接口。

要求

   
最低受支持的客户端 Windows 8 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows Server 2012 [桌面应用 |UWP 应用]
目标平台 Windows
标头 mfapi.h
Library Mfplat.lib
DLL Mfplat.dll

另请参阅

媒体基础函数