基于嵌入式WEB的网络视频监控系统探讨
3.2.2嵌入式数据库mSQL
在本系统中,用户信息的存储,用户的登录登出,视频设备参数的存储与查询,视频文件的存储与查询等,都需要一个嵌入式数据库。综合考虑,本系统使用mSQL(MiniSQL)作为本系统的后台数据库。mSQL是一款优秀的嵌入式数据库,体系结构小巧,占用系统资源少,特别适合在嵌入式Linux系统中使用。同时,mSQL提供专门的API函数,使得用C语言编写的CGI程序可以与mSQL的数据库引擎进行通信。
3.2.3视频调度与传输模块
视频调度与传输模块为监控端提供所需的实时视频信息,是服务器应用软件中最重要的模块。该模块根据所采取的网络传输与控制协议与监控端建立连接,监听监控端的请求;同时又根据不同的服务类型采取相应的调度策略创建视频流,然后将视频数据分组、打包,发送到监控端,并根据路由器和监控端反馈的网络状态信息进行差错处理和拥塞控制。
视频数据的传输一般采UDP网络通讯协议,而采用UDP的IP传送方式有点播、广播和组播三种,其中组播是服务器只向特定的用户组发送一个数据包,组中的各用户可以共享这一数据包,而组外的用户却无法接收到。本系统采用IP组播方式,采用组播技术的优点有以下几点:可以让服务器承担大量客户端的视频数据播送要求;由于数据包拷贝数量和发送目的地址少,大大减少了网络中传输的数据总量,从而保证较高的服务质量;减小了视频数据流传输的带宽占用,减轻了服务器的负担。
本系统采用的网络传输协议使用RTP/UDP/IP模型。RTP协议是一种提供端对端的实时媒体传输服务的协议,由实时传输协议RTP和实时传输控制协议RTCP两个部分组成。RTP用于实时视频数据的传输,而RTCP则用来监控实时视频数据的传输。RTP/UDP/IP的方式兼顾了视频传输的实时性与QoS保证。同时针对传输网络状况的不确定性,还可以采取一定的拥塞控制和差错控制策略。
3.2.4存储管理与调度模块
存储管理模块的主要功能是将压缩和编码后的视频信息根据一定的策略存储至磁盘中特定的区域,并将视频文件信息存储到嵌入式数据库中,以供检索与回放,同时响应视频调度与传输模块的请求,按照一定的磁盘调度策略和优先级顺序从磁盘中读取视频数据至内存缓冲区。对于存储管理,本系统采用等长分组存储策略,即将视频信息按照时序关系分割成若干数据单元,这些数据单元称为分组,将每个分组存储于一个大小固定的存储单元内。
3.2.5摄像机控制模块
摄像机控制模块主要实现对摄像机的控制。在监控端,用户通过浏览器向WEB服务器发送摄像机控制命令,该控制命令经WEB服务器接受和处理后,再通过CGI程序发送给摄像机控制模块,然后被转换成相应的对摄像机控制的硬件操作指令,从而实现对摄像机云台镜头的远程控制。
4监控端浏览
本系统在监控端使用浏览器对监控现场进行监控,浏览器所运行的平台与嵌入式WEB服务器所运行的平台独立,浏览远程视频时不需要任何第三方软件,从而实现了跨平台。使用本系统在监控端浏览视频的界面如图4所示。
![](http://m.amcfsurvey.com/editerupload/fetch/20140718/250609_2_0.jpg)
5结束语
本文介绍了一个基于嵌入式WEB技术的网络视频监控系统的设计与实现,与传统的网络视频监控系统相比,本系统的主要特点在于:服务器的设计基于嵌入式WEB技术;支持动态IP,可以直接连入以太网,能够即插即看;用户无需使用专用软件,仅用浏览器即可观看;同时系统采用先进了的MPEG-4编码标准,在提高了视频质量的同时大大减少了数据量。相信随着网络视频监控的流行,基于嵌入式WEB的网络视频监控系统必将有良好的发展前景。
参考文献
[1]钟玉琢,向哲,沈洪.流媒体和视频服务器.北京:清华大学出版社.2003.6
[2]涂杰等.MPEG-4在数字视频远程监控系统中的应用.计算机应用与软件.2004.2
[3]李善平.LINUX与嵌入式系统.清华大学出版社.2003
[4]姜敏,施健.基于嵌入式WEB服务器的远程视频监控系统.计算机时代.2003.7
linux操作系统文章专题:linux操作系统详解(linux不再难懂)
评论