网络视频监控系统的软件设计_第1页
网络视频监控系统的软件设计_第2页
网络视频监控系统的软件设计_第3页
网络视频监控系统的软件设计_第4页
网络视频监控系统的软件设计_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘 要数字监控系统经历了模拟时代、数字时代发展到了网络时代,网络监控系统已经应用到了各个行业。随着计算机的发展与普及,怎样才能保证计算机系统安全可靠工作已经成为人们关注的热点之一,本设计提出的远程监控系统就是最好的选择。本设计选择的是vc+作为程序开发环境,对客户端软件的开发环境及平台进行了选择,并就其中使用的关键技术:windows sockets编程技术、windows多线程技术、windows图像显示技术、mpeg-4编解码与数据传输技术、流媒体技术做了简介。本设计介绍的是基于计算机网络的第三代数字监控系统,它的基本原理是使用多媒体编码技术将音、视频采集单元输出的模拟信号直接进行数字化压

2、缩,然后通过计算机网络传输到上位机进行解码、播放和存储等操作,同时利用计算机网络的延伸性实现对目的地的远程监控,具有数字传输、数字存储的显著特点,最终完成了一套上位机设计方案。关键词: windows sockets编程;vc+ ;远程监控abstractdigital monitoring system has experience a simulation of the times, the era of development to the internet era, network monitoring system has been used by all kinds of indu

3、stries. with the development and popularization of computers, it has become one of the focus attentions how to ensure computer system reliable and security,i think the remote monitoring system is the best choice.this design uses vc+ as the programming environment, choosing the client software develo

4、pment environment and platform, and uses some key technologies, for example, windows sockets programming,windows multithreading technology, windows image display technology, mpeg-4 series decoding operation and data transfer technology, streaming media technology has been done profiles.this design i

5、s based on the third-generation digital monitoring system of computer networks, its basic principle is the use of multimedia encoding technology to audio, video acquisition unit output of the analog signal directly to digital compression, and then through the computer network transmission to the hos

6、t computer to decode and play and storage operations, while the extension of computer networks to achieve remote monitoring and control of the destination, with digital transmission, a distinctive feature of digital storage and eventually a set of pc design.key words:windows sockets programming;vc +

7、 + ;remote monitoring- 2 -摘 要1abstract2引 言31 绪论11.1 课题背景及研究内容11.2 国内外研究现状21.2.1 数字化视频监控的系统构架21.2.2 数据压缩技术21.3 网络视频监控系统的特点31.3.1 数字化31.3.2 网络化31.4 网络视频监控系统分析51.4.1 网络视频监控系统的构成及结构示意图51.4.2 网络视频监控系统流媒体传输相关协议61.5 社会意义以及应用领域61.5.1 社会意义61.5.2 应用领域72 系统总体设计82.1 总体架构82.1.1 总体设计92.1.2 模块设计92.2 控制逻辑112.2.1 用户

8、控制策略112.2.2 录像存储策略132.2.3 ptz控制策略153 上位机软件总体规划173.1 开发环境 visual c+ 6.0173.2 通信方式183.2.1 udp协议183.2.2 tcp协议203.2.3 socket套接字224 上位机软件设计244.1 设计目标244.2 主界面设计244.2.1 框架结构244.2.2 activex控件调用264.2.3 实时预览/手动录像面板274.3 参数设置以及重要界面截图275 系统测试315.1 测试环境315.2 测试内容315.3 测试结果32结 论34参 考 文 献35附录a部分程序代码36致 谢40引 言视频监控

9、技术在我国从80年代开始兴起,一直是人们关注的应用技术热点之一,它以其直观方便、信息内容丰富而被广泛应用于保安、生产、管理等场合。随着计算机信息技术和网络互连技术的发展,视频图像监控系统一直处于飞速发展的状态。社会不断进步,人们的经济收入、生活条件和质量都有了很大的提高,但是与此同时,由于社会人口的流动性的大大增加,社会结构和社会治安都日趋复杂了,网络视频监控是安全防护的重要手段之一,不但可以凭借自动报警和远程查看功能及时发现非法侵害或对犯罪份子起震慑作用,还可以为公安破案保留必要的证据。本课题试图通过在网络视频监控中引入多种技术如加密技术、计算机图像处理与识别技术、计算机网络技术、视频压缩与

10、解压技术等,设计开发出一个网络视频监控系统,通过中心平台的支撑,实现远程监控、远程双向对话或喊话、自动入侵告警等功能。北华大学毕业设计(论文)1 绪论1.1 课题背景及研究内容随着视频监控方案的应用普及,视频监控已经与人们的生活越来越密切,而随着网络技术的发展,网络视频监控系统应用已经成为一种趋势。尤其是互联网、电视技术、通信技术开始融合以后,基于互联网平台的视频监控网络化是必然的趋势。监控系统作为现代企业不可缺少的重要组成部分,已广泛应用于交通、医院、银行、家居、视频会议和视频点播证券、远程教育等诸多领域,可以有效地避免安全隐患的发生,保障员工人身安全和企业资产不受损失,实现无人值守。 对于

