基于Au1200的无线车载视频监控的实现

2012-03-07 14:06:23来源: 互联网
引 言

  随着无线宽带网络的发展、数字移动电视的建设、多媒体技术的应用,集多种功能于一体的无线车载媒体处理系统应运而生,它可广泛地应用于铁路、地铁、客运汽车等交通系统。

  本文简要介绍了基于Au1200处理器,包含无线传输、视频播放、视频监控等多种功能的嵌入式无线车载媒体处理系统的设计方案,详细描述了基于ffmpeg的软压缩方法,设计并实现了车载系统中视频监控部分的视频采集和视频压缩。

  1 无线车载媒体处理系统简介

  基于Au1200的无线车载媒体处理系统网络架构如图1所示。采用客户端/服务器架构,由车载客户端、车站服务器及通信网络三部分组成。其中,客户端选用AlchemyTM Au1200作为主控芯片。该芯片采用了MIPS32核心,是针对数字多媒体播放器、汽车信息娱乐系统等应用领域设计的一款低功耗、高性能的嵌入式处理芯片。利用Au1200在媒体处理方面的优势及其丰富的外围接口,无线车载媒体处理器的系统框图如图2所示。用户可以通过按键控制整个系统无线传输、视频播放、视频监控等多种功能。

  

基于Au1200的无线车载媒体处理系统网络架构

 

  服务器端使用通用的PC机服务器,为整个系统提供多媒体资源管理和无线网络服务。

  每个装有无线车载媒体处理器的车辆,可以通过无线网络连接服务器,并按照指定的方式传输媒体资源。

  2 无线车载视频监控硬件设计

  Au1200嵌入式处理器采用MIPS32核心,能够支持包括MEPG-1,MPEG-2,MPEG-4,WMV9,H.263,MP3,WMA,ASF,AVI和JPEG等多种媒体格式,其内部集成了专门的媒体加速引擎(Media Acceler-ation Engine,MAE),不需要外部DSP,因而可以简化编程环境并减少组件,拥有丰富的片上资源和外部接口,支持USB 2.0,IDE,CCIR656摄像头等接口。无线车载视频监控硬件框图如图3所示。

  

无线车载视频监控硬件框图

 

  其中包括:

  (1)视频监控输入部分:采用Omni Vision公司的彩色CMOS图像传感器OV9650作为系统的视频输入设备,利用Au1200自带的CIM(Camera Interface Module)接口,可以方便地控制OV9650。通过I2C方式,配置OV9650摄像头的工作模式,通过CIM接口读入采集到的视频数据,并映射到内存单元中。根据不同流向需求,处理视频数据流,实现系统的录制、存储、播放、传送等功能。

  (2)视频监控数据存放部分:通过ffmpeg软压缩方法,将采集到的视频数据按指定视频格式实时压缩成文件存储于硬盘中。

  (3)视频监控数据的实时播放部分:采集到的视频数据映射到内存后,将RGB视频数据直接输出到LCD缓冲区中,即可实现监控视频在LCD设备中的实时播放。系统也支持视频输出到VGA接口的显示设备中实时播放。此时,需要将数字视频数据转换为模拟视频数据。可采用ADI公司的ADV7123芯片实现三路高速、10位输入的高速视频数/模转换。三路DAC可以分别处理红、绿、蓝视频数据,实现模拟显示终端的高分辨率显示。

  (4)视频监控的远程传输部分:通过客户端系统的无线网卡(支持802.11b/g)连接无线局域网络,将硬盘中的录像文件以无线的方式,上传到服务器中进行保存。

  (5)用户控制部分:系统设计功能按键,分别连接到支持中断的GPIO口上,用户通过按键选择方式,方便地对视频监控进行控制。

