DirectShow 体系概述
2018-02-27 18:20
281 查看
多媒体的难题
·多媒体流包含了巨大的数据量,而这些数据都必须非常快地被处理
·音频和视频必须同步,因此它们必须在同一时间开始或停止,并以同一速率播放
·数据可能来源很多,如本地文件,网络,电视广播和视频摄像机
·数据有各种各样的格式,如AVI、SAF、MPEG和DV
·程序员无法预知最终用户使用什么样的硬件设备
DirectShow的解决方案
DirectShow被设计成用来解决所有这些难题,它主要的设计目的就是通过将复杂的数据转输、硬件的多样性和同步问题从应用程序中独立出来,从而简化在windows平台上数字媒体应用程序的开发任务。
要实现数据高效地被处理,需要流化音视频数据,而DirectShow会尽可能地使用DirectDraw和DirectSonud,从而高效地将数据送到用户的声音和图形设备中播放。同步则是通过媒体数据中加入时间戳来实现。而DirectShow模块化的架构,使其可以轻松操纵变化多端的源、格式和硬件设备,在这样的架构里,应用程序只需组合和匹配多个filter来实现功能。
DirectShow提供的filter支持基于WDM的采集和调谐设备,也支持早先的VFW采集卡和ACM和VCM接口编写的编码器。
下图显示了应用程序、DirectShow组件和DirectShow支持的硬件和软件组件之间的关系:
如图,DirectShow将应用程序与众多复杂的设备隔离开来,通信和控制这些设备均由DirectShow的Filter来完成。DirectShow同样为某种文件格式提供与之对应的编解码器。
·多媒体流包含了巨大的数据量,而这些数据都必须非常快地被处理
·音频和视频必须同步,因此它们必须在同一时间开始或停止,并以同一速率播放
·数据可能来源很多,如本地文件,网络,电视广播和视频摄像机
·数据有各种各样的格式,如AVI、SAF、MPEG和DV
·程序员无法预知最终用户使用什么样的硬件设备
DirectShow的解决方案
DirectShow被设计成用来解决所有这些难题,它主要的设计目的就是通过将复杂的数据转输、硬件的多样性和同步问题从应用程序中独立出来,从而简化在windows平台上数字媒体应用程序的开发任务。
要实现数据高效地被处理,需要流化音视频数据,而DirectShow会尽可能地使用DirectDraw和DirectSonud,从而高效地将数据送到用户的声音和图形设备中播放。同步则是通过媒体数据中加入时间戳来实现。而DirectShow模块化的架构,使其可以轻松操纵变化多端的源、格式和硬件设备,在这样的架构里,应用程序只需组合和匹配多个filter来实现功能。
DirectShow提供的filter支持基于WDM的采集和调谐设备,也支持早先的VFW采集卡和ACM和VCM接口编写的编码器。
下图显示了应用程序、DirectShow组件和DirectShow支持的硬件和软件组件之间的关系:
如图,DirectShow将应用程序与众多复杂的设备隔离开来,通信和控制这些设备均由DirectShow的Filter来完成。DirectShow同样为某种文件格式提供与之对应的编解码器。
相关文章推荐
- DirectShow编程(3.1)- 关于DirectShow - DirectShow体系概述
- DirectShow编程(3.1)- 关于DirectShow - DirectShow体系概述
- DirectShow编程(3.1)- 关于DirectShow - DirectShow体系概述
- 服务器和网站体系结构:对象模型概述
- 基于.NET 2.0的GIS开源项目SharpMap分析手记(十):开源空间信息软件体系与技术概述
- Windows Touch编程体系结构概述-中文整理
- Hive 概述 体系架构及环境搭建
- 软件测试系列(3)—软件测试体系框架概述
- 性能测试体系概述
- 第I篇PCI体系结构概述
- 第一节 Informatica 体系架构之 Domain 的概述
- JavaEE体系架构概述
- 物联网体系介绍一:概述
- 相克军_Oracle体系_随堂笔记001-概述
- Spring 体系结构(Spring 概述 二)
- 黑马程序员:Java基础——集合框架之体系概述、共性方法与迭代器
- 1、orcal database 11g体系机构概述
- 第I篇PCI体系结构概述
- 概述MVC体系结构
- JavaEE体系架构概述