手机端
or

欢迎您加入我爱方案网QQ群

1.智能产品外包服务群(311606115)
2.嵌入式项目开发群(491609563)

基于H.264的嵌入式无线视频监控系统设计

秦国伟; 李峰; 陆鸣| H.264,RTP,嵌入式系统| 2010-12-14
1068 收藏
分享到: 
每日精选
热门推荐

【中心议题】

  •        *设计了一种基于H.264视频压缩标准的嵌入式无线视频监控系统
  •        *详细给出了该系统硬件和相应的软件实现方法

【解决方案】

  •        *结合嵌入式技术、视频压缩编码技术、无线通讯技术、网络技术、监控技术等多项技术
  •        *采用嵌入式技术和Linux实时多任务操作系统

1概述

针对客户在远程视频监控中提出的具体需求提出一套解决方案,他们希望能够通过无线的方式来传输实时画面,另一方面,他们希望获取比较清晰的图象,同时客户对图象传输的实时性要求比较高,很明显,用传统PC机加图像采集卡的方式很难满足这样的需求。以往很多视频监控系统都使用了MPEG-4标准,而新一代视频压缩标准H.264是面向无线网络和因特网的视频图像编码与传输技术,除了增强网络适应能力外,大幅度提高了压缩编码效率,在相同码率下能够获得更高的主客观质量。

描述的嵌入式无线视频监控系统就是充分利用了H.264视频压缩技术与码分多址无线网络技术而搭建的。提出了一种基于采用华为海思半导体公司Hi3512芯片的系统设计方案,分别对系统软硬件设计进行了详细讨论,完成了视频信号的前端采集、压缩及无线传输功能。

2系统整体架构

该系统由无线AP接入站、中心服务器、监控终端组成。无线终端用户向中心服务器发出请求命令,先通过CDMA网关接入Internet,然后送达中心服务器。中心服务器收到命令后进行命令解析,再通过无线网络向监控终端发送控制命令,监控终端收到中心端任务后,就通过图像采集设备拍摄现场图像,并将通过H.264压缩编码后的图像数据按照RTP通信协议,经由码分多址模块发回中心服务器。

中心服务器再通过无线网络向用户发送监控视频或图片;对于远程监控用户,中心服务器则直接通过Internet向网络用户提供视频或图片传输。通过内置PELCOD协议,用户可以十分方便的通过客户端监控软件上面的云台控制软键盘对前端采集设备进行360度全景控制,中心服务器首先需要处理在传输中出现的数据包错序、校验出错、丢包、重包等现象;其次,中心服务器还要监控数据传输质量并进行反馈,由此来控制码分多址在不同信号质量下发送数据的速度;最后,服务器还要为用户提供监控系统的Web浏览、视频数据硬盘存储、下载等功能。系统采用双C/S架构,具有良好的扩容性,多个终端安装在同一地点的不同区域,能够实现对不同目标的实时监控。

 

3监控终端设计

监控端系统基于海思的高性能通信媒体处理器Hi3512搭建。Hi3512是一款基于ARM9DSP双处理器内核及硬件加速引擎的高集成、可编程、支持MPEG-4 AVC/H.264协议的高性能通信媒体处理器。围绕Hi3512分别搭建相应的硬件和软件环境,就可以很方便的实现监控终端的设计。

3.1监控终端硬件设计

Hi3512是一款基于ARM9处理器内核以及视频硬件加速引擎的高性能通信媒体处理器,具有

高集成、可编程、支持H.264MJPEG等多协议的优点,可广泛应用于实时视频通信、数字图像监控、网络摄像机等领域:视频处理单元能够支持多种协议的实时编解码;支持H.264编解码90fps@D1;支持高清1.3M Pixels@30fps,支持最大300万象素的Jpeg抓拍。H264 Main Profile强大的编码算法极大的提高了视频质量,并且能够灵活的提供场编码或者帧编码,为客户支持不同的显示终端提供了方便;视频处理单元还支持MJPEGH264同时编码。

