论文
第30卷第19期
堕!£2△笪!
-多媒体技术及应用-计算机工程2004年lo月竺!堡21111垦!g!!!!!!!g文IIq,Iooo—寸428(2004)1争枷13l—加3文■标识码tA竺!!!竺!!!竺中囝分娄号tTP393.4
基于DirectShow的视频捕获
张理t‘,张字‘。蒜文济
{I西南石油学院研究生院.成都610500;2西南石油学院计算机科学学院,成都6J0500)
摘妥:介绍了DirectShow的原理,针对传统的多媒体系统开发方法的不足,提出了一种基于DirectShow的视频捕获软件设计方案。对系统中视频实时捕获及压缩存储,媒体流的读取回放作出了分析,构建了过滤器圈。
关锋两:Di畦ctShow;视频捕获;过滤器;过滤器图;捕获图;过滤器图管理器
VideoCaptureBased
(I
2onDirectShowWenbin。6105001
onZHANGLihui’.ZHANGYu。.CHENInstituteofGraduate,SouthwestPetroleumCollege,Chengdu610500;InstituteofComputerScience,SouthwestPetroleumCollege,ChengduBasedIAbstractlInthispaper.thetheoryofDirectShowisdiscussedsystematicallyandcolnprehensively
ofvideocapture
BgeanalyzingtheproblemsinclassicalwayspresentedThetechnologyofrealtimeofdevelopingnluhimcdlasystem,adesignschemeso,waresystembasedonarcDirectShowisbuilt.videocapture.compressedstolageandrenderingvideoalsointroducedAndfiltergraphs
【KeywordslDirectShow;Videocapture;Filter:Filtergraph;Capturegraph;Filtergraphmanager
随着数字视音频处理、数字信息存储技术的不断发展,
多媒体应用已经越米越j{I!入到人们的日常生活中。在很多的
公共场所或安全性要求比较高的地方,如超市、银行、保险
室等,人们需要做较高程度的监视或保密工作。因此提出了
数字视频监控系统,而视频的实时捕获则是其核心之一。在
Windows平台L,传统的多媒体监控系统对规频与音频的处
理主要基于VFW(VideoForWindows)技术。VFW函数在形
式l:是一组普通函数、宏函数和回凋函数。这种传统的编程
模式在整体上破坏丁软件的体系结构。因此系统存在通用性
差、可扩张性不强、维护困难等缺点。微软推出了新一代多IMediaEventEx:用来创建消息并发送到应用层(比如当媒体播艘完时发送流结束消息)。IMediaPosition:可以搜寻并定位到媒体流的某一点上,并能控制媒体回放速率。IEnumFilters:由过滤器图管理器执行,用来列举一个过滤器图中所有的过滤器。IBaseFilter:14tDireetShow过滤器部件执行。IEnumPins:由过滤器部件执行,用来列举过滤器所具有的针(包括输入输出针kIPin:由过滤器的针执行。1.311irectShow帕蓐理
DirectShow的核心是称为过滤器的插件式模块系统,该媒体开发软件包——DirectShow。它给出了一种全新的多
媒体数据处理模型,井封装了视频捕获、压缩、解压缩等一
系列算祛,为多媒体应用系统的开发提供了良好的平台。本
文给出了一种基于DirectShow的视频捕获软件设计方案,并
对方案实现中的具体问题进行了阐述。系统配置在过滤器圈中。过滤器圈管理器负责检查这些过滤器的组织和连接并控制各过滤器间的数据流动。每个过滤器都是一个COM对象,能够对数据流进行多种操作,如读取、拷贝、压缩和写入文件。每个过滤器都有针脚,针脚也
是一个COM对象,表现为过滤器上的单向数据流的连接
点。过滤器间通过钟脚进行连接,输入针接收数据进入过滤
器,输出针向其它过滤器提供数据。为了使过滤器图能够正
常工作,过滤器必须以正确的顺序相连,数据流也必须以正
确的次序启停,详见图l。
DirectShow提供的过滤器按照功能大致分为3类:源过
滤器,转换过滤器和渲染过滤器。源过滤器从数据源(磁盘
文件、Intemetllt务器、录像机和视频捕获卡等)读数据,将DirectShow的原理1.1组件对象辏型技术cOMIDirectShow是基二rCOM(ComponentObjectModel)技术的。COM是 种以组件为发布单元的对象模型。从软件模型的角度来理解,COM组件是具有一定功能的模块,这些模块可以单独开发、编译甚至调试和运行。基于COM技术的软件,1:发就是编写COM组件并将组件组合,软件的维护与升级就是对组件进行替换。另外,对于COM组件的访问
必须通过接E1(Interface)来完成,由于cOM技术所规定的接
口不变性,因此保证r组件自身的兼容性。
1.2重要的COM接口
DirectShow建立在cOM组件技术上,所有的功能和服务
通过相应的COM接El来执行和实现,以下是DirectShow:l睫供
的一些重要接口:
IGIa曲BuiMer:用来刨建过滤器图管理器。
lcaplurcGraphBuiIdcr2:用于创建并控制捕获图。
IMediaControl:用来控制过滤器图中的媒体搋,提供了启停过
滤器圈的方法。其引入过滤器图。转换过滤器对获取的数据流进行处理并往前传递数据。谊染过滤器用来渲染数据,通常将数据递交到一个硬件设备,但也可以递交到任何能够接收媒体输入的位置。上游过滤器描述传递数据的过滤器,下游过滤器描述数据应到达的下一个过滤器。这种差异很重要,因为媒体数据往下流动,而其它信息可以往上传递。柞者筲介:张理慧(1979一),女,硕士生。主研方向:多媒体技术,数字图像处理;张字,硕士生;陈文滨,剐教授收囊日摇:2003 08—19E-mail:helen9220@163net一13l一
基于DirectShow的视频捕获_信息与通信_工程科技_专业资料。基于DirectShow的视频捕获眵中国她代埘装备 2006年第10期(总第44期) 基于DirectShow的视频捕获注(南京...
笔者使用 visual studio 2005 来开发了基于 DirectShow 的视频捕获软件,并用开发的软件对 映美精相机进行了测试。本软件不但可以实现对相机的视频捕获,而且还可以抓取...
基于DirectShow的视频捕获基于DirectShow的视频捕获隐藏>> 维普资讯 http://www.cqvip.com 9第3 卷 第 1期 0o.o1 3№i 9 计 算 机 工 程 20年1 月...
关于DirectShow在Video视频... 14页 免费 directshow资料 34页 免费 基于DirectShow的视频捕获 5页 免费 基于DirectShow视频及图片... 21页 1财富值 DirectShow...
利用C ++ Builder实现基于DirectShow的视频捕获_专业资料。阐述了实现视频捕获与回放的可选方案,介绍了DirectShow的原理,针对传统视频播放与捕获的不足之处,提出了...
基于Directshow的VMR视频捕获的实现_专业资料。该文介绍了Directshow技术,设计了基于Directshow的VMR(Video Mixing Renderer)视频捕获方案.在流畅预览视频的同时,捕捉...
用户根据需要可以自由地组合这些过 万 方数据 3.3视频捕获的实现过程 下面以捕获摄像头视频上屏显示为例说明 Vc++实现基于Directshow的视频捕获过程。 (1)创建一...
No.25,September2010,PP.7110—7111 基于Directshow的VMR视频捕获的实现曾华山。宋钰(五邑大学计算机应用技术。广东江门529020) 摘要:该文介绍了Directshow技术,设计...
DirectShow在视频捕获中的应用_专业资料。Microsoft DirectShow是一个基于Microsoft Windows平台的流媒体体系结构,它把应用程序与数据传输、硬件差异、同步等复杂工作...

我要评论