MFCreateDXGISurfaceBuffer 函数 (mfapi.h)

创建媒体缓冲区以管理 Microsoft DirectX 图形基础结构 (DXGI) 图面。

语法

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

parameters

[in] riid

标识 DXGI 图面的类型。 此值必须 IID_ID3D11Texture2D

[in] punkSurface

指向 DXGI 图面的 IUnknown 接口的指针。

[in] uSubresourceIndex

图面子资源的从零开始的索引。 媒体缓冲区对象与此子资源相关联。

[in] fBottomUpWhenLinear

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

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

[out] ppBuffer

接收指向 IMFMediaBuffer 接口的指针。 调用方必须释放缓冲区。

返回值

如果此函数成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

注解

返回的缓冲区对象支持以下接口:

要求

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

另请参阅

媒体基础函数