11、大型监控系统来说,网络监控相对本地监控有着无可比拟的优势。网络视频监控系统,是一款采用先进的视频采集压缩技术和网络传输技术的网络视频监控应用软件。不仅具有传统的本地数字监控系统所具有的计算机快速处理能力,数字信息抗干扰能力强、便于快速查询记录、视频图像清晰及单机显示多路图像等优点,而且能够切实发挥宽带网络的优势,通过ip网络,覆盖范围可以达到任何地方的监控目标组合成一个完整的、一体化的系统、真正适应目前视频监控系统针对远程、实时、集中控制的需求通过计算机办公网络平台,可实现办公网络内终端对现场的监视与控制;通过办公计算机局域网与广域联接设备,可实现远程现场的监视与控制,方便快捷。日新月异的网络

12、通信技术,日益成熟的视频音频数字压缩传输、存储技术,都为远程监控领域的开拓与发展奠定了坚实的基础。利用这些技术,便可在无人值守的重要场所放置摄像头和麦克风,将视频和音频的数字压缩信号通过网络传输到远程的pc机,以供实时监控或存储、查询、回放。目前视频监控技术已逐渐成为越来越多行业领域的需求,视频监控系统行业前景可期123。本文正是顺应了监控系统市场巨大的需求,针对一个基于dsp的多客户端多服务器的监控系统,用vc+编程,实现了一整套上位机软件的设计方案,从而为复杂的大型网络监控系统的操作与管理提供了一种可行的方式。在本系统中,每个客户端可以连接多台不同的服务器,每台服务器也可以保持多个不同的客

13、户端连接,因而需要对系统中涉及的各种逻辑策略进行详细的考虑和讨论。为了更有效的实现监控报警,除了传统的报警录像和外部报警输出(警铃等外部告警装置),本系统还提供了多种报警输出方式,例如snmp(simple network management protocol,简单网络管理协议)实现的snmp trap报警方式。上位机的客户端程序采用多线程的任务运行方式,完成了包括播放控制,服务器列表维护,登陆,本地参数设置,远程服务器参数设置,ptz操作控制等功能,实现了对下位机服务器各功能的调度和管理,基本能适应较为大型的监控系统中对各中复杂状况的处理要求。经过长时间的运行测试,本次设计的上位机软件性能

14、基本稳定,各功能运行正常。1.2 国内外研究现状关于视频监控系统的研究主要集中在两个方面:(1)对数字化视频监控的系统构架研究;(2)数据压缩技术的研究4。1.2.1 数字化视频监控的系统构架随着视频监控系统的不断发展,现阶段的数字化视频监控系统主要有以下几种形态:结构上分为基于工控机的数字硬盘录像机、基于pc架构的视频监控系统、脱离pc架构的视频监控系统。基于工控机的数字硬盘录像机的主体是工控机箱,里面有cpu工业集成卡和工业底板。这种结构可以挂接多个硬盘用于存储,也可以接入多块板卡用于采样和处理,因此适合在需要多通道监控的场所使用。同时由于基于pc构架的视频监控系统,它是以pc机为基础的,

15、在操作系统上运行的一整套系统。这套系统本身也是配备了一些相应的硬件设备,比如可插拔的图像采集卡和图像压缩卡,用来完成数据的硬件传入、硬件压缩和硬件解码。基于pc的一大优点是产品性能容易提升,软件维护和升级比较容易,由于可以扩展存储硬盘,存储空间大。可实时监控的路数上分为1-4路的低路数数字监控系统,5-10路的中路数数字监控系统,11-16路及以上高路数数字监控系统。通常路数越多,对硬件的要求越高。如远程终端可以完成l-4路的dl播放,但是由于受到cpu运行能力等的限制,无法同时完成高路数的软件解码,这就需要通过外挂特定的解码板卡来实现了。按技术核心分为mpeg-1、mpeg-2和mpeg-4

16、等技术。1.2.2 数据压缩技术数字化视频监控系统的工作是以数字信号为基础的,它将采集到的模拟信号通过模数转换模块变成数字化的信息流。由于原始码流的数据量非常大,因此不适合传输和存储。在实际的视频监控系统中,基于性能考虑,会对数据进行编码和解码,而编解码能力将对整个视频监控系统的运行产生巨大影响。当前有很多的压缩标准已经推出,包括:jpeg、mpeg、h.261/h.263等。其中jpeg(joint picture expert group)是用于静止图像的压缩;h.261/h.263虽然压缩率大,但是图像质量不高,因此可用于视频会议和可视电话。mpeg(moving picture exp

17、ert group)是针对运动图像的,其编码标准,包括mpeg视频及mpeg音频。到现在为止,视频方面已经具有了mpeg-1、mpeg-2和mpeg-4等三种标准,分别是针对不同的用途的。(1)mpeg-1编码速率最高可达4-5mbps,可适用于不同带宽的设备,如cd-rom、video-cd、cd-i,也被用于数字电话网络上的视频传输(2)mpeg-2针对标准数字电视和高清晰度电视应用,编码码率从每秒3mbps100 mbps,是sdtv和hdtv的编码标准。(3)mpeg-4是针对数字电视、交互式绘图应用(影音合成内容)、交互式多媒体的标准,适合于多媒体传输、存储、检索等应用领域。图像数据

