摄像头录像窗口.ppt

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
摄像头录像窗口

摄像头视频录制窗口的设计 准备工作 设计思路 设计方案 程序设计 在visual C++开发面向对象应用程序时,主要使用两种方法,一种是使用Windows提供的Windows API函数,另一种方法是直接使用Microsoft提供的MFC类库。下面对这两种概念做一个简单的介绍: API (Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是为应用程序提供系统的各种特殊函数及数据结构定义。 MFC类库集成了大量已经预先定义好的类,用户可以根据编程的需要调用相应的类,或根据需要自定义有关的类。 Windows程序结构 入口函数WinMain 他是应用程序的入口。类似于C中的main函数,完成一系列的定义和初始化的工作,并产生消息循环。 应用初始化(窗口类的定义,注册,创建窗口实例和显示窗口4部分) 消息分发循环 消息循环式整个程序运行的核心。 窗口函数 窗口函数定义了应用程序对接收到的不同消息的响应,其中包含了应用程序对各种可能接收到的消息的处理过程,是消息处理分支控制语句的集合,通常窗口函数是由一个或多个switch语句组成,主体是消息处理语句,由一系列的case语句组成。 MSG msg; while(GetMessage(msg,NULL,0,0)) //从消息队列中取得消息 { TranslateMessage(msg); //检索并生成字符消息WM_CHAR DispatchMessage(msg); //将消息发送给相应的窗口函数     } MFC类组织结构和分类 MFC主要的类层次结构视图如下: MFC类库分类 1.根类CObject 2.MFC应用结构类 ? a.应用和线程支持类 ? b.命令例程类 ? c.文档类 ? d.文档模板类 3.窗口,对话框和控件 ? a.CWnd ? b.框架窗口类 ? c.对话框类 ? d.视图类 ? e.控件类 ? f.控件条类 4.菜单类 5.视图和打印类 ? a.输出(设备上下文)类 ? b.绘图工具类 6.简单的数据类型类 7.数组,列表和映射类 8.文件和数据库类 ? a.文件类 ? b.DAO类 ? c.ODBC类(CDatabase,CRecordset) 9.Internet和网络类 10.OLE类 11.调试和异常类 设计方案 摄像头的录像过程包括图像的捕捉,AVI文件的创建,文件流的创建,数据的压缩并写入AVI文件,数据的保存。视频的采集实现可以由三种方法实现,分别为VFW、DirectShow和SDK ,下面举这三种方案做一个简单的介绍: DircetShow是微软公司提供的一套在windows平台上进行流媒体处理的开发包,与DirectX开发包一起发布。 DircetShow为多媒体流的捕捉和回放提供了强有力的支持。用DircetShow开发应用程序,我们可以很方便的从支持WDM驱动模型的采 这种捕捉方法是Microsoft的Visual C++自从4.0版就开始支持Video for 视窗系统(简称VFW),这给视频捕捉编程带来了非常大的方便,利用VFW技术的能提高视频捕捉的灵活性,减少了对视频设备的依赖。在VC++6.0中,含有MCIAVI、DRAWDIB、AVIFILE和AVICAP等组件。通过他们之间的协调工作,能完成播放、编辑、文件管理和视频捕捉等功能,为视频图像处理和分析带来非常大的便利。 设计思路 在这里我选定了用VFW作为我的设计方案,下面我来讲一下我的设计思路。 开发流程包括以下几个方面: 视频窗口的创建 视频预览窗口的实现 捕捉参数的设置 回调函数的设计 视频录像 停止链接 视频预览窗口的创建 在进行视频程序开发时,第一步需要创建一个视频预览窗口,首先调用capCreateCaptureWindow函数创建具有WS_POPUP风格的视频捕捉窗口,该函数语法如下: HWND VFWAPI capCreateCaptureWindow(LPCSTR lpszWindowName, DWORD dwStyle, int x,???????? int y, int nWidth, int nHeight, HWND hWnd, int nID); 在上一个导入“vfw32.lib”库文件的对话框的工程中添加Picture控件,同时添加两个按钮控件,实现开始录像和停止链接设备链接的功能。在对话框初始化时创建视频预览窗口,连接视频驱动程序,设置预览帧率,开始视频预览。在链接视频设备时要调用capDriverConnect函数连接驱动程序,设置视频捕捉窗口的大小、显示

文档评论(0)

pangzilva + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档