DirectShow是微软定义的一套接口集合,由不同的接口组成,例如:IBaseFilter,IPin。这些接口之间的关系形成了DirectShow的架构。
DirectX SDK提供了一个C++的BaseClasses,是这些接口的实现。这些实现已经很成熟完善,因此我们不需要重新开发一套类库去实现DirctShow的接口,直接使用就可以。
DirectShow编程就是Filter编程,根据功能实现不同的Filter。推模式的源Filter一般从CSource派生,在派生类中实现特殊的功能,而CSource类使用CSourceStream派生的pin。那么,推模式的源Filter编写就是实现这两个类。