网站地图>收藏本站>设为首页
定做流程>服务项目>价格参考>付款方式>诚邀加盟>关于本站>联系我们
当前位置:5173毕业设计论文网文章资讯VC

局域网视频监控系统的设计

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2012-02-10 22:46:00
QQ交谈在线咨询详情 5173论文网竭诚为您服务 本站永久域名:www.lw5173.com

3.2  视频捕获方案的设计
3.2.1  视频捕获方案的选择
当前,在Windows 平台下开发视频应用程序一般采用两种方式:
一种是基于软件开发包DirectShow SDK(Software development kit)进行。DirectShow是一个windows平台上的流媒体框架,提供了高质量的多媒体流采集和回放功能。它支持多种多样的媒体文件格式,包括ASF、MPEG、AVI、MP3和WAV文件,DirectShow整合了其它的DirectX技术,能自动地侦测并使用可利用的音视频硬件加速,也能支持没有硬件加速的系统。DirectShow大大简化了媒体回放、格式转换和采集工作。DirectShow是建立在组件对象模型(COM)上的,因此当你编写DirectShow应用时,你必须具备COM客户端程序编写的知识。对于大部分的应用,你不需要实现自己的COM对象,DirectShow提供了大部分你需要的DirectShow组件,但是假如你需要编写自己的DirectShow组件,你还需要具备编写COM组件的知识。这个开发包通常都会包含所需要的API函数、帮助文档、使用手册、辅助工具等资源。也就是说SDK实际上就是这些开发资源的一个集合。使用这种方式要求在电脑上安装上相应的组件。
另一种方式是基于上一节中介绍的VFW(Video for Windows)进行的。VFW 做为Windows平台下的视频应用程序提供的软件工具包,用户可以通过它们很方便地实现视频捕获、视频编辑及视频播放等通用功能,还可利用回调函数开发更复杂的视频应用程序。它将开发者从硬件的底层束缚中解放出来,大大简化了数字视频捕获这一原本很复杂的工作,利用它可以很方便的将模拟视频信号数字化,并支持进一步处理和播放,为开发实时视频应用程序开辟了道路。它的特点是播放视频时不需要专用的硬件设备,而且应用灵活,可以满足视频应用程序开发的需要。Windows操作系统自身就携带了VFW,系统安装时会自动安装VFW的相关组件。VC++自4.0以来就支持VFW,大大简化了视频应用程序的开发。
3.3  视频传输方案设计
3.3.1  传输层协议的选择
局域网[10]是基于TCP/IP体系结构的,为了保证适用本系统也采用TCP/IP协议。实现局域网视频图象的传输,传输协议是最为关键的。本文传输层用了两种方案,控制采用TCP协议,传输采用UDP协议,下面分别对这两个方案做介绍。
1) 根据传输所使用的协议是TCP,称之为TCP报文段。传输控制协议TCP中包含了专门的传递保证机制,提供可靠的全双工通信。当数据接收方收到发送方传来的信息时,会自动向发送方发出确认消息;发送方只有在接收到该确认消息之后才继续传送其它信息,否则将一直等待直到收到确认信息为止。数据传输结束后要释放连接。因此,通常人们把TCP协议称为可靠的传输协议。
2)UDP和TCP协议的主要区别是两者在如何实现信息的可靠传递方面不同。根据传输所使用的协议是UDP,称之为UDP用户数据报。UDP协议不提供数据传送的保证机制。如果在从发送方到接收方的传递过程中出现数据报的丢失,协议本身并不能做出任何检测或提示。因此,通常人们把UDP协议称为不可靠的传输协议。
在TCP协议中发送方和接收方必须交换额外的信息以保证接收方已经接收到所发送的数据包并且所接收到的数据和发送方所发送的数据在内容和顺序上是完全一致的。我们在视频发送之前,要先确定两端已经建立了连接,如果有一端没有打开,或者程序出错,另一方必须确保能知道这个事件。所以确立连接和结束连接这部分只能是TCP协议。
3.3.3  套接字方案设计
在MFC库中提供了对Socket的封装,有两个类:
1)异步类CAsyncSocket[12],它封装了异步、非阻塞Socket的基本功能,用它做常用的网络通信软件很方便。但它屏蔽了Socket的异步、非阻塞等概念,开发人员无需了解异步、非阻塞Socket的原理和工作机制。服务器端和客户端的应用程序均是基于MFC的标准对话框,网络通信部分基于CAsyncSocket实现。当你获得了一个异步连接后,实际上你扫除了发送动作与接收动作之间的依赖性。所以你随时可以发包,也随时可能收到包。发送、接收函数都是异步非阻塞的,顷刻就能完成,所以收发交错进行着,你可以一直工作,保持很高的效率。
2)CSocket类是CAsyncSocket导出的类,提供了更高层次的抽象,封装了Socket实现中的许多细节。
局域网实时视频传输采用服务器/客户机模式。我采用了异步非阻塞套接字来进行此次网络通信程序的开发。而CAsyncSocket正封装了这个功能,它完全可以满足该系统的需要。所以我们选用CAsyncSocket套接字。
 


以上内容只是毕业设计作品的部分资料介绍,如果了解更多详情请联系客服QQ:57510459
     购买帮助>>

Tags:

作者:佚名

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论