MFCreateDXGISurfaceBuffer function (mfapi.h)

Creates a media buffer to manage a Microsoft DirectX Graphics Infrastructure (DXGI) surface.

Syntax

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

Parameters

[in] riid

Identifies the type of DXGI surface. This value must be IID_ID3D11Texture2D.

[in] punkSurface

A pointer to the IUnknown interface of the DXGI surface.

[in] uSubresourceIndex

The zero-based index of a subresource of the surface. The media buffer object is associated with this subresource.

[in] fBottomUpWhenLinear

If TRUE, the buffer's IMF2DBuffer::ContiguousCopyTo method copies the buffer into a bottom-up format. The bottom-up format is compatible with GDI for uncompressed RGB images. If this parameter is FALSE, the ContiguousCopyTo method copies the buffer into a top-down format, which is compatible with Direct3D.

For more information about top-down versus bottom-up images, see Image Stride.

[out] ppBuffer

Receives a pointer to the IMFMediaBuffer interface. The caller must release the buffer.

Return value

If this function succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code.

Remarks

The returned buffer object supports the following interfaces:

Requirements

Requirement Value
Minimum supported client Windows 8 [desktop apps | UWP apps]
Minimum supported server Windows Server 2012 [desktop apps | UWP apps]
Target Platform Windows
Header mfapi.h
Library Mfplat.lib
DLL Mfplat.dll

See also

Media Foundation Functions