首页 > 范文大全 > 正文

基于IME6400的MPEG-4嵌入式视频监控系统实现

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于IME6400的MPEG-4嵌入式视频监控系统实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:本文基于MPEG-4的编码原理,利用嵌入式及网络技术设计实现了嵌入式视频监控系统。

关键词:视频监控;MPEG-4;ime6400;AT91RM9200

引言

对于嵌入式视频监控系统而言,采用的视频编码标准的好坏直接影响着整个系统功能的优劣。现有的国际视频编码标准如MPEG-1、MPEG-2、H.261、H.263等均采用基于图像块的编码方式,在高压缩比时会出现方块效应且物体运动不自然,严重时还会无法实现序列图像中物体的独立编码、解码和操纵,同时也难以实现图像编码的可伸缩性。较之前标准而言,mpeg-4采用的是基于内容的数据压缩方式,缩短了存取时间,容错性也大大增强。

本文中的系统基于MPEG-4视频编码标准,利用ARM9处理器AT91RM9200控制视频处理芯片IME6400实现视频监控,并通过网络传输来实现。

MPEG-4视频编码原理

MPEG-4引入了一个关键的概念:AV对象。AV对象是MPEG-4为支持基于内容编码而提出的,AV对象是听觉、视觉或者视听觉内容的表示单元,这些原始AV对象可以是自然的或合成的声音、图像或视频,同时又可进一步组成复合AV对象。AV对象的提出使多媒体通信具有高度的交互能力和编码效率。

系统硬件设计

系统硬件框图

整个系统的硬件框图如图1所示。系统输入的PAL制式模拟视频信号被送入视频转换芯片BT829B,并被转换为数字视频信号,之后此数字视频信号被送入视频压缩编码芯片IME6400进行MPEG-4编码压缩,压缩得到的分辨率可选,此系统控制输出的信号分辨率为704×576。AT91RM9200利用内嵌的Linux操作系统通过I2C总线对BT829B进行配置,通过数据及地址总线完成和IME6400的连接,通过网络接口传输MPEG-4数据流。从系统硬件框图可见,整个系统主要包括三个模块:视频信号采集、视频信号处理和控制传输。

视频信号采集模块

该模块以高效视频采集芯片BT829B为核心,支持四路模拟NTSC/PAL/SECAM视频信号输入或三路模拟视频输入一路数字视频输入,输入的视频信号经亮色分离转换成CCIR-601接口的4:2:2格式YUV数字视频信号。

BT829B有两组时钟输入,如果只用其解码PAL制式的视频信号,应把时钟输入到XTOI引脚,并把XT1I引脚接低电平。视频设备输出的模拟视频信号以一定的采样率离散化为数字视频信号,然后送人视频压缩编码芯片IME6400进行编码处理,即把视频解码输出的CCIR601格式的信号转化为编码器可以处理的格式,然后再进行压缩编码。

对于PAL制式的视频信号,BT829B提供17.73447MHz的时钟信号作为IME6400的输入数字视频信号时钟,同时场同步信号、行同,步信号、奇偶场的识别信号以及有效视频信号作为BT829B控制数据传输的控制信号。BT829B还需要合理地配置其寄存器,这可利用AT91RM9200通过I2c接口实现。

视频信号处理模块

该模块以MPEG-4压缩编码芯片IME6400为核心,其为4通道MPBG-4数字声像压缩芯片,具有实时的MPEG-4视频编码,PAL制式最大支持720×576@25fps,NTSC为72×480@30fps,图像尺寸可变,8/16位宽可调。

为了压缩视频并存储编码流,需要有足够的空间来暂存视频编码流,因此要用外部的SDRAM。本设计选用HY57V643220CTSDRAM,时钟是IME6400时钟信号MCLK的3倍或4倍,由IME6400的信号DIV34决定。本设计中,IME6400的时钟MCLK是27MHz,选3倍MCLK时钟,所以SDRAM时钟为81MHz,IME6400和SDRAM的连接框图如图2所示。

IME6400的启动方式选择为外部ROM启动。外部启动ROM的最大容量不能超过4M字节,选用27C512,5V供电。

控制传输模块

此部分的核心为AT91RM9200。

AT91RM9200通过数据总线向IME6400主接口内的命令寄存器发送命令,使SDRAM开始运行以配置工作寄存器参数。当初始化完成后启动视频处理,IME6400将编码后的视频数据流存入FIFO,并发出中断信号通知AT91RM9200读取数据。AT91RM9200接收到IME6400的中断信号后使用内置的100M以太网控制器,通过外接物理层收发芯片DM9161将读取的MPEG-4视频数据流通过网络发送到远端监控中心,AT91RM9200和IME6400的连接框图如图3所示。

系统软件设计

在系统硬件的基础上,将Linux操作系统下载到AT91RM9200中并编写引导程序Bootloader,初始化函数和控制函数,系统的软件框图如图4所示。

根据框图,上电后AT91RM9200首先通过I2c接口完成对BT829B的参数初始化,使BT829B工作在PAL模式,使用单晶振并使其输出的视频信号为4:2:2格式的YUV数字视频信号。之后运行启动引导程序Bootloader,该程序首先初始化硬件设备并把程序重定位到SDRAM中,接着设置堆栈并检测系统内存映射,然后将操作系统内核从FLASH拷贝到SDRAM并把控制权交给内核。内核调度进程启动视频处理程序,从缓冲区读取数据并通过网络将视频流发送到远程监控端。

结语

本文基于MPEG-4编码标准,利用BT829B、IME6400及AT91RM9200设计了一种嵌入式视频监控系统。该监控系统稳定性高,支持基于网络的数据传输,在工程项目中得到了实际应用,具有良好的应用前景。