18、压缩的技术主要针对帧间压缩和帧内压缩。帧间压缩把视频分解成独立的帧并只传输前后帧间的不同部分。用专用的芯片对图像进行编码和解码。由于采用了专用芯片,因此音视频的质量和速率可以得到保证。 数据压缩技术主要目的是使视频图像具有低数据量、高清晰度。要满足这两方面,现在用到的技术就是“mpeg4+d1”。dl是指图像分辨率为720576像素,它使图像具有了足够的清晰度,再加上mpeg-4压缩技术,可以大大降低图像的数据量。1.3 网络视频监控系统的特点1.3.1 数字化数字化是21世纪的特征,是以信息技术为核心的电子技术发展的必然,随着时代的发展,我们的生存环境必将变得越来越数字化。视频监控系统的数字

19、化首先是系统中信息流(包括视频、音频、控制等)从模拟状态转为数状态,这将彻底打破经典闭路电视系统以摄像机成像技术为中心的结构,根本上改变视频监控系统从信息采集、数据处理、传输到系统控制等的方式和结构形式。信息流的数字化、编码压缩、开放式的协议,使视频监控系统与安防系统中其它各子系统间实现无缝连接,并在统一的操作平台上实现管理和控制,这也是系统集成化的含义。1.3.2 网络化网络摄像机的普及视频监控系统的网络化将意味着系统的结构将由集总式向集散式系统过渡。网络摄像机给用户提供了非常丰富的功能,它集成了网络服务器、图像压缩和操作系统,在世界上任何连通互联网的地方都可以通过标准网络浏览器观看到图像。

20、企业不必使用传统摄像机所需要的同轴电缆来重新联网,从而节省大量资金。对于更多的监控系统,安装专业的安全防范软件用于管理从摄像机发回的视频信号。随着it和传统安全技术的发展,网络技术应用于监控系统变得可能,从而为安全管理方式提供了更多更好的选择。网络视频技术,使得远程监控在网络覆盖的任何地方成为可能。网络摄像机和视频服务器可以直连至网络。视频信号在摄像机里经过数字化处理,并通过计算机网络传输到pc服务器,用于存储。局域网和互联网的应用使得视频信号可以进行远程管理和存储。通过网络查看监控图像实质上降低了往返于被监控场所的费用。此外,图像储存于远程站点提高了安全可量测性。网络录像技术允许用户保留他们

21、的模拟设备,并能享受数字化系统的全部好处。网络录像能调控现有的计算机结构、网络和监视器,安装费用更便宜。另外,维修费降低,可动部件数量减少,大大降低了器材替换需要,从而降低了所有权费用。有线网络与无线网络应用极其广泛,监控用于安全技术防范的基本理念为:通过各种原理的物理装置,首先发现和感知非法侵入,然后用安装在现场的监听头和摄像头复核现场,实时监听和观看,用录音、录像设备记录存贮,达到取证的目的。随着视频监控技术逐步被人们所认识和采用,视频监控系统在提升企业现代化的管理水平上也发挥着重要的作用。从另一个层面讲,借助于科学技术的发展,提升公安机关的科技强警、打防结合、快速出击是社会发展的必然,因

22、此监控系统宜以单位、社区、辖区为基本子单元,那么远程传输仅仅是管理上的需要。当然在不以安全技术防范为目的,仅作为现代的管理和操作遥控的监控系统中,远程传输有着无比的优越性。选取有线还是无线网络传输,要视其具体情况,如成本核算、施工难度、图像质量、保密程度等合理选择。监控系统基本子单元一般应采用有线传输,以保证图像质量和就近出警,快速出击。如果需要远程传输,应尽可能采用线缆或光缆,不宜开路传输。无线传输视频信号要占用较大的带宽,且频率高,其传输路径接近于直线传播,城市高大建筑物的镜像干扰、杂波信号的干扰都会对其造成一定影响。尽管摄像头都采用固体成像,功耗小、寿命长,但其发射、接收设备要全天时、全

23、天候运作,故障率一般高于有线传输。有线网络传输建立在模拟与数字信号发展的基础上。数字信号是在牺牲了一部分图像质量的基础上,将模拟信号压缩以适应传输对带宽的要求,同时数字信号还要求前端摄像机要灵敏度高、信噪比高、色还原性能好,否则就算图像很干净,像素也往往不够、分辨率不高,另外图像滞后的现象也不够理想。监控系统的数字化、网络化、智能化是未来监控系统的发展方向。当前监控的网络化正如火如荼地进行着,视频服务器、网络摄像机、网络dvr(数字硬盘录像机)等网络产品的不断发展,加速网络监控发展的脚步。随着有线网络技术日趋成熟,带宽将不再是制约其发展的主要因素,通过isdn、adsl等方式进行远程监控在很多

