CMediaType.ReallocFormatBuffer method

[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

The ReallocFormatBuffer method reallocates the format block to a new size.

Syntax

BYTE* ReallocFormatBuffer(
   ULONG length
);

Parameters

length

New size required for the format block, in bytes. Must be greater than zero.

Return value

Returns a pointer to the new block if successful. Otherwise, returns either a pointer to the old format block, or NULL.

Remarks

This method allocates a new format block. It copies as much of the existing format block as possible into the new format block. If the new block is smaller than the existing block, the existing format block is truncated. If the new block is larger, the contents of the additional space are undefined. They are not explicitly set to zero.

The method updates the cbFormat and pbFormat members of the AM_MEDIA_TYPE structure.

Requirements

Requirement Value
Header
Mtype.h (include Streams.h)
Library
Strmbase.lib (retail builds);
Strmbasd.lib (debug builds)

See also

CMediaType Class