当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]基于TMS320 DM355监控服务器设计与实现

本设计以TI公司DaVinci系列芯片作为硬件平台,结合嵌入式Linux操作系统,实现了基于TMS320DM355的视频服务器。本文阐述了各硬件模块的选型与功能,以及服务器的软件架构与实现。同时给出了整个网络视频监控系统的框架,包括视频服务器、网络传输链路及客户监控端。本设计采用MPEG4视频编码标准,由DM355内部的MPEG/JPEG协处理器完成。实验表明,在带宽充足的条件下,可实现实时监控。


    1.引言

  多媒体监控一直是人们关注的应用技术热点之一,它以直观、方便、信息内容丰富等特点被广泛应用于许多场合。而随着嵌入式系统和视频压缩技术的不断发展,基于嵌入式技术的视频监控系统也得到了快速的发展与应用。其通过把摄像机输出的模拟信号转化为数字信号,再经过嵌入式系统编码和传输。在客户端,通过安装监控软件,或者直接通过Web进行监控。采用嵌入式Linux操作系统的视频监控系统具备编码处理、网络通信、自动控制等强大功能,直接支持网络传输和网络管理,使得监控范围达到了一定的广度。

  此外,嵌入式处理器的发展也日新月异,有专注于控制的ARM系列处理器,擅长快速计算的DSP处理器,还有一些针对性非常强的处理器,可以实现硬件视频编解码等。而德州仪器(TI)新近推出的针对便携式高清(HD)视频产品市场的达芬奇(DaVinci)处理器TMS320DM355处理器,结合了它们的特长。其内部具有一个ARM9EJ-S的主处理器,负责整个系统的控制,同时也集成了一个MPEG/JPEG协处理器,专注于MPEG/JPEG算法的实现。其内部的视频处理子系统(VPSS)及其它外设可方便快速的实现视频的采集、预处理、显示、网络传输等功能。同时,其低廉的价格也为用户降低了成本。而本设计即选用此处理器。

  2.视频监控系统整体框架

  本嵌入式网络视频监控系统由视频服务器、网络传输链路、客户监控端等3部分组成。视频服务器负责音视频等数据的采集、压缩处理等,网络传输链路将视频服务器压缩和发送的多媒体数据进行传输,而客户端监控部分接收音视频数据,进行解压、显示以及对视频服务器的控制等。整个系统的示意图如图1所示。


 图1视频监控系统示意图

 2.1.视频服务器

  视频服务器采用德州仪器(TI)新近推出的达芬奇(DaVinci)系列处理器TMS320DM355作为主处理器,接收CCD摄像头采集的视频信号,进行预处理及MPEG4压缩,然后将压缩后的数据通过网络传输。同时,接收上位机发送的命令,解析并且执行。每个设备都具有唯一的ID,当客户端进行连接时,服务器会首先检查ID号是否匹配,以防止恶意连接。此外,当视频服务器运行异常时,其内部的守护进程会进行监视,适当的时候进行重启。

  2.2.网络传输链路

  网络传输链路负责多媒体数据的传输。此处,可以根据实际需求,进行网络传输链路的选择。局域网(LAN)、无线局域网(WLAN)、INTERNET、CDMA、3G等都是可供选择的传输链路。其中,局域网(LAN)和无线局域网(WLAN)带宽充足、稳定,并且设备简单,易于实现,但会受到距离的限制。INTERNET和CDMA网络可以使监控距离得到扩展,但是其带宽受限,图像质量会受到影响。而最新的3G网络也是一个不错的选择,带宽在静止状态下可以达到2Mbps,但是其在稳定性方面还待测试。用户可以根据自己的需求进行选择,或者直接搭建专线网络,以实现各自的监控指标。

  2.3.客户监控端

  客户端主要与各个视频服务器进行连接,以实现监控。客户端可以采用PC机或者便携式设备,与网络传输链路相连,通过上位机软件与视频服务器连接,接收视频服务器发送的多媒体数据,进行解码,然后在上位机显示。同时,向视频服务器发送控制命令,实现云台、镜头等的控制。3.视频服务器硬件设计3.1.整体框架视频服务器完成视频的采集、MPEG4压缩和网络传输,以及云台、镜头等的控制。其硬件结构框图如图2所示。

图2视频服务器硬件结构框图

 4.1.系统上电及引导程序

  系统上电时,是由DM355的输入引脚BTSEL[1:0]来决定从ROM或者AEMIF启动。此设计处选择从ROM启动。此时,系统直接跳转到内部ROM的起始地址(0X00008000)执行指令。内嵌的ROM启动代码(RBL)进行一些配置操作,然后读取BOOTCFG寄存器来决定是从NAND、MMC/SD或者UART启动。本设计选择NAND启动。NANDflash里预先烧写好了U-boot、Linux内核以及根文件系统。NAND启动以后,会读取bootloader的stage1部分的指令对系统进行必要的设置,然后将stage2部分的代码搬移到SDRAM中进行执行。当用户选择启动内核时,bootloader将内核从NANDflash里搬运到SDRAM,然后跳转到内核的起始地址进行执行,启动内核。

  4.2.嵌入式Linux操作系统

  嵌入式Linux操作系统是针对不同的应用需求,对Linux内核进行裁剪修改使之能在嵌入式计算机系统上运行的一种操作系统。它开放源码,内核小、效率高,适用于多种CPU和硬件平台,性能稳定,可移植性好等特点为其开辟了一片属于自己的空间。

  本设计选择嵌入式Linux操作系统作为软件平台,实现各硬件模块的驱动的添加及移植,用户应用程序的编写及调试。

  4.3.用户应用程序

  本设计中将整个应用程序分为2个进程,data进程和command进程。Data进程主要负责音视频数据的采集、压缩和网络传输。其中,又分为3个线程,capture线程、编码线程以及control线程。Capture线程控制采集设备进行图像及声音的采集及预处理;编码线程从capture线程读取数据,进行MPEG4(视频)或G.711(音频)压缩。Control线程从编码线程读取压缩完的数据,通过网络发送给客户端。而command进程接收上位机命令,解析、执行,并且控制云台,镜头及测温等。Command进程还加入了用户ID检验等功能,提供简单的保护机制。应用程序的流程图如图4所示。

图4应用程序流程图

 

  4.4.MPEG/JPEG协处理器编码

  由于DM355内部集成了MPEG/JPEG协处理器,对于音视频的编解码主要是通过它来完成的。而对它的操作是依靠TI公司制订的基于eXpressDSP算法互用性标准(xDAIS)的xDAIS-DM标准实现的。此标准定义了一组统一的API,这些API是建立在各种多媒体算法之上的,这样即简化了集成难度,同时保证了互用性。TI提出的CodecEngine就是一组用于示例和运行xDAIS算法的API,而VISA(Video,Image,Speech,Audio)类是用来与xDAIS-DM算法标准定义的基于各种多媒体算法的API函数集进行交互的接口。在应用程序编程中,通过进行如下的操作来完成视频的编码。

  打开编解码引擎:

  staticStringengineName="videnc"

  Engine_Handlece;Engine_Errorerrorcode;ce=Engine_open(engineName,NULL,&errorcode);视频编码类提供四个API函数:创建视频编码类:VIDENC_Handlehenc;staticStringencoderName="mpeg4enc";henc=VIDENC_create(ce,encoderName,NULL);其中ce为打开编码引擎时返回的句柄。对视频编码类进行控制,设置视频编码动态参数:VIDENC_control(henc,XDM_SETPARAMS,&dynamicParams,&encStatus);处理数据,进行编码:VIDENC_process(henc,&inBufDesc,&outBufDesc,&inArgs,&outArgs);其中参数henc为创建的VISA类句柄,inBufDesc为原始数据buffer,outBufDesc为压缩后数据buffer,inArgs和outArgs为输入输出配置参数。销毁创建的视频编码类:VIDENC_delete(henc);在应用程序中调用以上API,即可利用MPEG/JPEG协处理器对原始视频数据进行压缩,而音频数据的压缩与此类似。


   5.总结

    本文介绍了基于最新Davinci平台的视频监控服务器的设计与实现,包括硬件组成和软件设计。整个视频服务器利用DM355内部的ARM926EJ-S核运行嵌入式Linux操作系统,而用MPEG/JPEG协处理器进行MPEG4编码相关的计算。文中对利用MPEG/JPEG协处理器进行编码也做了介绍,同时给出了整个视频监控系统的框架。经过在局域网内测试,可以实现D1格式的视频的实时传输,同时可以进行云台及镜头等的控制。利用该系统可实现楼宇、街道等场所的视频监控。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