天天看点

VFW(Video for Windows) VFW

VFW

  VFW(Video for Windows)是Microsoft推出的关于数字视频的一个   

VFW(Video for Windows) VFW

VFW logo

软件开发包,VFW的核心是AVI文件标准。AVI(Audio Video Interleave)文件中的音、视频 数据帧交错存放。围绕AVI文件,VFW推出了一整套完整的 视频采集、压缩、 解压缩、回放和编辑的 应用程序接口(API)。它引进 AVI的文件标准,该标准未规定如何对视频进行捕获、压缩及播放,仅规定视频和音频该如何存储在硬盘上,在AVI文件中交替存储视频帧和与之相匹配的音频数据。VFW给 程序员提供.VBX和AVICap 窗口类的高级编程工具,使程序员能通过发送消息或设置属性来捕获、播放和编辑视频剪辑。现在用户不必专门安装VFW了,Windows95本身包括了Video for Windows1.1,当用户在安装Windows时,安装程序会自动地安装配置视频所需的组件,如设备驱动程序、视频压缩程序等。 由于AVI 文件格式推出较早且在数字视频技术中有广泛的应用,所以VFW仍然有很大的实用价值,而且进一步发展的趋势。   VFW主要由以下六个模块组成:   (1)AVICAP.DLL:包含了执行视频捕获的函数,它给AVI文件I/O和视频、音频设备 驱动程序提供一个高级接口;   (2)MSVIDEO.DLL:用一套特殊的DrawDib函数来处理屏幕上的视频操作;   (3)MCIAVI.DRV:此驱动程序包括对VFW的MCI命令的 解释器   (4)AVIFILE.DLL:支持由标准 多媒体I/O(mmio)函数提供的更高的命令来访问.AVI文件;   (5)压缩管理器(ICM):管理用于视频压缩-解压缩的编解码器(CODEC);   (6)音频压缩管理器ACM:提供与ICM相似的服务,不同的是它适于波形音频。   Visual C++在支持VFW方面提供有vfw32.lib、 msacm32.lib 、winmm.lib等类似的库。特别是它提供了功能强大、简单易行、类似于MCIWnd的窗口类AVICap。AVICap为应用程序提供了一个简单的、基于消息的接口,使之能访问视频和波形音频硬件,并能在将 视频流捕获到硬盘上的过程中进行控制   在VC++开发环境中调用VFW和使用其它开发包没有什么不同,只是需要将VFW32.lib文件加入工程中,但在开放视频捕捉与压缩管理程序时需要其它软件硬件设置。VFW为AVI文件提供了丰富的处理函数和宏定义,AVI文件的特点在于它是典型的 数据流文件,它由视频流、 音频流、文本流组成。所以对AVI文件的处理主要是处理文件流。