| Microsoft DirectX 8.1 (C++) | 

The CBaseMediaFilter class implements the IMediaFilter interface. Use this class for plug-in distributors or other objects that need to support IMediaFilter without supporting the IBaseFilter interface. Do not use this class for filters. Instead, use the CBaseFilter class, or a base class derived from CBaseFilter.
Requirements
Header: Declared in Amfilter.h; include Streams.h.
Library: Use Strmbase.lib (retail builds) or Strmbasd.lib (debug builds).
| Protected Member Variables | |
| m_State | Current state of the object. | 
| m_pClock | Pointer to the object's reference clock. | 
| m_tStart | Reference time that corresponds to stream time 0. | 
| m_clsid | Class identifier (CLSID) of the object. | 
| m_pLock | Pointer to a critical section. | 
| Public Methods | |
| CBaseMediaFilter | Constructor method. | 
| ~CBaseMediaFilter | Destructor method. Virtual. | 
| StreamTime | Retrieves the current stream time. Virtual. | 
| IsActive | Determines whether the object is active (running or paused). | 
| IPersist Methods | |
| GetClassID | Retrieves the class identifier. | 
| IMediaFilter Methods | |
| GetState | Retrieves the object's state (running, stopped, or paused). | 
| SetSyncSource | Sets a reference clock for the object. | 
| GetSyncSource | Retrieves the reference clock that the object is using. | 
| Stop | Stops the object. | 
| Pause | Pauses the object. | 
| Run | Runs the object. |