图形处理单元能够提供De-interlace算法处理、灵活的运动检测;支持视频、图形缩放;支持OSD

码分多址通讯模块采用深圳华为公司的TM-376CDMAModem,其内置SIM,其内部核心芯

片是Qual-WC65。该模块包含基于码分多址业务标准IS95IS2000的调制解调系统,而且带内置TCP/IP协议栈,可利用AT命令直接与其通信。

码分多址模块与核心处理器之间使用UART进行连接。

 

3.2监控终端软件设计

控制终端软件核心是嵌入式Linux操作系统,所有功能的实现都基于Linux操作系统来完成。主要包括三个层次,最底层是BootLoader服务程序和基本外设驱动,它主要完成系统加载和ARM核心处理器的初始化配置,第二层主要是摄像头模块和码分多址模块的驱动程序,最后一层是系统的应用程序。

Linux的模块化内核设计可以使其独立加载或卸载,小型化通过对Linux内核重新编译,在编译时仔细选择嵌入式设备所需要的功能模块,同时删除不需要的功能。这里只需要串口驱动、SAA7114视频解码芯片驱动,还有拨号网络应用,还要支持PPPTCP/IP网络协议,其他都可以删除掉,使系统运行所需要的内核显著减小至lMb以内。码分多址拨号通过运行PPP程序进行。在Linux下的PPP包是专门为解决Modem拨号上网问题而编写的,并且开源。PPP拨号脚本程序主要通过调用pppdchat这两个应用程序,并通过AT指令实现对Modem的操作。应用程序主要是监听用户命令,收到命令后调用摄像头模块采集图像,然后再使用码分多址模块来发送图像数据。终端一旦初始化后,就与中心服务器建立TCP连接,在运行过程中终端跟中心服务器保持TCP连接,中心服务器可随时主动请求图像数据,因此,对于对交互性和实时性有较高要求的应用系统可实现较好的响应。

4基于RTPH.264视频流传输控制

由于H.264具有前面所指出的多种优点,本系统设计了基于RTPH.264视频流传输控制。RTP协议对实时数据传输的支持包括时间戳、序列号、荷载类型标识和源标识等;时间戳反映了RTP数据帧中第一字节数据采样时间,采样时间是线性单调增长的。接收方根据收到数据帧时间戳来重建接收数据时序关系,以便正确回放媒体流。序列号用于数据传送丢失检测和帧序重构;荷载类型标识则指明RTP帧数据荷载的编码格式;源标识用于指示接收方式所接收数据的来源。以上功能均通过RTP的帧头来实现。

 

H.264视频流分别装上RTP报头、UDP报头和IP报头,IP数据包通过Internet传送到接收端。接收端收到IP数据包后按相反的顺序将RTP报头和视频流数据提取出来,根据RTP报头中的序列号和将视频流数据放入接收端缓存供解码器解码输出。RTP反馈控制主要通过RTCP的接收方报告来完成,通过提取RTCP中接收方报告SR的反馈信息估计网络的可用带宽,再根据可用带宽动态调整编码的参数,使RTP发送码率小于网络的可用带宽,从而保证传输的可靠性。

5中心端设计

H.264软件解码嵌入式终端发送过来的监控数据,并将得到的图像保存和传输给终端用户。控制中心主机通过宽带登录到Internet,必须申请一个静态IP地址。主机登录Internet,即可运行服务器端软件。服务器端程序设计主要包括网络通信、接收数据、H.264软件解码、保存图像、即时重显图像。整个过程属于软件系统开发,不再详细讨论。

结束语

该方案是基于移动设备所需的远程视频监控应用背景下提出的,本系统的应用会为远程视频监控、教学提供有力保证。提出了结合嵌入式技术、视频压缩编码技术、无线通讯技术、网络技术、监控技术等多项技术实现的无线视频监控系统,采用嵌入式技术和Linux实时多任务操作系统,基于码分多址无线数据传送、H.264视频压缩、RTP实时传输控制,使系统有极高的实用价值。

点赞

深圳市中电网络技术有限公司 Copyright© www.52solution.com 粤ICP备10202284号