3 无线车载视频监控的软件设计

  无线车载视频监控的软件部分主要包括:

  (1)内核及驱动部分

  系统使用Linux 2.6.11内核作为系统的内核,通过make menuconfig命令,根据用户需要配置合适的内核和驱动,生成内核文件镜像。设备驱动程序与系统硬件紧密相关,通过修改和调试后模块化的集成于内核之中。所涉及到的驱动程序包括用户按键驱动、摄像头驱动、LCD/VGA显示驱动、硬盘驱动、播放器相关的MAE驱动和与无线传输相关的无线网卡驱动等。在此着重介绍系统摄像头驱动的关键部分。

  在摄像头驱动中,定义数据结构cim_cmos_cam-era_config对摄像头设备进行描述:

  

 

  通过上述数据结构,可以有效地描述摄像头设备的各种参数。其中,config_cmd是一个十六进制的数组,对应不同工作模式的摄像头配置摄像头寄存器。

  驱动程序为上层应用提供了API接口,通过对应file_operations数据结构中的各个成员函数进行系统调用,在上层程序中,利用函数调用,读取驱动中fileoperations的相应成员函数指针,完成对应函数功能。

  在系统的CIM接口的驱动程序中做如下定义:

  

 

  其成员函数分别完成了与Au1200 CIM接口相连摄像头设备的打开、控制、读写、映射以及释放等基本功能。例如通过ioctl操作对摄像头进行配置:

  

 

  (2)库与协议栈部分

  为了支持上层应用程序的运行,软件系统中还必须包含众多与之相关的函数库和协议栈。其中,主要包括了与系统运行相关的基本函数库,与音视频编解码相关的音视频编码库,与用户界面相关的Qtopia库以及各种接口协议组成的协议栈。

(3)应用层部分

  视频监控的软件流程图如图4所示。启动摄像头后,将采集到的视频数据映射到内存中。通过输出控制,选择视频数据的流向。其中,数据处理部分主要涉及与ffmpeg相关的视频压缩处理。

  

视频监控的软件流程图

 

  (4)用户控制部分

  系统采用Qtopia-core-opensource-4.2.2开发用户界面。由于采用按键控制的方式,需要将按键驱动程序添加到QT库中。通过中断的方式,可以捕获按键信号,并通过QT中的信号与槽的机制控制信号传输,使得当每个按钮被按下时,触发用户程序中的某个函数,并将相应的信号量传递出去,从而实现对整个系统的控制。

  4 基于ffmpeg的软压缩方法

  ffmpeg是一个开源免费的软件,它提供了录制、转换以及流化音视频的完整解决方案。使用ffmpeg软压缩的方式,不增加系统额外的硬件开销,对采集到的视频数据进行实时压缩。在视频处理应用程序的编写过程中,需要按照ffmpeg定义的数据结构来描述视频数据,调用ffmpeg中的各种库函数,将摄像头采集到的视频数据按照设定的格式进行压缩,并存成视频文件,其处理流程如图5所示。

  

 

  其中包括:

  (1)ffmpeg初始化:定义与视频处理相关的数据结构AVFormatContext,AVOutputFormat,AVStream,AVCodecContext,AVCodec,AVFrame,AVPicture等,并通过av_register_all(),av_alloc_format_context()等函数初始化相应的数据结构。

  (2)压缩参数设置:主要涉及到视频压缩的相关参数,如帧率、视频分辨率、编码类型等,通过av_set_parameters()函数进行设置。

  (3)图像格式转换和视频数据填充:按照视频监控要求,利用img_convert()等函数对图像格式进行转换,并将转换后的视频数据通过avpicture_fill(),fill_yuv_image()等函数填充到AVPicture数据结构中,以供编码器使用。

  (4)ffmpeg视频编码:利用avcodec_encode_rid-eo(),av_rescale_q()等函数,调用ffmpeg编码库进行视频编码。

  (5)文件存储操作:利用av_write_header(),av_write_frame(),av_write_trailer()等函数将压缩后的视频数据写入指定文件中。

  (6)采集结束:采集结束后,利用avcodec_close(),av free()等函数释放内存资源,退出程序。

  ffmpeg提供功能丰富的音视频函数库,包括libav-codec,libavformat,libavdevice,libavfilter,libavutil和libswscale等,可为用户提供许多音视频处理相关的操作。系统应用程序中调用到的ffmpeg相关函数主要依赖libavformat库(支持所有的普通音视格式的解析器和产生器的库)和libavcodec库(具有高效、高可复用的音频/视频编解码库)。

  5 结 语

  本文介绍了基于Au1200无线车载视频监控的设计与实现,着重介绍了基于ffmpeg软压缩方法对视频数据的压缩和存储的实现,在实际应用中具有价值。

关键字:Au1200  无线车载  视频监控

编辑:神话 引用地址:http://www.eeworld.com.cn/mndz/2012/0307/article_14833.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
Au1200
无线车载
视频监控

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved