您好,欢迎来到尔游网。
搜索
您的当前位置:首页基于S3C2440的多格式媒体播放器的设计与实现

基于S3C2440的多格式媒体播放器的设计与实现

来源:尔游网
博士论坛

文章编号:1008-0570(2010)09-2-0012-02

《微计算机信息》(嵌入式与SOC)2010年第26卷第9-2期

基于S3C2440的多格式媒体播放器的设计与实现

DesignandImplementationofMulti-formatMediaPlayerbasedonS3C2440

(中南大学)

许雪梅徐蔚钦周文黄帅

XUXue-meiXUWei-qinZHOUWenHUANGShuai

摘要:设计了一种嵌入式多格式媒体播放器。硬件系统采用三星公司ARM9系列的S3C2440芯片作为其核心,软件平台采用

Linux操作系统,利用Mplayer编译的多种软件解码器,实现了一款可以播放各种常见格式的媒体播放器。该系统完成了播放的各项功能,具有很好的用户图形交互界面,为嵌入式ARM播放器的开发打下良好的基础。关键词:S3C2440;媒体播放器;嵌入式系统;用户图形界面中图分类号:TP37文献标识码:B

技术创新

Abstract:Thispaperresearchesthedesignofanembeddedmulti-formatmediaplayer.ThesystemselectsS3C2440chipbasedonSamsungARM9seriesasthecoreofhardwareplatformandembeddedLinuxasoperatingsystem.UsingavarietyofsoftwaredecodercompiledinMplayer,amediaplayerthatcanplaymostofcommonformatmediahavebeenrealized.Thissystemcancompletevari-ousfunctionsofplayingandincludeagoodgraphicaluserinterface.ItlaysagoodfoundationfordevelopmentofembeddedARMplayers.Keywords:S3C2440;Mediaplayer;Embeddedsystem;Graphicaluserinterface

1引言

随着电子技术,多媒体技术及网络技术的快速发展,视频播放系统正在向嵌入式,网络化方向发展,多媒体组件逐渐成为系统中不可缺少的重要组成部分。现在许多手机和PDA上已经有了多媒体播放器,可是与PC机上的播放器相比,现有的这些播放器的功能都很不完善,比如说支持的播放文件格式很少,只支持MPEG-1格式的文件,存储容量小,功耗高,持续播放时间不长,没有中文界面等。本文介绍的播放器系统提供了对流行的

3系统硬件设计

本系统由嵌入式微处理器、外围硬件设备、软件程序等部分组成,硬件部分的核心是ARM9系列的S3C2440芯片,主频高达530MHz,它提供了MMU处理虚拟内存管理、LCD控制器、

MPEG-1、MPEG-2、MPEG-4、DivX、H.2等格式的音视频文件的支持,具有良好的用户界面,高性能、低功耗、高集成度,可扩展

等特点。

2系统总体结构

整个播放器系统的总体架构如图1所示。

AC97控制器,S3C2440高度的集成性可节省外围电路,降低系统的成本。外围硬件设备包含M字节的SDRAM,工作在32位模式下。2个USBHOST,可以从USB接口读入移动存储介质中的多媒体。FLASH芯片采用K9F1280,用来存储启动引导程序U-boot、内核及文件系统。以太网接口可以作为读取接受流媒体的入口。TFTLCD作为视频输出设备,用来显示音视频文件的相关信息。音频D/A转换芯片选用具有IIS接口的U-DA1341。

硬件系统的多媒体数据流程为:外存中的多媒体文件通过SDRAM缓冲,分解为视频流和音频流,由主芯片S3C2440负责数据流的软件解码后,视频流通过LCD控制器送到TFTLCD输出,音频流通过AC97控制器,送到Speaker输出。

4软件设计与实现

图1系统总体设计框架图

为了提高系统运行效率,本文中的播放器系统采用

