危鑫++胡湘娟++阳泳
摘 要:介绍基于嵌入式linux的多媒体播放器的设计与实现,设计使用的是linux系统内核,其核心播放程序为mplayer可执行程序,解码库为libmad。整个系统的硬件部分以S3C2440开发板作为测试仪主体,TFT-LCD触摸屏按键及物理按键做为控制器。在为开发板搭建好环境后,编写主程序、触屏驱动程序以及播放器各种功能的触发函数,制作操作界面等等。最后达到了触屏操作多媒体播放器,并实现各种功能。通过实际的测试应用,证明该软件硬件运行良好,能满足设计的要求,为嵌入式多媒体播放器的设计提供了参考。
关键词:嵌入式 多媒体播放器 移植 ARM920T
中图分类号:TP332 文献标识码:A 文章编号:1672-3791(2014)11(a)-0075-02
多媒体是计算机和视频技术的结合,实际上它是两个媒体;声音和图像,或者用现在的术语:音频和视频。多媒体技术和所有现代技术一样本身有两个方面,它是由硬件和软件,或机器和思想混合组成。多媒体之所以能够实现是依靠数字技术,多媒体代表数字控制和数字媒体的汇合,电脑是数字控制系统,而数字媒体是当今音频和视频最先进的存储和传播形式。事实上有人就简单地认为多媒体是电脑和电视的结合。电脑的能力达到实时处理电视和声音数据流的水平,这时多媒体就诞生了。多媒体电脑需要具有比主流电脑更强的能力,多媒体电脑决定了主流电脑的发展。
在日常生活中,多媒体播放器已经成为必不可少的一部分了,但一款优秀的播放器却经常因为操作环境、源码不开放等原因而不能被人们广泛认识、使用,这是我们的损失。所以,多媒体播放器的跨平台移植拥有非常好的市场前景。
一款跨平台的多媒体播放器就显得尤为强大,本论文针对基于Linux的嵌入式多媒体播放器设计和实验进行了研究,设计主要任务是将一款Linux下的Mplayer多媒体播放器从电脑上移植到另一个工作平台上,而不是让一款优秀的软件局限在一个狭小的领域,实现一款软件可以跨平台独立运行的效果。同时为多媒体播放器的设计提供了参考。
1 嵌入式系统与多媒体播放器
嵌入式系统及其技术是计算机技术、通信技术、半导体技术、微电子技术、语音图像数据传输技术等先进技术应用于具体设备产品的关键系统和技术[1]。在当前数字信息技术和网络技术高速发展的后PC时代,嵌入式系统已经渗透到各领域[2]。随着芯片技术的快速发展,嵌入式系统的性能逐步提高,功能也越来越丰富。嵌入式系统在众多领域的应用给我们的生活带来了便利,并且对人们的生活方式的改变和生活质量的提高具有重要的影响。在这些领域中,消费电子产品的应用具有更为广泛的潜力,尤其是便携式消费电子产品。
随着音频解码技术、存储器技术、MP3高质量压缩技术等相关技术不断的发展以及人们对消费电子产品需求的增加,MP3 新产品层出不穷,成为时尚潮流前沿的一个最佳载体。在MP3数码随身听取得巨大的市场成功后,支持视频的便携式播放器逐渐进入消费者的视线,成为继MP3之后的新一代数码影音娱乐平台。受MP3的影响,人们习惯的将这一类嵌入式多媒体系统称做MP4。
2 基于Linux的Mplayer多媒体播放器设计
基于Linux的Mplayer多媒体播放器设计任务是要求从电脑上将多媒体播放器的内容移植到另一个工作平台上,实现一款软件可以跨平台运行的效果。设计最终要达到在新工作平台的触屏控制软件实现软件在原开发环境下的等同功能的效果,可以流畅播放视频音频文件,显示歌曲信息,显示同步歌词和歌曲列表等。
设计分为两大部分,即软件部分和硬件部分。其中软件部分包含经过ARM编译的Mplayer可执行程序,触屏操作的源代码,以及linux操作系统,Bootloader,内核,根文件,arm-linux-gcc交叉编译工具链,Windows自带的超级终端,烧录工具软件等。
硬件部分包括S3C2440开发板,LCD触摸屏,串口线,并口线,5V直流电源,带串并口的PC机。
3 硬件接口配置
图1为本次设计的多媒体平台的硬件框图,采用TFT-LCD作为主控制器,S3C2440开发板作为处理器,通过触摸屏采集参数变量,LCD触屏将参数变量通过TFT排线传输进入主程序建立的用于接受参数变量的线程,芯片中的主程序根据获得的变量,运行对应的进程或结束相应的进程。系统通过相应的音频驱动使扬声器,LCD模块正常工作起来。
在设计的前期,要使用到串口并口进行Bootloader,kernel,root的烧写[3]。网络模块用来挂载特制的根文件系统,这样可以方便程序的调试。USB接口用来挂载U盘。应用时,保证TFT-LCD接到开发板上,将USB-UART线接到电脑USB接口上,U盘插到开发板上,接好扬声器和电源。然后通过电脑的超级终端进行程序激活,程序启动成功后就可进行触屏操作了。
4 多媒体播放器运行结果
完成多媒体播放器的软硬件两部分设计,成功移植[4]后,就可以通过触屏进行播放器的控制。以音频格式多媒体播放器为例,在人机交互界面中所有的歌曲名字显示在歌曲列表窗口中,当前播放歌曲的名字在列表中用矩形框反显。通过点击播放列表中歌曲的名字即实现切换歌曲。切换歌曲的时候,播放列表中的相应歌曲名字要反显,同时在屏幕上显示歌曲长度、当前播放到多少秒、当前歌曲的“专辑、歌手、标题、发行年份”等信息、播放进度条以及同步歌词循环显示。
通过实际的测试应用,证明该软件硬件运行良好,能满足设计的要求。其实现的功能总结如下:
(1)显示歌曲信息。
(2)显示同步歌词。
(3)显示歌曲列表。
(4)当前播放歌曲名字反显。
(5)显示当前播放进度。
(6)实现mp3文件的播放/暂停、上一首、下一首、快进、快退。
(7)触屏操作多媒体播放器,实现对各种功能的控制和操作。
5 结语
嵌入式系统是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。嵌入式多媒体播放器是嵌入式系统技术的一个典型应用。
本设计属于近年新兴的嵌入式多媒体播放器领域课题。以ARM9处理器为核心建立嵌入式多媒体系统,并在其上移植Mplayer播放器,扩展其功能,完成硬件的定制,程序的设计并通过多次的调试与完善以测试其媒体播放功能,进而编写基于TFT的嵌入式人机交互操作界面。
该文作者创新点:(1)设计是基于S3C2440的嵌入式系统,并且完成了MPlayer移植,实现了图形化操作;(2)具有液晶显示及触屏控制功能;(3)能够将一款Linux下的Mplayer多媒体播放器从电脑上移植到另一个工作平台上,实现一款软件可以跨平台独立运行的效果;(4)MP3、WMA等多种音频格式都能在音频格式多媒体播放器上流畅地播放。
而基于嵌入式linux的多媒体播放器的设计与实现还有待完善和发展,真正实现音频视频多种格式的多媒体播放,还可以增加其他附加功能。
参考文献
[1] 于明,范书瑞,曾祥烨.ARM9嵌入式系统设计与开发教程[M].北京:电子工业出版社,2006:280-315.
[2] 李年攸.基于Linux的多媒体播放器的软件设计与实现[J].三明学院学报,2009,26(4):391-395.
[3] 邹思铁.嵌入式Linux设计与应用[M].北京:清华大学出版社,2002.
[4] 刘玉萍.Mplayer的嵌入式移植[J].西南民族大学计算机科学与技术学院,2011,20(1):106-109.endprint