24、工程实例中得到了广泛应用。作为网络监控的载体,有线网络的发展空间非常巨大,伴随着ip宽带的发展及有线网络技术的进一步完善,有线网络将会以更快的速度向前发展。与此同时,无线技术也在以迅猛的态势发展。美国微软、sun和real三大软件公司已经早早推出了自己的接入门户,而在中国,移动和联通也在小范围推出了自己的移动网络视频概念5。但无线网络监控技术作为一项历史并不悠久的技术,也存在诸如频率资源有限、信号抗干扰能力差、使用成本高等缺陷。有线与无线网络作为数据传输的两种载体,在技术上、应用上,都各有利弊,只有通过资源的互补,通过两者有机的结合,相互结合共同发展,才能营造出未来网络监控的大环境,才能构建好

25、未来网络监控的网络平台。1.4 网络视频监控系统分析 1.4.1 网络视频监控系统的构成及结构示意图 摄像头摄像头摄像头摄像头 服务器端ip网络 客户端客户端客户端 图1.1 视频监控系统结构示意图网络视频监控系统是一个基于客户机/服务器模型的系统,由视频采集端、监控服务器端和客户端等几个部分组成,可实现视频存储、视频回放、摄像头遥控、报警检测、远程检索播放等功能。监控服务器对视频采集端提供的数据进行处理,如数据压缩、数据传输、图像报警检测、视频存储等。同时,客户端有选择性地加入组播组并经过身份验证,可以访问监控服务器,查询监控视频资源,从而达到所要的目的,结构示意图如上图1.1所示。1.4.

26、2 网络视频监控系统流媒体传输相关协议(1)实时传输协议rtp/rtcp:是针对internet上多媒体数据流的一个传输协议。 rtp被定义为在一对一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步。rtp的典型应用建在udp上,但也可以在tcp或atm等其他协议之上工作。rtp本身只保证实时数据的传输,并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,它依靠rtcp提供这些服务。但是,它能够提供一种机制:可以通过包序列号检验传输数据包丢失、错序的情况;采用时间戳的标识结合缓冲系统可以弥补网络造成的延迟和抖动,并控制视频播放的帧率;进行不同数据流的复用、同步传输

27、。(2)rtsp(real time streaming protoc01)实时流媒体协议,是由real network和netscape共同提出的如何有效地在ip网络上传输流媒体数据的应用层协rtsp提供一种可扩展的框架,使能够提供能控制的,按需传输实时数据,比如音频和视频文件。源数据可以包括现场数据的反馈和存贮的文件。rtsp对流媒体提供了诸如暂停,快进等控制,而它本身并不传输数据,rtsp作用相当于流媒体服务器的远程控制。采用rtsp的目的是建立并控制一个或几个时间同步的连续流媒体。尽管连续媒体流与控制流交叉是可能的,通常它本身并不发送连续流。换言之,rtsp充当多媒体服务器的网络远程控

28、制。rtsp连接没有绑定到传输层连接,如tcp。在rtsp连接期间,rtsp用户可打开或关闭多个对服务器的可靠传输连接以发出rtsp请求。此外,可使用无连接传输协议,如udp。rtsp流控制的流可能用到rtp,但rtsp操作并不依赖用于携带连续媒体的传输机制。实时流协议在语法和操作上与http/1.1类似,因此htip的扩展机制大都可加入rtsp。1.5 社会意义以及应用领域1.5.1 社会意义在全球人口高速增长和流动的大环境下,视频监控系统已经成为协助公共安全部门打击犯罪、维持社会安定的重要手段。中央政府建设和谐社会的目标的提出,预示着城市整体监控在保障人民生命财产安全方面必将发挥越来越大的

29、作用。随着宽带网络的普及,以及行业管理部门对管理水平提高的需求日益增加,城市公安、交通、金融,环保、电力、医疗、教育等管理部门对城市范围内的大型联网安全与视频监控平台的需求也在近几年开始猛增,其中尤其以城市公安和金融领域的需求最为突出。在城市公安领域,公安部门正在大力进行科技强警示范城市的建设。首批22个城市的城市治安监控系统已经开始实施,2008年科技强警示范建设城市将达到180个,而最终我国660个城市和1642个县城都需要上基于网络的公共安全与图像监控系统。而在金融领域,在过去的几年中,国内各大国有银行及商业银行根据中国人民银行总行和公安部关于银行图像监控系统的数字化改建要求,已经建设完

