读书笔记(DirectShow开发指南) 1

    第一次在CSDN上写博客,多多关照。

    DirectX是一种标准,或者说是一种协议,或者中间层,时硬件与应用开发人员的联络员。

 

    DirectX9.0家族的成员:

    1.DirectX Graphics 

           集成了以前的DirectDraw和Direct3D。

           DirectDraw负责2D加速,以实现对显卡内存和系统内存的直接操作;

           Direct3D  提供三维绘图的硬件接口,是开发3D游戏的基础。

    2.DirectInput

           主要支持输入服务(包括鼠标,键盘,游戏杆),同时也提供输出设备。

    3.DirectPlay

           主要提供多人网络游戏的通信,组织功能。

    4.DirectSetup

           主要提供自动安装DirectX组件的API功能

    5.DirectMusic

           主要直至MIDI音乐合成和播放功能

    6.DirectSound

           主要提供音频捕捉,回放,音效处理,硬件加速,直接设备访问等功能

    7.DirectShow

           为在Windows平台上处理各种格式的媒体文件的回房放,音视频采集等高性能要求的多媒体应用,提供了完整的解决方案。

    8.DirectX Media Objects

           DirectShow Filter的简化模型,提供更方便的流数据处理方案。

    

    下面详细介绍DirectShow。

    DirectShow提供了开发多媒体应用程序的总体框架,或者说它本身一种框架。下面这个图很重要,清晰的说明了问题。

   

     Ring0以下是硬件层,Ring3是属于应用层。

     DirectShow使用FilterGraph模型来管理整个数据流的处理过程。参与数据处理的各个模块叫Filter。

     按照功能,Filter分3类,分别是:Source Filter,Transform Filter,Rendering Filter。

     Source Filter,主要负责获取数据,数据源可以是文件,也可以是音视频采集卡,如数字摄像机等。然后将数据往下传输。

     Transform Filter 主要负责数据的格式转换,例如数据流分离/合成,编码/解码等。然后将数据继续往下传输。

     Rendering Filter 主要负责数据的最终去向---将数据送往显卡、声卡进行多媒体的演示,或者输出到文件进行存储。

      

     这3类Filter就是整个DriectShow的核心,DirectShow又是多媒体应用程序的核心,所以弄懂这3类filter,多媒体应用开发也就算是入门了。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值