资源描述:
《基于ARM的嵌入式AVS视频播放器的设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第27卷第1期计算机应用与软件Vol127No.12010年1月ComputerApplicationsandSoftwareJan.2010基于ARM的嵌入式AVS视频播放器的设计吴文相邵时(华东师范大学上海200241)摘要实现了一种基于ARM处理器的嵌入式AVS视频播放器的设计方案。该方案不需添加专用的AVS视频解码芯片,仅以ARM处理器以及外围模块为硬件平台,以嵌入式Linux为操作系统,通过向MPlayer软件添加AVS视频解码库的方法,实现了AVS视频播放功能,能实时播放25f/s,分
2、辨率为640×480的AVS视频流。关键词嵌入式系统LinuxARMAVS视频解码DESIGNOFTHEEMBEDDEDAVSVIDEOPLAYERBASEDONARMPROCESSORWuWenxiangShaoShi(EastChinaNormalUniversity,Shanghai200241,China)AbstractInthispaper,thedesignoftheembeddedAVSvideoplayerbasedonARMprocessorisimplemented.Inst
3、eadofaddingspecialAVSdecodingchips,thisdesignonlyusesARMprocessorandsomeoutermodulesashardwareplatform.HavingembeddedLinuxastheoper2ationsystemsandaddingAVSdecodingfunctionstoMPlayersoftware,inthiswayitrealizesthefunctionofAVSvideoplaying.Itcanreal2ti
4、melyplayAVSstreamin25f/switharesolutionof640×480.KeywordsEmbeddedsystemLinuxARMAVSvideodecodingAVS视频播放器的功能。0引言AVS是我国具备自主知识产权的第二代信源编码标准,是基于我国创新技术和部分公开技术的自主标准,编码效率比MPEG22高2-3倍,可与AVC相当,并且所采用的技术方案更图1系统层次结构图为简洁。目前国内外视频设备生产商对于AVS视频解码器的解决方案以添加专用的AVS视频解码芯片者居多
5、。使用AVS视频解码芯片,固然能迅速有效地完成视频解码功能,但是也带2系统的硬件设计来设计方案僵化、更改不便、升级困难等问题。随着各种嵌入式处理器的处理速度和图形处理能力的大幅度提高,利用嵌入式2.1系统硬件的结构组成硬件本身的优势和特点,以软件协同完成解码的方法也成为可系统的硬件结构如图2所示。本系统选用的ARM处理器是行的解决方案之一。Freescale公司的一款ARM211系列的芯片,型号为i.MX31。系统本文提出并实现了一种基于ARM处理器的嵌入式AVS视选用64M的FLASH来存储启动
6、引导程序U2boot、内核及文件系频播放器的设计方案。该方案以ARM211处理器以及外围模块统,并选用64M的SDRAM作为该系统的内存。显示屏采用群创为硬件平台,以嵌入式Linux为操作系统,通过向MPlayer视频公司的AT056TN522TFT型LCD,用来显示视频输出。触摸屏用播放软件添加AVS视频解码库的方法,实现了AVS视频的实时来选择要播放的视频文件。IDE硬盘用来存储视频文件。解码和播放输出。该设计利用了i.MX31处理器强大的图形处理能力,以软硬件协同的方法实现AVS视频解码功能
7、,简单方便,无须添加专用的AVS视频解码芯片,便于设计方案的修改和产品的再升级,因而具有较好的市场应用前景。1系统的总体设计系统的层次结构如图1所示。系统以Freescalei.MX31及图2系统硬件结构框图其外围电路为硬件平台,以嵌人式Linux和设备驱动程序作为系统的软件平台,为上层Mplayer播放器和用户应用程序提供收稿日期:2008-07-14。吴文相,硕士生,主研领域:嵌入式系统,用户接口支持。在这三层结构的支持下,共同来实现嵌人式Linux驱动开发。248计算机应用与软件2010年2
8、.2处理器省内存和磁盘空间,同时也为了降低代码耦合度,本设计参考联合信源公司的AVS12P2项目源码,将AVS视频解码函数单独编本系统的硬件核心平台采用的是Freescale公司的处理器译成动态链接库libavs.so。该动态链接库向应用程序提供四个i.MX31。该处理器基于ARM211平台,接口资源丰富,配备多媒函数接口,分别是:体加速器eMMA、16/18彩色LCD控制器以及片上图像处理单OpenAVSDec():初始化AVS解码器;元(IPU),能够提供高达VGA640×48