高余胜
随着计算机技术的飞速发展越来越多的需求要软件来实现视频采集,而且也要获得较好的图像效果。在这种情况下,Windows平台专门开发了满足这种需求的信息处理和集成技术,也为数字视频信息的实时捕捉提供了多种实现技术,其中主要有VFW技术和Directshow技术。文章将主要介绍VFW和Directshow技术,并简要介绍了运用该技术实现视频捕捉的技术研究。
近年来Internet不断发展,人们希望通过网络可以传输更多的视频信息或者视频信号,而实现视频传输的核心问题便是多媒体信息的压缩及传输技术。传统意义上的视频处理系统以模拟设备为主,其结构是一种单功能、单向、集总方式的信息采集系统,因此传统设备尽管发展到很高的水平,但其局限性依然存在,已无太大发展空间。面对越来越高质量的需求,视频字数化的发展将是必由之路。实时数字视频处理系统具有传统模拟处理系统无法比拟的优点,而且符合当前字数化、网络化和智能化的发展趋势,所以基于VFW和Directshow的视频捕捉技术的数字视频处理正在逐步取代传统视频处理技术并广泛应用于多媒体发展中。
1 VFW视频捕捉技术
VFW(Video for Windows)即视窗操作系统下载视频是Microsoft公司为适应社会发展需求而推出的关于数字视频的一个软件开发包,而AVI(Audio VideoInterleave)文件标准是VFW技术的核心。VFW的优势在于简单直观,能较快捷地运用回调函数、宏等函数完成实时的视频捕捉和单帧捕获并提供对视频源的控制。此外,AVICap类能直接访问视频缓冲区,而不需要生成中间文件,实时性和效率较高。
实现VFW视频捕捉技术的流程可以设计为:创建视频捕获窗口、捕获窗口与视频捕获驱动链接、视频捕获参数的设置、设置捕获窗口的显示模式、注册系统回调函数、捕获图像到缓存或文件并进行相应处理、捕获结束。值得注意的是,VFW技术也有某些缺点:首先该技术支持的数据格式有限,只能处理AVI的文件;其次,采用VFW技术的捕获系统存在通用性差、维护困难、系统可扩展性差等问技术题。在网络视频会议等领域迅速发展的今天,VFW架构自身固有的设计缺陷逐步显露出来,缺少对视频会议、电视观赏、视频场捕捉以及处理附加数据流如垂直消隐间隔等的关键功能支持。
2 Directshow视频捕捉技术
DirectShow是微软公司推出的新一代基于COM(Component Object Model)的流媒体处理的开发包,与DirectX开发包一起发布。DirectShow使用一种叫FilterGraph的模型来管理整个数据流的处理过程,运用DirectShow,我们可以很方便地从支持WDM驱动模型的采集卡上捕获数据,并且进行相应的后期处理乃至存储到文件中。它广泛地支持各种媒体格式,包括Asf、Avi、Mp3、Wave等,为多媒体流的捕捉和回放提供了强有力的支持。
DirectShow视频捕捉技术应主要完成的功能有:枚举系统中视频采集设备,并生成列表;调整输图出像的显示参数;对采集设备进行视频内容的预览;给编码器filter提供帧图像。Filter是Directshow技术里最基本的概念,也是该技术能够实现视频捕捉技术的关键部分。按照功能大致分为三类:source Filters、Transform Filters和Renderer Filters。Filter是FilterGraph中的最小功能模块,Direetshow使用FilterGraph来管理Filter,Filteroraph是Filter的容器。SourceFilters主要负责取得数据,然后将数据往下传输;Transform Filters主要负责数据的格式转换、传输;Renderer Fihers主要负责数据的最终去向。值得注意的是,每个部分都有几个甚至更多Filter去完成功能,各个Filter之间协同工作。除了系统提供的Filter外,我们可以根据自己的实际需要制定Filter,从而满足我们的需要。
Directshow的视频捕捉技术具有VFW不具有的优势:成本低,使用廉价的摄像头和话筒设备,可以被普通用户接;可以实现多种文件格式的转换,从而满足不同客户的需求;此外,Directshow技术也提供了更好的视频和音频质量,并可以根据用户需要对音、视频作出相应调整。
3 总结
随着视频捕捉技术的快速发展,用户对视频处理技术的要求也越来越高,尤其是现在网络技术的流行,将是该系统功能扩展的很有价值的方向。在此基礎上,为提高视频捕捉性能,目前大多Windows平台下的视频采集都采用了VFW技术作为驱动模型,并开发所需的微驱动程序。
(作者单位:沈阳大学文化传媒学院)