基于ARM的视频安全监控终端的设计与实现
时间:12-18
来源:互联网
点击:
视频监控终端软件的设计
视频监控终端软件按功能分为三部分:视频采集、压缩、传输。这个软件的开发都是基于先前配置好的嵌入式内核。
(1)视频采集部分
使用Video4Linux接口函数访问USB摄像头设备,捕获实时的视频流。首先完成v4l_struct数据结构的定义,如设备基本信息,图像属性,各个信号源属性等;采集模块一方面通过USB集线器采集USB摄像头中的图像,另一方面启动多个采集线程,分别在不同的端口上监听,一旦有请求连接,采集线程立即从设备缓冲区中把视频流数据读出,放入到视频处理缓冲区中进行下一步的处理。
(2)视频数据的压缩部分
在视频监控系统中,大量的数据需要通过网络传输,为了保证传输质量和传输实时性,就需要在传输之前进行编码压缩以减少数据量,本文采用MPEG-4编码标准进行数据压缩。在网络上可以下载到开源的xvidcore软件作为视频压缩的核心算法,xvidcore是一个高效的、移植性很强的多媒体编码软件,将它在PC机上进行交叉编译,生成的文件拷贝到目标系统下。
(3) 视频数据传输部分
传输模块的作用在于把压缩之后的视频流传送到远程的PC机客户上,视频流数据的传输是基于TCP/IP协议。视频传输采用了标准的RTP传输协议。RTP是目前解决流媒体实时传输问题的最好办法,在Linux平台上进行实时流媒体编程,需要使用一些开放源代码的RTP库,如LIBRTP、JRTPLIB等。定义一种较为简单的握手协议:PC机端的采集程序不停地发请求数据包到采集终端,采集终端把已经捕获的图像打包返回给主机。每个RTP信息包被封装在UDP消息段中,然后再封装在IP数据包中发送出去。接收方自动组装接收到的数据帧,还原成视频数据。
结束语
本文介绍了一种基于ARM的视频监控系统的设计方案,采用软压缩算法,讨论了系统的硬件和软件设计。本系统和市场上其它视频监控系统相比,开发周期短,价格低廉,适用于对视频图像要求不太高的场合。
视频监控终端软件按功能分为三部分:视频采集、压缩、传输。这个软件的开发都是基于先前配置好的嵌入式内核。
(1)视频采集部分
使用Video4Linux接口函数访问USB摄像头设备,捕获实时的视频流。首先完成v4l_struct数据结构的定义,如设备基本信息,图像属性,各个信号源属性等;采集模块一方面通过USB集线器采集USB摄像头中的图像,另一方面启动多个采集线程,分别在不同的端口上监听,一旦有请求连接,采集线程立即从设备缓冲区中把视频流数据读出,放入到视频处理缓冲区中进行下一步的处理。
(2)视频数据的压缩部分
在视频监控系统中,大量的数据需要通过网络传输,为了保证传输质量和传输实时性,就需要在传输之前进行编码压缩以减少数据量,本文采用MPEG-4编码标准进行数据压缩。在网络上可以下载到开源的xvidcore软件作为视频压缩的核心算法,xvidcore是一个高效的、移植性很强的多媒体编码软件,将它在PC机上进行交叉编译,生成的文件拷贝到目标系统下。
(3) 视频数据传输部分
传输模块的作用在于把压缩之后的视频流传送到远程的PC机客户上,视频流数据的传输是基于TCP/IP协议。视频传输采用了标准的RTP传输协议。RTP是目前解决流媒体实时传输问题的最好办法,在Linux平台上进行实时流媒体编程,需要使用一些开放源代码的RTP库,如LIBRTP、JRTPLIB等。定义一种较为简单的握手协议:PC机端的采集程序不停地发请求数据包到采集终端,采集终端把已经捕获的图像打包返回给主机。每个RTP信息包被封装在UDP消息段中,然后再封装在IP数据包中发送出去。接收方自动组装接收到的数据帧,还原成视频数据。
结束语
本文介绍了一种基于ARM的视频监控系统的设计方案,采用软压缩算法,讨论了系统的硬件和软件设计。本系统和市场上其它视频监控系统相比,开发周期短,价格低廉,适用于对视频图像要求不太高的场合。
视频监控 半导体 嵌入式 DSP ARM S3C2410 电路 Linux USB 总线 相关文章:
- 智能视频多媒体技术的应用(05-31)
- 中国安防电子产业发展现状与展望(05-31)
- ARM在数字化远程视频监控系统的应用(05-20)
- 2009视频监控:网络化及其推动的几大趋势(06-03)
- 视频录像在监控系统的发展趋势(06-03)
- 几种技术在监控中的应用(06-15)