30、成了大量基层网点的数字化监控系统建设改造工作,目前也已经开始进行各种联网监控管理系统的改造试点工作。1.5.2 应用领域视频监控系统并不仅仅用于公安领域,在许多行业都有用武之地。比如,连锁超市、中大型工厂、重要的政府部门、工商部门、金融机构等,都需要采用分散部署、集中监控系统来完成全天候、无人值守的监视工作,为保证其业务安全,高效地开展保驾护航。同时,随着宽带的普及和提速,以及3g的呼之欲出,视频监控在个人用户市场,特别是家庭安全领域的需求也开始显现出来。目前,不少地区已经将家庭视频监控作为“智能家庭”建设中的一项不可或缺的内容。与“智能家庭”方案中其它一些服务,如智能家电相比,安全监控的需求

31、更迫切,同时也更容易在近阶段实现。延伸开去,利用电信视频监控的技术,运营商还可以提供方便人们生活的新业务,例如:(l)在旅游热点区域、交通枢纽等人流大的地方设置监控点,帮助终端用户实时直观地了解和判断出行路线。(2)借助移动摄像头(例如手机上的摄像功能),在交通事故现场直接将事故情况传送到公安及保险公司等相关单位,以便及时做出事故性质判定和保险赔偿。(3)在体育比赛现场的最佳角度架设高速摄像头,为爱好者提供精彩的射门、冲刺等实况传递。在运营商从单纯的电信服务者向综合信息提供商迈进的过程中,视频监控已经开始展现出它蓬勃的生命力,而规模化、可运营的监控网络则为运营商提供了广阔的商机。有理由相信,视

32、频监控必将在电信运营商转型中写下浓墨重彩的一笔,为社会的进步和人们生活质量的进一步提高做出贡献。视频监控业务的兴起,是顺应信息化时代利用宽带网络对海量的社会工作及生活信息进行记录和整理的需要,通过高科技提高社会管理效率和提升人们生活品质的重要手段,必将在广泛的应用领域中发挥更大的社会效益。2 系统总体设计2.1 总体架构本系统采用的是基于网络技术的监控系统结构,系统的总体架构如图2.1所示。图2.1 系统的总体结构在此系统中,前端的音视频采集设备(云台、摄像头等),通过集成在下位机开发板中的编解码模块,将视频经过数字化、压缩、打包等过程变成基于网络协议的视频流,在完成网络化、数字化之后,视频流

33、通过网络进行传输,发送已请求到连接的上位机客户端设备和报警服务器。由客户端软件进行解码,在pc机上进行显示和处理。运用客户端软件,用户可以pc机上通过网络远程控制前端监控设备,进行实时视频码流的请求、参数的查看和设置、手动对已请求实时码流的通道录像等操作。而报警服务器则承担了报警录像、定时录像的录制和检索任务。报警服务器的功能也是由软件完成,因此报警服务器功能也可在客户端pc机上实现。由于没有监控中心的概念,任何授权的用户都可根据权限进行视频监控、录像,而任一台pc机只要启动报警服务器程序就可以作为报警服务器,使用灵活而便捷。这种结构的优点是:由于这种系统的硬件是一个同处理器和操作系统捆绑较为

34、紧密、功能专一、专门设计的独立的设备,不像插卡系统那样受通用计算机系统中其它软件硬件的影响,因此性能上更稳定,且便于安装、维护,易于实现系统的模块化设计,便于管理、维护。2.1.1 总体设计整个系统流程图如2.2所示。视频采集服务器端视频压缩网络发送本地视频回放奋云台镜头控制制控制命令接收三视频显示视频解压网络接收控制命令发送客户端tcp/ip视频流控制流图2.2 监控系统软件流程图整个软件由服务器端和客户端两部分组成,服务器端和客户端通过socket套接字在整个ip网络上进行通信,系统主要模块和整个软件流程如图2.2所示。系统服务器端除了图2.2中所示的模块外,还包括报警检测、视频存储、检索

35、播放、串口通信等模块,负责视频数据的采集、编码、传输、保存、报警以及对云台的控制等,客户端则负责视频数据接收、显示及远程控制等。服务器端对于视频数据的压缩采用mpeg-4技术,对于客户端的请求采用组播的方式进行发送,同时服务器端对mpeg-4编码的各项参数进行配置,优化传输,防止网络拥塞6。2.1.2 模块设计系统程序模块设计如图2.3所示。http模块bf561 codec主程序块串口管理 模块snmp模块视频a/d分割器音频codec网络dpram交互系统初始模块av数据处理模块参考管理模块.2.3 系统机构程序模块框图如上图所示系统程序分为以下模块:系统初始化模块:负责主处理器系统初始化

36、(配置系统参数,及视频a/d等的初始化)、bf561系统初始化(将bf561的ssk,ldr,bin等启动,程序二进制文件,通过dpram发送到bf561,同时重置dsp处理器,让整个系统处于初始化完毕状态)。av数据处理模块:通过dpram同bf561交互,以如下两种形式工作,首先获取bf561过来的音视频数据,往主程序或是http模块直接发往外部接收源;其次接收外部发送源的音频数据,发往bf561播放输出;同usb存储设备交互,适当时候进行数据存储。参数管理模块:通过dpram同bf561交互,配置dsp参数;直接配置视频a/d,分割器,音频codec,网络等参数;同上层应用交互,使用统一

