DirectShow使用Filter Graph模型来管理整个数据流的处理过程,它是一系列Filter构成的一条流水线,其中的每个Filter都是COM组件。
 
Filter主要有几个大类:
a.Filter:负责读取数据;
b.转换Filter:负责转换数据的格式,常见的视频解码器就是转换Filter
c.渲染Filter:负责输出数据,如播放或存盘操作。
 
每个Filter都有一个或几个引脚,各个Filter通过这些引脚相连形成一个Filter Graph
DirectX9.0 SDK中提供了一个工具GraphEdit,它可以演示Filter之间的连接关系,并执行这个Filter Graph

下面用GraphEdit来展示一个rmvb文件的播放过程:

真正开发的时候,其实就是把这个图用代码描述出来。

 


本文链接地址: DirectShow.2 DirectShow原理
https://blog.qingfengju.com/index.asp?id=213

上一篇: DirectShow.1 最简单的DirectShow应用程序 — 播放视频
下一篇: 用Visual C++ 6.0编译xvid

分类:Win32/C++ 查看次数:6264 发布时间:2010/4/11 10:33:49