IMemInputPin Interface

This interface provides methods on an input pin to facilitate passing data and flush notifications from a connected output pin of an upstream filter.

When to Implement

Implement this interface on the input pin of every filter. The CBaseInputPin class implements this interface.

When to Use

A connected output pin uses this interface to retrieve an IMemAllocator interface, to pass media samples to the input pin, and to flush pending buffers downstream.

Methods in Vtable Order

The following table shows the methods that appear in the Vtable beneath the standard COM methods inherited from IUnknown.

Method Description
GetAllocator Returns the allocator interface that this input pin proposes as the interface for the output pin to use.
NotifyAllocator Notifies the input pin as to which allocator the output pin is actually going to use.
GetAllocatorRequirements Optional method to use if the filter has specific alignment or prefix requirements but could use an upstream allocator.
Receive Receives the next block of data from the stream.
ReceiveMultiple Receives the next block of data from the stream. This method behaves similarly to the IMemInputPin::Receive method, but it works with multiple samples.
ReceiveCanBlock Determines if sending the IMemInputPin::Receive method might block.


DirectShow applications and DirectShow filters have different include file and link library requirements. See Setting Up the Build Environment for more information.

OS Versions: Windows CE 2.12 and later. Version 2.12 requires DXPAK 1.0 or later.

See Also

DirectShow Interfaces

Last updated on Wednesday, April 13, 2005

© 2005 Microsoft Corporation. All rights reserved.