GEC2440平台作为硬件平台,软件平台选用2.6.12内核的Lin-ux操作系统来控制各设备驱动的正常运行,管理进程调度和资源(如CPU时间、内存)分配等。在Linux环境中交叉编译带有多种软件解码器的多媒体播放器Mplayer,实现多媒体文件的解码播放功能。最后选用MiniGUI图形用户接口设计播放器的人机交互界面,实现文件管理和播放控制两部分功能。

许雪梅:博士后副教授

-12-360元/年邮局订阅号:82-946

图2系统软件设计总体框架图

《现场总线技术应用200例》

您的论文得到两院院士关注

播放器软件主要由三部分组成,工作于从模式的Mplayer、系统控制程序以及用户界面模块,它们之间的关系结构如图2所示。

工作于从模式的Mplayer从系统控制程序模块获得播放控制相关命令,完成对多媒体文件的音视频预处理,解码,通过底层设备驱动同步输出;系统控制程序是播放器的主控模块,主要负责接收来自播放器界面的按键事件和消息,完成播放控制处理,信息管理;用户界面模块主要负责按键消息分发、处理,完成播放器的所有窗口的创建、窗口的管理功能,为播放器的错误提示信息、播放状态提示信息、节目信息提示等提供统一的抽象应用程序接口。

博士论坛

对于视频数据就会读取相应的帧,逐帧解码,将解码出来的信息输出,传递给下一级的输出层。

输出层:主要包含音、视频同步,音频输出和视频输出模块。这一层由输出模块选择最适合的输出设备驱动,进行音、视频的播放。

4.3MiniGUI制作用户界面

播放器的用户界面主要包括文件管理和播放控制两部分功能。文件管理主要是选择要播放的文件,实现文件列表管理、文件列表排序和添加删除文件。播放控制主要是对播放进行停止、暂停及快进等控制。

播放控制部分代码如下:

4.1Mplayer移植

Mplayer是Linux系统上优秀的多媒体播放器,源码开放,具有可移植性,本身编译自带了多种类型的解码器库,另外还可以自行增加解码库。它支持大多数的媒体格式如:MPEG/VOB,AVI,ASF/WMA/WMV,RM,QT/MOV/MP4,FLI,NuppelVideo,yuv4mpeg等文件。还能观看VC,SVCD,DVD,3ivx,DivX3/4/5,甚至WMV电影。

要使Mplayer在平台上顺利运行,需要先在平台上烧入引导加载程序(u-boot),操作系统,文件系统。下载最新版的Mplayer-1.0rc2,为了增加对各种音视频文件的支持,在配置时添加“—with-extralibdir=解码库路径”选项来增加libpng、libmad、libfaad三个解码库。最后根据需要进行配置和交叉编译,编译成功后将可执行文件烧入进GEC2440的根文件系统中,就可以实现基于S3C2440的基本软件解码播放功能。

4.2软件解码流程

播放器程序流程图如图3所示。该流程主要分四个功能层。

staticintMainEvent(HWNDhwnd,skin_itemt*item,intevent,void*data)

{

if(event=SIE_BUTTON_CLICKED){switch(item->id){

caseSIIDPLAY://播放按键消息……caseSIIDPAUSE://暂停按键消息……caseSIIDSTOP://停止按键消息……caseSIIDCLOSE://关闭播放器}

}elseif(event=SIE_SLIDER_CHANGED&&item->id!=SI-ID_VOLUME){……

}

return1;}

技术创新

图4播放效果图

5结语

本文提出了一种基于32位的高性能ARM处理器

S3C2440的多格式媒体播放器的系统设计和实现方案,经过测

图3程序流程图

输入层:程序从选定的多媒体文件读入数据,将它们放入缓冲区,并读入文件头,做一些基本的处理,读出文件长度,分析文件格式获取此文件的编码类型、码率、标签信息,判断文件是否损坏等。

分流层:即图中分离部分,其主要功能模块为分流器,它的功能是依靠数据头来判断音、视频在这段文件数据中各自的位置,继而对音、视频进行分离。分离后的音、视频数据将分别存入各自缓冲区。分流器同时将提取时间戳(PTS,Presentationtime

试可以流畅的播放DivX4.X、DivX5.X、DivX、WMV、MPEG-1和

MP3、aac等格式的音视频文件,播放分辨率为320×240,帧频可达30fps,音视频可以同步播放,播放效果如图4所示。该方案解决了有些格式的多媒体在嵌入式播放器中不能播放的问题,具有可扩展性,今后可以在以ARM为核心处理器的多媒体手机

或PDA上应用,特别是针对3G移动通信的发展,该播放器可以播放流媒体格式的文件,对于流媒体技术的应用开发也具有借鉴作用。

本文作者创新点:在基于S3C2440的嵌入式系统中,利用

stamp),随音、视频数据一同传送。通过PTS,我们可以有效的控

制音频和视频的同步输出。

解码层:该层不但包含音、视频的解码模块,也包含了音、视频解码器的选择模块。根据多媒体文件的格式程序会自动从

Mplayer的多种软件解码器,实现可播放各种格式多媒体的媒体

播放器系统。

ad_mp3lib.c,ad_acm.c,ad_pcm.c,vd_xvid.c,vd_qtvideo.c等解码器文件中选择对应的音视频解码器,并对解码器进行初始化,以便将音、视频数据分别进行解码,对于音频数据就会进行重采样,

《PLC技术应用200例》

参考文献

[1]王旭东,徐刚.基于WindowsCE.Net4.2嵌入式操作系统多媒体播放器的应用研究[J].微计算机信息,2006,6(2):77-79

[2]贺志强.基于Qtopia的媒体播放器的设计与实现[J].计算机与现代化,2009,6:81-83(下转第9页)邮局订阅号:82-946360元/年-13-

您的论文得到两院院士关注

博士论坛

2004,26(5):475-480.

[2]黄丛生,姚俊武.自重构机器人团队控制系统的开发[J].微计算机信息,2008,24(1-2):260-262.

[3]HowardA.,MataddM.,SukhatmeG..Anincrementalself-deploymentalgorithmformobilesensornetworks[J].AutonomousRobots,SpecialIssueonIntelligentEmbeddedSystems,2002,13(2):113-126.

[4]N.Pezeshkian,H.G.Nguyen,A.Burmeister.UnmannedGroundVehicleRadioRelayDeploymentSystemforNon-line-of-sightOperations[A].ProceedingsofIASTEDInternationalConferenceonRoboticsandApplications[C],Wuerzburg,Germany,2007:29-31.[5]UlamP.,ArkinR.Whengoodcommunicationsgobad:Communicationsrecoveryformulti-robotteams[A].Proceedingsof2004IEEEInternationalConferenceonRoboticsandAutomation[C],BarcelonaSpain,2004:3727-3734.

[6]VazquezJ.,MalcolmC.Distributedmulti-robotexplorationmaintainingamobilenetwork[A].ProceedingsofSecondIEEEInternationalConferenceonIntelligentSystems[C],2004:113-118.

作者简介:崔益安(1978-),男,湖南益阳人,中南大学信息物理工程学院讲师,博士,研究领域为人工智能,多智能系统等。

Biography:CuiYi-an(1978-),Male,HunanProvince,CentralSouthUniversity,Dr.,researchinterestsincludeAIandmulti-robotssystem.(410083湖南长沙中南大学信息物理工程学院)崔益安

(610031四川成都中铁二院工程集团有限责任公司)高景宏(SchoolofInfo-PhysicsEngineering,CentralSouthUniversity,Changsha410083,China)CUIYi-an

(EngineeringGroupCo.Ltd.OftheSecondInstituteOfChinaRailway,ChenduChina,610031)GAOJing-hong

通讯地址:(410083湖南长沙中南大学信息物理工程学院)

崔益安

(收稿日期:2009.11.21)(修稿日期:2010.02.25)

图4算法实现的准确性验证

5结论

本文在给出FSD算法流程的基础上,详细推到了CORDIC运算和对应的硬件算法逻辑,并给出了FSD算法实现的硬件原理图,进而在FPGA平台上实现了STC解码,并与理论解码算法比较,验证了其正确性。给出的实现方法能对WiMAX标准的实际实现起到一定的参考作用。

参考文献:

[1]NChiurtu,BRimoldi,ETelatar.Onthecapacityofmulti-an-tennaGaussianchannels[J].InformationTheory,2001IEEEInter-nationalSymposium,2001,24:53.

[2]刘冰.MIMO系统的信道容量分析[J].微计算机信息,2005,12-151.3:129-130、

[3]VTarokh,NSeshadri,ARCalderbank.Space-timeblockcodesfromorthogonaldesigns[J].IEEETransactiononInformation-Theory,1999,45:1456-1467.

[4]VTarokh,NSeshadri,ARCalderbank.Space-timecodesforhighdataratewirelesscommunication:performancecriterionandcodeconstruction[J].IEEETransactiononInformationTheory,1998,44:744-765.

[5]ABurg,MBor`gmann,MWenk.VLSIimplementationofMI-MOdetectionusingthespheredecodingalgorithm[J].IEEEJournalofSolid-StateCircuits,2005,40:1566-1577.

[6]HWang,PLeray,JPalicot.AReconfigurableArchitectureforMIMOSquareRootDecoder[J].LectureNotesinComputerSci-ence,ReconfigurableComputing:ArchitecturesandApplications,2006.

作者简介:陈宏(1972-),女(汉族),天津人,博士研究生,主要研究方向:无线宽带通信物理层算法研究。

Biography:ChenHong(1972-),female(Han),Tianjin,Tianjinuniversity,PhD,majoredincommunicationandinformationsys-tems,Researcharea:physicallayeralgorithmsinwirelessbroadbandcommunicationsystem.(300072天津天津大学电子信息工程学院)陈宏戴居丰(SchoolofElectronic&InformationEngineering,TianjinU-niversity,Tianjin,300072,China)CHENHongDAIJu-feng通讯地址:(300072天津天津大学电子信息工程学院)陈宏

(收稿日期:2009.11.21)(修稿日期:2010.02.25)

技术创新

(上接第13页)[3]鄂大伟.多媒体技术基础与应用(第三版)[M].北京:高等教育出版社,2007

[4]杨小军.基于嵌入式Linux系统界面的研究[[J].现代电子技术,2004,27(15):-91

[5]魏永明,耿岳,钟书毅.LINUX设备驱动程序(第三版)[M].北京:中国电力出版社,2006

作者简介:许雪梅(1971-),女,博士后,副教授,研究方向为光电子技术及信号采集与处理;徐蔚钦(1986-)男,在读硕士,研究方向为

嵌入式系统开发与应用。

Biography:XUXue-mei(1971-),female,postdoctoral,researcharea:optoelectronictechnologyandsignalcollectionandprocess-ing.(410083长沙中南大学物理科学与技术学院)许雪梅徐蔚钦

周文黄帅

(上接第11页)进行的仿真实验表明SSS策略能有效建立通信链路。下一步的研究将对算法策略进行进一步改进,并研究链路建立的性能效果的评价方法等。

(SchoolofPhysicsScienceandTechnology,CentralSouthU-niversity,ChangshaHunan410083,China)XUXue-meiXUWei-qinZHOUWenHUANGShuai

通讯地址:(410083湖南沙市中南大学校本部桃A328)

徐蔚钦

(收稿日期:2009.11.21)(修稿日期:2010.02.25)

参考文献

[1]谢云,杨宜民.全自主机器人足球系统的研究综述[J].机器人,

《PLC技术应用200例》

邮局订阅号:82-946360元/年-9-

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- axer.cn 版权所有 湘ICP备2023022495号-12

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务