WEB开发网
开发学院软件开发VC 用VC++ 5.0实现视频捕获编程 阅读

用VC++ 5.0实现视频捕获编程

 2008-11-13 19:31:19 来源:WEB开发网   
核心提示: 相应的宏来完成,例如,用VC++ 5.0实现视频捕获编程(4),SendMessage(hWndCap,WM_CAP_DRIVER_CONNECT,0,0L)与capDriverConnect(hWndCap,0)的作用相同,都是将创建的捕获窗同视频输入器件连接起来,图4中的图像就是按照图

相应的宏来完成。例如,SendMessage(hWndCap,WM_CAP_DRIVER_CONNECT,0,0L)

与capDriverConnect(hWndCap,0)的作用相同,都是将创建的捕获窗同视频输入

器件连接起来。

在利用AVICap编程时,应该熟悉与视频捕获相关的结构,下面对常用的四个结

构作一简要介绍,对于前三个结构都有对应的函数来设置和获得结构包含的信息:

(1)CAPSTATUS:定义了捕获窗口的当前状态,如图像的宽、高等;

(2)CAPDRIVERCAPS:定义了捕获驱动器的能力,如有无视频叠加能力、有无控制视频源、视频格式的对话框等;

(3)CAPTUREPARMS:包含控制视频流捕获过程的参数,如捕获帧频、指定键盘

或鼠标键以终止捕获、捕获时间限制等;

(4)VIDEOHDR:定义了视频数据块的头信息,在编写回调函数时常用到其数据

成员lpData(指向数据缓存的指针)和dwBufferLength(数据缓存的大小)。

三、AVICap编程示例

下面以一个简单的应用程序为例说明AVICap的使用,该程序对输入的视频流进

行实时的显示和捕获,演示需要一个视频捕获卡和摄像头。界面中的菜单项如图1所

示。其中,菜单项Display可以以Preview或Overlay模式显示图像;菜单项Setting可

通过弹出AVICap提供的对话框VideoSource、VideoFormat和VideoDisplay来对捕获进行设置,图4中的图像就是按照图2、图3的对话框所示进行设置、以Preview模式显示的结果;菜单项Capture可将视频流或单帧图像捕获到指定的文件中去。

由于篇幅有限,下面仅介绍与视频捕获相关的编程。

1、定义全局变量:

HWNDghWndCap;//捕获窗的句柄

CAPDRIVERCAPSgCapDriverCaps;//视频驱动器的能力

上一页  1 2 3 4 5 6 7  下一页

Tags:VC 实现 视频

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接