CTransformFilter.DecideBufferSize 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 DecideBufferSize method sets the output pin's buffer requirements.

Syntax

virtual HRESULT DecideBufferSize(
   IMemAllocator        *pAlloc,
   ALLOCATOR_PROPERTIES *ppropInputRequest
) = 0;

Parameters

pAlloc

Pointer to the IMemAllocator interface on the output pin's allocator.

ppropInputRequest

Pointer to an ALLOCATOR_PROPERTIES structure that contains buffer requirements from the downstream input pin.

Return value

Returns S_OK or another HRESULT value.

Remarks

The output pin's CTransformOutputPin::DecideBufferSize method calls this method. The derived class must implement this method. For more information, see CBaseOutputPin::DecideBufferSize.

Requirements

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

See also

CTransformFilter Class