IBaseFilter Interface
The IBaseFilter interface abstracts an object that has typed input and output connections and can be aggregated dynamically. All DirectShow™ filters expose this interface.
Since the IBaseFilter interface derives from the IMediaFilter interface, it inherits IPersist.
When to Implement
Implement this interface on every DirectShow filter. It is recommended that you use the CBaseFilter class library to implement this interface.
When to Use
The filter graph manager is the primary user of this interface. Applications or other filters can use IBaseFilter methods directly to enumerate or retrieve pins or to get vendor information, but should not use any methods derived from IMediaFilter to control media streaming (use the IMediaControl methods on the filter graph manager instead).
Methods in Vtable Order
IUnknown methods | Description |
---|---|
QueryInterface | Returns pointers to supported interfaces. |
AddRef | Increments the reference count. |
Release | Decrements the reference count. |
IMediaFilter methods | Description |
Stop | Informs the filter to transition to the new (stopped) state. |
Pause | Informs the filter to transition to the new (paused) state. |
Run | Informs the filter to transition to the new (running) state. |
GetState | Determines the state of the filter. |
SetSyncSource | Identifies the reference clock to which the filter should synchronize activity. |
GetSyncSource | Retrieves the current reference clock (or NULL if there is no clock). Passes a time value to synchronize independent streams. |
IBaseFilter methods | Description |
EnumPins | Enumerates the specified pins available on this filter. |
FindPin | Retrieves a pointer to the pin with the specified identifier. |
QueryFilterInfo | Retrieves information about the specified filter. |
JoinFilterGraph | Notifies a filter that it has joined a filter graph. |
QueryVendorInfo | Retrieves optional information supplied by a vendor for the specified filter. |
Last updated on Tuesday, July 13, 2004
© 1992-2000 Microsoft Corporation. All rights reserved.