MFCreateMemoryBuffer function (mfapi.h)

Allocates system memory and creates a media buffer to manage it.


HRESULT MFCreateMemoryBuffer(
  DWORD          cbMaxLength,
  IMFMediaBuffer **ppBuffer



Size of the buffer, in bytes.


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

Return value

The function returns an HRESULT. Possible values include, but are not limited to, those in the following table.

Return code Description
The function succeeded.
Insufficient memory.


The function allocates a buffer with a 1-byte memory alignment. To allocate a buffer that is aligned to a larger memory boundary, call MFCreateAlignedMemoryBuffer.

When the media buffer object is destroyed, it releases the allocated memory.

This function is available on the following platforms if the Windows Media Format 11 SDK redistributable components are installed:

  • Windows XP with Service Pack 2 (SP2) and later.
  • Windows XP Media Center Edition 2005 with KB900325 (Windows XP Media Center Edition 2005) and KB925766 (October 2006 Update Rollup for Windows XP Media Center Edition) installed.


Minimum supported client Windows Vista [desktop apps | UWP apps]
Minimum supported server Windows Server 2008 [desktop apps | UWP apps]
Target Platform Windows
Header mfapi.h
Library Mfplat.lib
DLL Mfplat.dll

See also

Media Buffers

Media Foundation Functions