基于3G多媒体传输控制系统的设计.docx

上传人:b****4 文档编号:764188 上传时间:2022-10-12 格式:DOCX 页数:5 大小:21.54KB
下载 相关 举报
基于3G多媒体传输控制系统的设计.docx_第1页
第1页 / 共5页
基于3G多媒体传输控制系统的设计.docx_第2页
第2页 / 共5页
基于3G多媒体传输控制系统的设计.docx_第3页
第3页 / 共5页
基于3G多媒体传输控制系统的设计.docx_第4页
第4页 / 共5页
基于3G多媒体传输控制系统的设计.docx_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基于3G多媒体传输控制系统的设计.docx

《基于3G多媒体传输控制系统的设计.docx》由会员分享,可在线阅读,更多相关《基于3G多媒体传输控制系统的设计.docx(5页珍藏版)》请在冰豆网上搜索。

基于3G多媒体传输控制系统的设计.docx

基于3G多媒体传输控制系统的设计

基于3G多媒体传输控制系统的设计

摘要:

本文以OMAP3530为平台,介绍了一种基于CDMA2000的3G网络视频播放系统的设计方案,利用嵌入式系统实现了视频文件的远程传输和播放,并通过对mplayer软件及算法的优化,提高了系统的性能,经过测试,达到了较好的效果。

关键词:

OMAP3530CDMA2000Mplayer3G嵌入式系统

目前,市场上的流媒体播放设备大部分分为2种类型,一种仍是单片机流媒体播放设备,这种设备仅仅只能靠自身的存储设备来自动循环播放流媒体文件;另一种是嵌入式流媒体播放设备,不过其流媒体更新还局限于局域网内部传输或者GPRS传输,前者传输速度较快但是受地域的局限性影响,而后者属于第二代通信系统,视频文件的传输速率受到很大影响。

随着第三代移动通信技术的普及和嵌入式技术的成熟以及高性能嵌入式处理器的飞速发展,我们完全可以利用3G无线网络传输速率的优势,搭载ARM系利嵌入式平台,使流媒体传输不受地域限制,能快速有效的传输。

同时,由TI公司生产的OMAP3530高性能处理器,能够完全很好的处理音视频播放以及读写大容量SD卡。

本文设计了一种基于先进微处理器(ARM)的3G移动多媒体播放器,结合了3G无线传输技术的传输距离远、成本低、接入方便等优点和嵌入式多媒体播放系统的体积小,功耗小等特点,能够快速、高效和大容量存储传输流媒体文件并实现实时播放功能。

1系统的基本结构

本系统采用中央服务器/客户机模式,由智能无线多媒体终端和一个发送流媒体文件的服务器组成,采用以太网(TCP/IP)实现信息传播,可以实现一点对多点及集中方式对终端进行控制播放。

系统由中央控制器(视频播放服务器)、播放控制软件、网络平台、网络型播放终端机构成。

1.1系统的基本框架

该系统具备的功能为:

(1)无线通信功能:

终端启动后自动连接上DynDNS服务器,方便服务器通过3G网络无线更新并存储流媒体文件内容;

(2)信息管理:

既可以通过3G网络对成百上千个终端播放情况进行集中统一的管理,也可以分级分区进行分布式管理。

可对所有终端播放公共信息,或仅针对一个终端播放个体信息[1];(3)远程受控:

随时接收并执行服务器端发送的任务;(4)服务器端能够对远程终端实现灵活的管理,可对相应终端进行实时播放和本地播放控制以及查询该终端本地播放内容和删除终端本地播放内容等操作,可监控各终端工作状态,多媒体播放质量不受带宽制约。

本系统的处理器是用TI公司生产的OMAP3530,采用了ARM+DSP的双核处理器(ARMCortexTM-A8处理器),能够将速度从600MHz(不包括NEON,追踪技术和二级高速缓冲存储器)提高到1GHz以上,集成了NANDFlash控制器、SD/MMC控制器、LCD控制器、SPI接口控制器等。

嵌入式操作系统构成如下:

(1)Bootloader使用TI公司专为其产品开发的启动代码U-BOOT;

(2)内核采用Linux2.6.28;(3)文件系统选择与NANDFlash兼容较好的UBI文件系统。

本文设计的嵌入式无线终端系统的硬件体系结构如图1所示。

1.23G在嵌入式上的驱动

第三代通信系统采用的是CDMA2000,CDMA2000做到了对CDMA(is-95)系统的完全兼容,为技术的延续性带来了明显的好处:

成熟性和可靠性比较有保障,同时也使CDMA2000成为从第二代向第三代移动通信过渡最平滑的选择。

3G无线网络在本设计中主要通过数据的发送与接收,实现终端与服务器的通信,因此,3G模块在ARM9上的驱动,使得ARM9实现最终上网功能显得异常重要。

本设计的3G模块采用了ETCOM公司生产的E300USB接口无线模块。

E300是一款CDMAEV-DO的Rev.A产品,下载速度可达到3.1Mbps。

它采用传统USB2.0接口,技术上采用美国高通6085芯片,支持多频段工作、支持外接TF卡从而可以具备U盘功能,在综合测试中显示出了多样化的功能和优异的通讯性能。

由于USB总线是主机和外设之间的一种连接,它只担当设备和主控制器之间的通信通道的角色。

所以当3G模块通过USB总线接入OMAP3530中时,我们必须将其驱动程序向子系统注册,在宿主机上编译内核,进入系统内核/drivers/usb/serial,在option.c中添加E300的vendor和product这两个ID号0x1bbb和0x000f。

然后再编译内核中的SCSIdevicesupport以及USBsupport,这样生成的内核拷进OMAP3530中。

当3G无线网卡插入USB总线的时候,USBcore就会调用probe方法来检测被传递进来的信息,以确定3G无线网卡与驱动程序是否相匹配。

当3G无线网卡被拔出时,USBcore就会调用disconnect的方法来完成卸载。

无线网卡的驱动与USBcore的通信时是通过批量方式来传送的。

而后将拨号脚本及所需文件存放在OMAP3530文件系统的/etc/ppp目录下:

evdo-connect-chat、evdo-disconnect-chat、resolv.conf、/peers/evdo。

其中evdo-connect-chat和evdo-disconnect-chat是chat的脚本;evdo是pppd脚本,里面配置了pppd程序参数;resolv.conf是域名服务器配置文件[2]。

至此,可以执行PPP拨号实现3G无线网络的接入功能。

试着PING外网,如果PING通就说明终端系统已实现上网功能。

2嵌入式流媒体传输软件层次结构

2.1系统软件的主流程(如图2所示)

系统开启后,Bootloader启动,完成了硬件设备的初始化,并引导系统内核启动。

系统执行完初始化任务后,首先自动驱动3G模块实现上网功能,而后接收来自服务器端传来的多媒体文件数据,与此同时系统自动挂载SD卡,调用Mplayer播放多媒体文件,在LCD上显示出来。

整个系统的软件部分的实现可以分成三个部分:

终端软件设计、服务器软件设计和播放器的实现。

2.2终端软件设计

终端软件控制部分其主要功能是通过USB控制E300模块和服务器进行通信,程序一开始就不断监听服务器端的呼叫,一旦收到服务器的连接请求呼叫,就会自动连接服务器端的IP。

连接成功后,终端就会开始等待服务器端传来的命令,收到文件传输命令后就开始和服务器进行通信。

本系统客户机端有两种播放形式可供选择。

流媒体实时播放形式。

ARM终端通过3G模块连接到服务器端,通过读取服务器端的内容,实现与服务器端的音视频内容同步实时播放。

这样,就能很好的控制系统终端的播放内容,实现了播放内容的实时更新。

同时,加入了通信报错功能,如果某台基于ARM模块的客户机终端因为网络故障或者机械故障等原因没有连上服务器端,服务器端会有提示。

如果服务器端显示出某个ARM模块因为网络故障没有连上服务器端,终端系统会自动播放SD卡上已存储的音视频文件,并每隔半小时,系统自动重启3G模块搜索网络。

传输到SD卡后实现播放。

由于实时在线播放成本过于高昂,很多情况下采用系统传输音视频文件到ARM模块的SD卡内存储再实现音视频循环播放。

一旦有流媒体文件要发送时,服务器端通过无线广域网或有线广域网发送音视频文件,客户端的智能无线多媒体终端通过3G模块传送接收音视频文件并送入ARM模块处理,同时存储到ARM模块上的SD卡内,通过媒体播放软件mplayer进行播放最终实现流媒体的播放。

系统能远程监控ARM模块,具有二级审核功能,可以远程删除SD卡内文件的,比如发送错误的文件或者一些过期的文件,我们可以在服务器端及时删除;也能在服务器端实时检测到ARM模块正在播放的音视频文件;当有紧急通知等即时信息播报时,系统能迅速切回到流媒体实时播放形式,在第一时间将最新鲜的资讯传递给受众人群[3]。