37、接口;权限管理。http模块:提供客户端视频播放的ocx控件下载,及惊醒参数管理,视频实时播放。通过unix,域套接字同上述两个进程交互。主程序模块:整个软件系统状态机逻辑控制,及状态迁移的维护,事件调度,及同pc客户端交互。以及报警事件处理、ptz控制、软件更新、可测试性、权限管理等。串口管理模块:负责同pc机串口管理程序通信,处理参数管理事务,通过unix域套接字同参数管理进程交互。snmp管理模块:同pc机的snmp托管程序通信,处理参数管理,报警事件等事务,通过unix域套接字同参数管理进程交互。各个进程模块之间的交互遵循以下原则:对初始化进程,其有效期只是在系统初始化时,在初始化时通

38、过同参数管理进程通信,来配置视频a/d,及分割器,音频codec。系统初始化完毕,那么初始化进程退出。所有跟bf561参数的交互,都是通过参数管理进程,来进行参数的配置与读取。所有跟bf561音视频数据的交互,都是通过av数据处理进程,来进行音视频数据的读取与发送。其他管理进程,都通过unix域套接字,同参数管理进行交互,来配置管理参数。所有的av数据都是通过av数据处理进程,直接同pc机客户端进行数据传输与接收。2.2 控制逻辑2.2.1 用户控制策略根据参数作用的范围,分为全局参数和通道参数。全局参数:针对开发板的设置,该板上所有通道(即摄像头)对应的都是同一套全局参数,该类参数一旦被修改

39、,该板上所有通道都会被影响。各音视频编解码相关参数和网络设置相关参数等都属于全局参数。通道参数:针对单个摄像头的参数设置,连接在某一开发板上的任一路摄像头都有各自独立的一套通道参数设置,对某一路通道参数的修改不会影响其他通道。报警相关参数,显示相关参数(色度、亮度、对比度等)等都属于通道参数。根据参数的读写权限,分为只读参数和读/写参数。顾名思义,只读参数只允许客户端的读操作,而不能对其进行修改,用于客户端查询一些必要的信息,如系统的版本信息等。而读/写参数则允许客户端对参数的读取和修改,通过与下位机应用程序的交互,实现对参数的读写管理,绝大多数参数都是读/写参数。根据参数的操作类型,分为普通

40、参数和命令参数。普通参数对应了下位机应用程序参数管理模块中的参数,是控制下位机工作状态的功能型参数,即使没有上位机,也仍需存在的参数。而命令参数主要用于上位机的客户端软件与下位机的交互,例如登陆、keep alive(保持连接)、请求实时数据流、请求权限等,以实现上位机对下位机的命令控制。采用两级权限,分为普通用户和超级用户。超级用户可以请求全局控制权限,在获得全局控制权限之后允许查看和设置所有参数,并对普通用户而言,拥有相对的优先权。普通用户不能请求全局权限,仅允许设置已请求到实时数据流的通道参数,对于其他通道的通道参数仅允许查看,不允许设置。用户权限与通道/全局参数之间的对应关系如图2.4

41、所示。开发板全局参数视频通道n视频通道1视频通道2通道参数通道参数通道参数全局权限普通权限图2.4 用户权限与参数对应关系上位机与下位机的多对多交互:一台下位机设备(即开发板),允许多个上位机(即pc机)客户端登录,查看实时音视频数据;一个pc机客户端,也可以同时登陆多台下位机设备,对多台下位机设备进行各类命令操作和参数管理。而对于下位机设备的任一通道的实时数据流,同一时刻只能由一个pc机终端来查看。权限的获取分为两个阶段:登陆。普通用户跟超级用户都可以登录,登录之后,即可对各通道的参数进行查看操作。也可以对已登陆的下位机设备发送查看实时音视频数据流的请求,若被请求的通道处于空闲状态(即未被其

42、他客户端请求实时数据流),则请求成功,对应的实时数据流通道打开;若被请求通道处于被占用状态(即已被其他客户端强求,正在向其他客户端发送实时数据流),则请求失败。如果请求成功,已获得某一通道(针对摄像头)的实时音视频数据流,则获得该通道参数的设置权限,当结束该通道实时查看时,对该通道的参数设置权限同时被撤销。对登录阶段的用户,没有普通用户跟超级用户之分,对于未获得实时音视频数据流的通道,只有参数查看的权限,而没有参数设置的权限。获取全局控制权限。只有超级用户才可以申请获取全局控制权限,获取全局控制权限的用户,拥有任何通道任何参数的查看和设置权限,获取控制权限的超级用户不需要通过查看某通道的实时音

