基于ARM的远程视频监控系统的设计
设备控制函数ioctl 实现的主要设备控制命令有获得摄像头信息VEDIOCGCAP,判断获取图片是否成功VEDIOSYNC,读取图片相关信息VEDIOCGPIC,以及获取图片VEDIOGETPIC。
3.2 视频数据采集
本系统数据采集程序也是基于 V4l 编写应用程序,其基本流程首先通过open 系统调用打开摄像头设备,如果成功则继续通过ioctl 函数命令(参数VEDIOCGCAP)获取摄像头相关信息,ioctl 函数命令(VEDIOGETPIC)获取图像数据。
4 远程监控的实现
4.1 BOA 服务器的建立
Web 服务器在本方案中采用了Linux 系统中常用的Boa,Boa 是一种非常小巧的Web服务器,其可执行代码只有大约60KB 左右。Boa 支持CGI,速度快和安全性好,很适合嵌入式系统使用。使用时只需用已建好的交叉编译链编译,然后修改配置文件boa.cONf,为Boa 创建需要的目录/var/www/、/var/log/boa/acces_log 和/var/log/boa/error_log,以及将通用mime.types 拷贝到/etc 目录下,即完成了BOA 的配置。
4.2 远程视频服务的实现
远程视频服务基于 servfox/开源软件包,servfox 流媒体服务器使用V4L 完成原始视频图像的获取,然后把视频图像以MJPEG 的方式压缩,通过TCP 协议向网络发送。
复制 spcaview 软件包的目录http-java-applet 到Boa 的Web 服务器目录下,启动boa 服务,再运行命令,#servfox –s 640x480 –w 7070.
即已完成视频服务器的建立,在和ARM 开发板连接的PC 机浏览器上,输入开发板的IP 地址和Boa 服务器目录下的网页即可观看摄像头所采集的信息。
5、结论
本文设计实现的嵌入式Linux 的网络视频监控系统,是一种低成本的网络视频监控方案,而且可以直接连入以太网,通过浏览器即可观看,画面流畅,简易方便,具有广泛的应用价值。
- 革新2410D开发板试用手记(04-21)
- 嵌入式Win CE中CAN总线控制器的驱动设计与实现(05-01)
- 嵌入式Web服务器移植与测试(03-03)
- 基于ARM9与Linux的门禁监控系统软件设计(03-08)
- 嵌入式Linux下基于ARM9的媒体播放的设计(03-27)
- SamsungS3C2440平台上的VxworksBSP移植(10-28)