微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > 基于IPV6的网络摄像机的设计与实现

基于IPV6的网络摄像机的设计与实现

时间:05-19 来源:互联网 点击:

到所需要的内核文件。因为现在得到的Linux内核版本虽然是支持IPv6的,但是支持IPv6的模块默认并不会编译入内核的。其他选项根据实际需要更改,使内核满足需要即可以便得到较小的内核。最后是编译内核,需要执行以下命令:#make dep;#make zImage;#make modules。编译无误后,就有了支持IPv6的内核,接下来的工作是把启动程序和内核文件外加一个精简的文件系统烧录到开发板上去,开发板就可以启动了。

3.2.2.基于嵌入式Linux视频采集模块的设计

在嵌入式Linux的内核定制和编译阶段,已经加入了对Video4Linux模块以及OV511设备的支持,所以运行在Linux下的视频图像采集程序,可以通过Video4Linux模块提供的编译接口(API)从OV511设备中获取图像帧。首先加载USB及OV511设备驱动模块,同时加载Video4Linux模块。分别使用命令:modprobe usbcor、modprobe usb-uhci、modprobe vodeodev和modprobe ov511。加载后将生成视频设备文件/dev/video0,为了和Video4Linux模块相协调,使用ln-s/dev/video0/dev/video为Video4Linux模块的默认视频设备voideo与物理视频设备video0建立连接。Video4Linux模块的视频采集接口设备为/dev/video,采集程序打开此接口设备并扫描 它以寻找自己所需要的数据。

视频图像压缩模块的设计

由视频采集模块获取的视频图像需要在以太网上传输,为了提高传输效率从而提高视频图像质量,则需要将原始的视频图像进行压缩编码。本系统采用先进的MPEG-4标准对视频图像进行压缩编码,在几种开放源代码的MPEG-4编码软件中,选择xvidcore作为本系统中视频图像压缩模块中的核心算法。对xvidcore-1.0.1进行交叉编译比较简单,有以下主要步骤。首先解压缩xvidcore源代码:tar-zxvf xvidcore-1.0.1.tar,其次是设置环境变量:export xvidcore="the path of xvidcore";cd $xvidcore/build/generic;再次是生成makefile:./configure-host=localhostbuild=arm-linux-gcc;然后编译源代码:make;make install;最后将交叉编译生成的库文件libxvidcore.so.*拷贝到交叉编译器工作目录的lib子目录中,该库文件为系统的其它模块提供了编程接口。

3.2.3.基于嵌入式Linux的网络视频流服务模块设计 

在本设计中,数据在整个系统中是以流数据的形式存在的,Linux内核为流数据提供了一个标准的编程接口,这种接口为数据从外部设备经内核到达用户进程提供了一个全双工通道。在这个通道中,数据的处理模块是作为可选的中间件由用户动态加载的,上面设计的视频压缩模块就是这样的一个中间件。本系统主要是用于实时视频应用,所以需要系统提供对流式文件格式的支持,这样在接收方利用标准的流视频播放软件,如MMedia Player就可以观看实时传输的视频.在本系统中采用了开放的ASF流格式.压缩后的视频数据在传输前需要对其进行ASF编码。流视频协议是为了在客户机和视频服务器之间进行通信而设计和标准化的。根据它们的功能,与网络上流视频相关的协议分为三类。网络层协议:网络层协议提供了基本的网络服务支持。IP就是网络上流视频使用的网络协议。传输协议:传输协议为流服务提供端对端的网络传输功能。TCP、UDP、RTP和RTCP就是网络上流视频使用的传输协议。话路控制协议:话路控制协议定义消息和程序。RTSP就是一种话路控制协议。

在发送方的数据面,压缩且经过ASF编码的视频数据被读出并在RTP/RTCP/RTSP层上打包,以提供定时和同步信息以及包的序列号。然后把这些打包的RTP数据流发送到UDP/TCP层和IP层,得到的IP包在网络上传输。在接收方则按照相反的方向处理。在控制面,RTCP包和RTSP包在UDP/TCP层上复用,并且被送到IP层,以便通过网络传输。

4 应用的价值

本网络摄像机的设计方案,由于采用了MPEG-4编码标准,得到了较高的压缩比。经测试,在50Kbps~100Kbps的带宽下,对CIF(352288,30fps)格式的视频有较好的表现能力,如果在进行实用化开发时,可以采用硬件压缩技术,压缩的性能将会更好。完全能够满足在目前宽带环境中的远程教学、网络视频会议以及视频监控的要求,特别是支持IPV6协议,在下一代网络中将会有十分广泛的应用。

参考文献:

[1] 杨健,张慧慧. 基于ARM和Ethernet的现场实时信号采集分析系统. 微计算机信息 2005,(22)

[2] 兰远东,王建中.基于Linux的嵌入式系统应用开发研究. 机械管理开发 2004,(02)

[3] 周兴, 陶品. 在嵌入式设备上实现IPv6网络的接入.单片机与嵌入式系统应用 ,2005( 08)

[4] 吴建平,崔勇,互联网的新未来:“IPv6”,中国科技奖励,2005,(07)

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top