43、视频数据来获得对该通道的设置权限。某一下位机设备在同一时刻只允许一个超级用户获得全局控制权限,如果某下位机设备已有一个用户获取全局控制权限,那么对再申请获取控制权限的其他超级用户,返回申请失败。客户端登录到下位机,发送命令请求,下位机应用程序先检查用户权限,如果越权,则拒绝该命令请求;比如:向下位机通道发送查看实时音视频数据流的命令请求,如果该通道已被其他pc客户端查看,那么返回相应的查看失败消息。客户端登录到下位机,客户端获取通道信息,而只有查看了某通道实时音视频数据流之后,才能对该通道的参数进行修改设置。超级用户在获取到全局控制权限之后,可以任意修改参数,及对通道进行操作。如果该超级用户所

44、发送命令,与其他登录用户目前状态相抵触,以该超级用户命令为准。比如说:其他用户正在分别查看16通道的cif视频数据流,而该超级用户将编码格式由cif改为了d1,那么其他16通道的视频流网络通道将全部断开。已登录且正在查看实时音视频数据流的用户,可以主动放弃该通道的音视频查看,或切换到其他通道。对已获取全局控制权限的超级用户,可以主动放弃该控制权,以便其他超级用户来获取。2.2.2 录像存储策略下面是录像分类的介绍。录像一共有以下5种类型:手动录像,定时录像,以及3种报警录像(视频丢失、动态检测、外部报警),对于这5种录像,分类存储。每一个通道的视频数据,分为两路,一路送往实时播放的pc控制终端

45、,一路送往用于定时录像和报警录像的报警存储服务器。用户通过pc机客户端进行实时播放,只能对正在进行实时播放的通道进行手动录像,手动录像存储于运行客户端软件的pc机硬盘,不受各种报警状态的影响,通过回放播放器回放录像,本地存储本地检索。定时录像和报警录像则存储到报警存储服务器,且录像存储策略受到各中报警状态相互之间的影响,通过回放播放器回放录像。客户端软件和报警存储服务器软件不一定运行于同一台pc机,只能在报警存储服务器的pc机上通过回放播放器检索和回放报警录像、定时录像。录像的分类存储如图2.5所示。pc客户端手动录像报警服务器定时录像报警录像视频数据流图2.5 录像的分类存储下面介绍的是报警

46、录像叠加存储。当一个通道同时只有一个报警,则存储为该报警类型的录像,录像时间长度为报警时间加上报警延时(录像时间长度=报警时间+报警延时)。对于视频丢失报警(即摄像头被拆走时的报警),报警时间为0秒,也就是录像时间长度即为报警延时。各种报警类型之间(视频丢失、动态检测、外部报警)不设立优先级别,不区分是本通道触发还是其他通道联动触发,一种报警不中断另一种报警录像,当某一通道的一种报警录像正在进行的同时又触发了该通道另一种或多种报警录像时,以第一次报警的类型归类,存储为一份报警录像,直到各种报警及其延时都结束,才结束该次报警录像。以第一次报警的类型检索回放。下面介绍的是报警录像中断定时录像7。当

47、某一通道的定时录像正在进行时,若触发了该通道的报警录像,此时定时录像暂时终止,报警录像开始。直到报警录像结束后,若仍在定时录像的时间范围内,则定时录像重新开始。即在这样的情况下,该通道在该定时录像时段将会出现3份录像文件(两份定时录像,一份报警录像)。对于定时录像期间同时产生的报警录像,按“报警录像叠加存储”中的方法进行录像和索引。定时录像期间,若想手动结束定时录像,只能通过客户端修改定时录像参数的方法实现。报警录像与定时录像的叠加策略如下页图2.6所示。2.2.3 ptz控制策略从三个方面分析ptz控制。传输协议:根据不同的ptz云台,选择不同的协议来控制。本系统仅针对其中写定的几种云台控制

48、;如果用户自行更换摄像头控制云台,即需要更换其控制协议,那么需要重新在软件代码中添加;而云台的控制过程,对下位机应用程序来说,只需实现透传功能,即:接收客户端软件通过以太网口传输过来的控制命令,直接通rs485/rs232透传给对应的云台。接收串口的ptz控制输入:如果该项使能,那么客户端软件从pc机串口输入的云台控制命令直接透传给下位机,再由下位机透传给对应云台。串12通讯设置:进入客户端中串口通讯的设置界面,可进行波特率、数据位、奇偶校验、停止位、数据流控制的设定。报警服务器不中断当前录像noyes当前录像类型为定时录像?为定时录像?终端定时录像yesno返回是否正在该通道录像?以该报警类