同时,当系统因为网络故障或者机械故障等原因没有连上服务器,服务器端会有提示。

该终端支持AVI/MP4/WAV/MPEG4/H.264等音视频解码标准。

2.3服务器软件设计

服务器端应用程序主要分为主线程和用户线程。

主线程主要负责用户线程的创建等工作。

用户线程主要是发送对终端的控制指令和接收反馈信息,以实现文件的传送,实时播放,读取终端播放情况等功能。

在数据传输过程中可能出现连接中断的情况,为此程序中采取了断电续传以及超时重传等功能,保证了数据的可靠传输。

由于服务器是通过3G模块终端移动接入Internert,每次拨号后获得的都是动态IP,为了解决这个问题,本系统使用了DDNS服务器。

DDNS是将终端用户的动态IP地址映射到一个固定的域名解析服务上,用户每次连接网络的时候客户端程序就会通过信息传递把该终端的动态IP地址传送给位于服务商主机上的服务器程序,服务器程序负责提供DNS服务并实现动态域名解析。

基于成本与技术层面的考虑,要求DDNS服务器满足:

免费;提供Linux客服端;速度快的要求,我们最终使用了DynDNS,把交叉编译的客户端放到终端运行,并让它在系统启动的时候自动去更新IP。

这样,终端就能够对固定域名IP进行解析后连接到服务器,从而使终端播放视频的地点和方式更加的灵活、方便。

服务器的流程图如图5所示,客户机终端接收到文件后就能自动通过Mplayer在液晶屏幕上播放出来。

2.4播放器的实现

系统的视频文件播放器选择的是Mplayer,该播放器具有广泛的输出设备支持;强大的播放能力;OSD功能以及强大的音频支持。

又因其是免费开源的,且能很好的移植进多种平台,Mplayer的软件包中含有针对ARM构架的优化代码,能加速对流媒体文件的处理速度,还能方便的加入新的解码函数。

Mplayer包含六个模块:

流接口,解复用器,主控制,解码器,视频输出和音频输出模块。

流接口实现了多媒体文件的输入接口,它可以从网络,标准输入,文件等得到多媒体数据。

然后通过复用模块AVI,asf解出相应的音视频包。

音频视频包被分派到解码模块进行解码,并通过音频输出模块和视频输出模块进行回放。

3终端系统性能优化

3.1播放器的优化

(1)Mplayer自带的mp3lib库浮点音频解码库的解码效率很低,在播放音频的时候声音比较拖沓。

所以我们选用开源软件解码库libmad,它具有100%定点计算的特点,完全可以取代原来的mp3lib库,进行音频解码[4];

(2)Mplayer的视频解码优化。

通过以上的方法,对视频解码进行优化。

使播放器的性能得到了较大提高。

CPU使用率较没优化前下降了许多,视频模仿效果得到较大改善。

3.2算法的优化

在实时播放过程中,为了能在有限的带宽下传输更高质量的视频画质,我们利用H.264标准对视频进行处理,经过在DSP内实现的H.264视频压缩和ARM中实现的负载均衡算法后,能有效提高解码效率、减少发送数据量、并能充分利用无线网络带宽资源。

然而H.264的优越性能是以增加计算复杂度为代价的,H.264解码的复杂度是MPEG-4的3倍。

多核处理器的诞生为高复杂度并行程序提供了物理平台,我们依据不同的子块类型对应着不同的计算复杂度,通过优化系统和内存降低系统消耗,来获得更高的加速比,使得整体数据搬运效率得到进一步提高。

针对ARM+DSP双核,利用基于宏块的细颗粒度并行算法,这种方法可以较好的均衡双核间的运算量分配问题。

然后根据H.264解码算法的特点,缩减不必要的判断,合理分配和使用内存,进而提高运行效率。

另一方面,我们对代码进行合理组织,帮助解码器生成并行度高的代码。

这样,H.264的解码速度得到相当大的提高。

于是我们着重采用并行算法来减少片上功耗问题。

这样,对于算法性能也提出了更高的要求,而FFT算法则是音视频编解码以及信号处理中的一个重要组成部分。

我们主要进行在ARMCortex-A8平台上的非原址(Out-of-place)FFT算法的性能优化。

利用TI公司提供的LINUX下的C6xcodegentool

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1