49、型存储报警录像yes有新的报警状态仍未解除?继续录像当前报警录像状态结束nono处于定时录像时段?结束yes开始定时录像图2.6 报警录像与定时录像叠加3 上位机软件总体规划上位机软件(即pc机客户端软件)的总体结构与模块划分如图3.1所示。gui人机交换模块管理模块语音 对讲模块在线升级模块网络管理参数管理报警管理本地回放模块命令收发交换模块ptz管理本地管理播放器activex控件录像播放解码拆包/组帧数据接收 图3.1上位机软件系统结构图3.1 上位机软件系统结构3.1 开发环境 visual c+ 6.0上位机软件主要由播放器activex控件和主ui人机交互管理两部分组成,针对这两部

50、分的特点,分别采用两种开发工具来完成本系统上位机软件的设计。visual c+ 6.0是微软公司在多年使用,不断改进的基础上推出的用于支持win95以上平台应用程序,服务和控件的开发环境89。它具有以下特点:1开发环境visual studio由一套集成工具组成,用于开发win32(win9598或windows nt)环境下运行的应用程序。2提供功能强大的向导工具(mfc appwizard,class wizard)。3developer studio的项目工作区的形式组织元件,项目等配置。4mfc类库支持多线程应用程序开发。5具有windows socket和mapi支持,可以与网络及e

51、mail连接。6最快的集成数据库访问,允许用户适应强有力的数据库应用程序。7具有强有力的internet支持。8对ole提供强有力支持。c+语言非常灵活,功能也很强大,微软开发的vc+正式使用了c+作为编程的语言,它包含了两套完整的windows,对于windows提供的类库(mfc),它能够很好的支持。visual c+也包括了activex模板库(activex template library,atl),我们可以用它来开发internet上使用的activex。由于我们要开发的插件对网络要求比较高,对界面几乎没有多余的需求。因此,使用vc+开发比使用delphi更灵活,因为虽然delph

52、i对控件进行了漂亮的封装,但在网络控制等方面,它最终也是要调用microsoft提供的库函数。而直接使用vc+进行开发可以减少这种二次开发带来的不足,同时减少冗余代码的存在,使得播放器的代码量可以减到最少。通过精简和优化代码,播放器在最终编译后的二进制代码也可以达到最小,这样更加利于activex控件在网络上的传输。3.2 通信方式由系统整体架构图可以看到,系统中上位机和下位机的通信主要依赖internet来传输。而interact的传输层上主要有两个协议:一个无连接的协议和一个面向连接的议。无连接的协议是udp(user datagram protocol,用户数据报协议),它为应用程序提供

53、了一种方法来发送经过封装的ip数据报,而且不必建立连接就可以发送这些ip数据报;面向连接的协议是tcp(transmission control protocol,传输控制协议),它是专门为了在不可靠的互联网络上提供一个可靠的端到端字节流而设计的。在本系统的设计中,将在音视频数据流传输和参数命令交互中,根据两种通信方式的特点,分别采用这两种通信方式。3.2.1 udp协议udp传输的数据段是由8字节的头和净荷域构成的,图3.2描述了头信息。图3.2 udp头两个端口分别被用来标识源机器和目标机器内部的端点,当一个udp分组到来的时候,它的净荷部分被递交给与目标端口相关联的那个进程。这种关联关系

54、是在调用了bind原语或者其他某一种类似做法之后建立起来的。udp相对于原始的ip,最主要的价值是增加了源端口和目标端口。如果没有端口域,传输层将不知道该如何处理分组;而有了端口域之后,它才可以正确递交数据段。当目标端口必须将一个应答送回源端的时候,源端口是必须的,用于指定接受应答的进程。udp长度域包含了8字节的头和数据部分。udp校验和是可选项,如果不计算,则在该域放0(如果真正的计算结果是0的话,则该域中存放的全是1)。除非数据的质量并不要紧(比如数字化的语音),否则不应该关闭校验功能。udp的局限是不考虑流控制、错误控制,在收到一个坏的数据段之后也不再重传。所有这些问题如要处理都留给了

55、用户进程。udp所做的事情只是提供一个接口,并且在接口中增加解复用的特征。它利用端口的概念将数据段解复用到多个进程中,下图3.3是udp封装图。udp数据报ip数据报ip首部udp首部udp数据 20字节 8字节 图3.3 udp封装由图可以看出,udp不提供可靠性:它把应用程序传给口层的数据发送出去,但是并不保证它们能到达目的地。由于缺乏可靠性,我们似乎觉得要避免使用udp而使用一种可靠协议如tcp,但是事实上由于tcp的重传机制,使得在对数据的实时性要求较高的应用场合中变得不是那么的适合,此时udp就显得更加合适,当由于网络拥塞或抖动导致某些数据包不能及时到达时,应用程序就选择简单地丢弃它,使得后面的数据包能够及时地到达。在视频传输中,由于视频数据的流量非常大,对视频的实时性要求也非常大,因此传输协议通常使用的都是udp协议。使用udp时,应用程序必须关心口数据报的长度。如果它超过网络的mtu,那么就要对p数据报进行分片。如果需要,源端到目的端之间的每个网络都要进行分片,并不只是发送端主机连接第一个网络才这样做。综合以上特征,udp

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论