基于QT的多媒体播放器系统的设计与实现.docx

上传人:b****4 文档编号:24488201 上传时间:2023-05-28 格式:DOCX 页数:40 大小:511.21KB
下载 相关 举报
基于QT的多媒体播放器系统的设计与实现.docx_第1页
第1页 / 共40页
基于QT的多媒体播放器系统的设计与实现.docx_第2页
第2页 / 共40页
基于QT的多媒体播放器系统的设计与实现.docx_第3页
第3页 / 共40页
基于QT的多媒体播放器系统的设计与实现.docx_第4页
第4页 / 共40页
基于QT的多媒体播放器系统的设计与实现.docx_第5页
第5页 / 共40页
点击查看更多>>
下载资源
资源描述

基于QT的多媒体播放器系统的设计与实现.docx

《基于QT的多媒体播放器系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《基于QT的多媒体播放器系统的设计与实现.docx(40页珍藏版)》请在冰豆网上搜索。

基于QT的多媒体播放器系统的设计与实现.docx

基于QT的多媒体播放器系统的设计与实现

基于QT的多媒体播放器系统的设计与实现

本科毕业设计(论文)

 

题  目:

 基于QT的多媒体播放器

      系统的设计与实现   

院  系:

  运算机与信息工程学院  

专业年级:

   07电子科学与技术   

学生姓名:

 尹倬卿  学号:

 20072680

指导教师:

   金一鸣     

2011年 06月 14日

基于QT的多媒体播放器系统的设计与实现

摘要随着用户要求的不断提高,越来越多的嵌入式设备使用功能强大、价格低廉的嵌入式Linux作为操作系统并开始采纳较为复杂的图形用户界面。

Qt以其强大的功能、良好的可移植性逐步成为一种被广泛使用的GUI系统。

正是由于嵌入式操作系统及其相应图形用户界面的不断进展,嵌入式软件的开发显得越来越重要。

其中嵌入式媒体播放器由于能够满足人们的视听享受差不多逐步成为了系统中不可或缺的重要组成部分,在嵌入式系统上开发媒体播放器差不多成为了一个技术热点,当前许多嵌入式产品中都包含媒体播放器。

因此在基于Qt的嵌入式Linux系统中实现媒体播放器具有深刻的意义和有用价值。

本文运用QT技术在Linux下进行GUI设计,以一个图形界面为例,运用QTcreator软件编程,实现一个简单的多媒体播放器。

此播放器能够播放本地的音频文件,在功能方面,它具备一些差不多的音乐操作处理功能(暂停、播放、音量调剂、拖动、停止等),此外,界面还能显示歌曲信息,比如歌手,播放的时候能够通过按钮实现随机播放功能。

关键词:

嵌入式系统多媒体播放器QTLinux

 

QTmultimediaplayerbasedonthedesignandimplementation

AbstractWiththecontinuousimprovementofuserrequirements,moreandmorepowerfulembeddeddevices,low-costembeddedLinuxasanoperatingsystemandbegintoadoptamoresophisticatedgraphicaluserinterface.Qtforitspowerfulfeatures,goodportabilityhasbecomeawidelyusedGUIsystems.Itisbecauseoftheembeddedoperatingsystemanditscorrespondingcontinuousdevelopmentofgraphicaluserinterface,embeddedsoftwaredevelopmentbecomesmoreandmoreimportant.Embeddedmediaplayerwhichcanmeettheaudio-visualenjoymentofthesystemhasgraduallybecomeanindispensablepartofthedevelopmentintheembeddedsystemmediaplayertechnologyhasbecomeahotspotinboththecurrentnumberofembeddedproductscontainsthemediaplayer.Therefore,inQt-basedembeddedLinuxsystemtoachievemediaplayerhasaprofoundsignificanceandpracticalvalue.ThisuseoftechnologyunderLinuxQTGUIdesign,withagraphicalinterface,forexample,theuseofQTcreatorsoftwareprogramming,asimplemultimediaplayer.Thisplayercanplaylocalaudiofiles,intermsoffunctionality,ithassomebasicmusicprocessingoperations(pause,play,adjustvolume,drag,stop,etc.)Inaddition,theinterfacecandisplaysonginformation,suchassingers,Playtimecanbeachievedthroughtherandomplaybackfunctionbuttons.

KeywordsEmbeddedsystemsmultimediaplayerQTLinux

 

1.引言1

1.引言

1.1系统研究背景

由于Linux系统具有对各种设备的广泛支持性,因此,能方便地应用于机项盒、PDA、POS系统、掌上电脑、WAP手机、寻呼机、车载盒以及工业操纵等智能信息产品中。

此次的要紧任务,是Linux系统下利用QT进行多媒体播放器的设计与研究。

其中会涉及到Linux操作系统的移植,其目的是为了能够更好的利用开发板开发应用程序,也能使开发板能够用于更多的领域。

能够用于安全防卫系统,军事工业以及智能化传感器等方面的开发。

操作系统的成功移植,使得开发板能够更灵活,更方便的开发各种各样的应用程序,这也是本课题研究的意义之所在。

多媒体播放器与嵌入式系统:

随着芯片技术的快速进展,嵌入式系统的性能逐步提高,功能也越来越丰富。

嵌入式系统在众多领域的应用给我们的生活带来了便利,同时对人们的生活方式的改变和生活质量的提高具有重要的阻碍。

在这些领域中,消费电子产品的应用具有更为广泛的潜力,专门是便携式消费电子产品。

当前,消费类电子产品更新换代的速度进一步加快,市场需求不断增大。

在MP3数码随身听取得庞大的市场成功后,支持视频的便携式播放器逐步进入消费者的视线,成为继MP3之后的新一代数码影音娱乐平台。

受MP3的阻碍,人们适应的将这一类嵌入式多媒体系统称作MP4。

在法国Archos公司推出第一款MP4掌上影院后,众多企业均看好MP4的进展态势。

新一代MP4良好的进展前景和潜在的市场,成为移动数码产业的新亮点,吸引着众多厂商大力研发,并将其推向市场。

除播放视频这一差不多功能外,嵌入式多媒体系统还附带了若干增值功能,如音乐播放、图片扫瞄、游戏、调频收音、录音、电子书以及拍照、录像功能。

嵌入式多媒体播放器国内外进展现状:

目前嵌入式多媒体的内部结构,比较成熟的解决方案有三种:

基于SigmaDesigns851x系列芯片的解决方案、基于TlDM32ODSP+ARM处理器的解决方案和基于工ntelPXA27x的解决方案,这三种解决方案是目前的主流方案。

上述几种方案各有特点:

(1)SigmaDesigns851x方案

SigmaDesignS851x处理器是目前性能最强、最全面的专业解码芯片,采纳双核设计,将200MHz32位RISC处理器和MPEG解码处理器集成于单芯片上,在无需其它外围芯片支持的情形下,完成系统所需各种接口的提供、系统处理以及流畅的WMAV9、DivXV3.11、DivXV4.X和S.X、MPEG-4、MPEG-2、MPEG-1等音视频解码。

其中对系统要求极高的MPEG-2解码,SigmaDesigns851x能轻松达到3OfpsDI,流畅自如,难能可贵!

优点:

单芯片,低成本,低功耗;硬核视频解码,视频播放成效好

缺点:

无法播放网络视频格式RM,RMVB等

(2)TIDM320DSP-I-ARM处理器的解决方案

作为DSP巨头,TI力推DM320DSP的PMP解决方案。

TI方案是利用DM320DSP进行音视频编解码处理,ARM处理器负责系统处理及提供外围设备接口。

与SigmaDesigns方案一样,TI方案支持的媒体类型专门丰富,能支持WMV、DivXV3.11、DivXV4.X和5.X、MPEG-4、MPEG-2、MPEG-1等。

但由于TlDM320为纯DSP芯片,因此必须配合ARM处理器才能组成完整的解决方案,因此在成本上并不具备优势。

优点:

支持的媒体类型丰富,编解码能力强

缺点:

必须配合ARM处理器,成本不占优势,功耗较大;不支持网络视频格式RM,RMVB

(3)IntelPXA27x的解决方案

Intel公司于2003年底推出了性能最为强劲的PXA27x嵌入式处理器,最高频率可达624MHz。

作为一款性能及其强劲的嵌入式处理器,配合嵌入式Linux或wince操作系统,PXA27x理论上能够支持任何媒体格式,并通过软件升级,支持以后媒体格式。

但由于MPEG-2对硬件的极高要求,因此单纯依靠PXA27x处理器进行MPEG-2编解码是不现实的。

Intel公司于2004年推出了2700G多媒体加速芯片,配合PXA270进行视频加速与3D加速。

同时,PXA27x加入了wirelessMMX技术和SpeedStep动态电源治理技术,不但大大增强了PXA270的媒体处理能力,而且极大降低了系统功耗,延长PMP产品的电池寿命。

2700G的加入,更使PXA27x方案成为全能解决方案,不但完美解决了MPEG-2编解码问题,更使基于PXA27x的PMP产品能向多功能化进展,能够加入游戏、摄像等功能,成为个人娱乐终端。

优点:

支持目前所有的媒体类型,可通过软件升级支持以后媒体类型;接口丰富,可支持SD、MS、CF等;支持最大400万象素摄像头;支持动态电源治理,功耗低

缺点:

成本可能较高

目前市面上还有其它几种非主流方案,如PxA255解决方案、SunplusSPCA536解决方案、Freescalei.MX21解决方案等。

基于PXA255的方案特点是功耗较低,且能够支持较多的媒体格式,但缺点是无法支持大尺寸图像的编解码,如MPEG-2等。

SunplusSPCA536解决方案价格低廉,但仅支持MPEG-4编解码与JPEG,支持媒体类型单纯,功能单一;FreeSCalei.MX21芯片原为智能手机专门设计,接口类型比较丰富,但音视频处理能力一样,无法进行流畅的MPEG-4播放,无法处理MPEG-2视频。

由于PMP(便携式多媒体播放器)产品的研发难度较大,目前市面上的大多数PMP产品均为国外或台湾设计。

中国大陆消费类娱乐产品的生产商因研发能力普遍较低而无法自己研发产品,因此以后中国大陆PMP设计制造将更多的按照生产商+DesignHouse的模式进行,如此生产商能够充分发挥自己的渠道和规模优势,而DesignHouse则发挥自己的强设计能力和低营运成本优势,双方合作则能够共同把PMP市场做大、做强。

国内目前也有进行PMP方案设计的公司,如南京东集公司(seuic),采纳的是Intel嵌入式处理器PXA255方案。

采纳SigmaDesignS解决方案的公司要紧集中在深圳,如深圳市深视通科技开发(sstvision),该公司目前己经设计出了基于SiglnaDesigns85n处理器的成熟的PMP解决方案,并制作了DEMO。

而TIDM320方案,目前要紧依靠TI合作伙伴美国Ingenient公司推广。

1.2研究目的和意义

当前,嵌入式系统正处在一个飞速进展和猛烈竞争的时代,在以后的几年里,这种进展和竞争将达到白热化的程度。

就嵌入式系统的技术和市场来说,国外的进展速度极快,技术日趋成熟,市场格局差不多形成;国内进展也增长专门快,市场潜力专门大。

在国外,嵌入式系统硬件,专门是嵌入式CPU的处理能力提升专门快,由8位、16位升级到32位,掌上电脑、PDA等新产品层出不穷,产业规模日益壮大。

在国内,嵌入式系统软件硬件要紧靠国外引进,技术基础比较薄弱。

目前,国内外相继推出了专门多商业化嵌入式系统,都在努力的为自己争取嵌入式的市场份额。

国内比较成熟的实时操作系统DaltaOS等都差不多有了成熟的开发平台。

同时,Linux操作系统由于其公布的源代码也在嵌入式的应用中占有一席之地。

在国内,大规模的嵌入式系统目前还专门少,今后的重点将转向基于Internet的各种嵌入式操作系统和信息家电领域,包括Internet、网上证券交易、IPphone和VOB点播等。

在如此的时代背景下,本文借助于嵌入式系统平台,完成一个基于QT的多媒体播放器,其中重点完成嵌入式操作系统的移植,包括bootloader,内核以及文件系统移植,通过配置内核对操作系统进行优化,并加入调度器对内核进行实时化改造,以便使开发板能够更灵活、更方便的开发各种各样的应用程序。

1.3论文要紧内容及设计目标

本文在研究嵌入式系统开发技术的基础上,提出了一套满足要求的低成本的嵌入式多媒体终端的解决方案。

通过对系统的功能需求分析以及市场上主流处理器的功能和性能分析,选择了S3C2440实验平台和fedora9.0、Linux分别作为系统的硬件和软件开发平台。

此设计在Linux下,Qt/Embedded作为嵌入式系统图形用户界面GUI,通过虚拟机的fedora9.0系统进行模拟,再在S3C2440实验板上烧写一个图形界面程序。

本文的要紧工作包括三方面的内容,第一,基于ARM平台开发相应的引导加载程序、构建嵌入式Linux操作系统;第二,针对ARM处理器和Linux操作系统特点进行音视频解码器的设计和研究;第三,对系统进行验证;论文的要紧结构如下:

第一 在介绍嵌入式系统基础上,着重介绍Linux的特点和优势,以及Linux内核的差不多概念;

第二系统软硬件平台的搭建。

包括ARM处理器及硬件核心部件介绍、bootloader实现、交叉开发环境建立、Linux移植等;

第三运用QT技术在Linux下进行GUI设计,以一个图形界面为例,运用QTcreator软件编程,并移植到S3C2440开发板上,实现设计目标。

第四Qmusic到开发板的移植。

Qmusic为Linux下的简单媒体播放软件,其简单而有用的功能却是嵌入式系统所需要的。

为此本章完成其到开发板的移植,来完善嵌入式系统对音频文件的支持;

最后,对论文进行总结。

 

2.嵌入式系统

2.1嵌入式处理器

嵌入式处理器是嵌入式硬件平台的核心,负责系统事件的响应、任务的调度、外围器件的操纵以及信号的处理。

嵌入式处理器是由通用运算机中的CPU演变而来的。

它的特点是32位以上,具有较高的性能。

与通用运算机中的CPU不同的是,嵌入式处理器在实际嵌入式应用中只保留和嵌入式应用紧密相关的功能硬件,去除其他的冗余功能部分,如此就以最低的功耗和资源实现嵌入式应用的专门要求。

嵌入式处理器体积小、功耗低、成本低、可靠性高的优点使其在互联网、通信、消费类电子等多个领域得到了广泛的应用。

目前要紧的嵌入式处理器按体系结构不同可分为五大类:

ARM、MIPS、POWERPC、x86和SH系列。

ARM内核是由ARM公司开发的一系列32位RISC处理器内核,当前有6个系列的产品:

ARM7,ARM9,ARM9E,ARM10E,SecurCore以及最新的ARM11系列。

目前业界能够提供ARM内核处理器的闻名半导体公司有Intel,TI,Freescale,AnalogDevices,CirrusLogic和Samsung等。

本课题设计采纳的S3C2410处理器确实是Samsung提供的一款采纳32位ARM内核的处理器。

S3C2440内部集成了微处理器和一些手持设备的常用外围组件,专门适用于手持产品。

S3C2440微处理器是一个多用途的通用芯片,它内部集成了微处理器和常用外围组件,可用于各种领域。

它是应用于手持设备的低成本实现,提供了更高性价比。

2.2嵌入式系统介绍

嵌入式系统的定义如下:

是一种以应用为中心、以运算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用运算机系统。

由嵌入式系统的定义可见,嵌入式系统具有以下几大特点:

(1)技术密集

嵌入式系统是将先进的运算机技术、半导体技术和电子技术以及各个行业的具体应用相结合后的产物。

这一点就决定了它必定是一个技术密集、不断创新的知识集成系统。

(2)专用性强

嵌入式系统是与应用紧密结合的,具有专门强的专用性。

嵌入式系统的个性化专门强,其中的软件系统和硬件的结合专门紧密,一样要针对硬件进行系统的移植,即使在同一品牌、同一系列的产品中也要依照系统硬件的变化不断进行修改。

同时针对不同的任务,往往需要对系统进行较大的更换,程序的编译下载要和系统相结合。

(3)系统精简

嵌入式系统必须依照顾用需求可对软硬件进行裁剪,满足应用系统的功能、可靠性、成本、体积等要求。

因此目前嵌入式系统的开发一样是先建立一个相对通用的软硬件平台,然后在其基础上进行裁剪和精简,开发出适应各种需要的系统。

一样而言,嵌入式系统的结构自底向上可分为3个部分,如图2-1所示

图2-1嵌入式系统的结构

嵌入式硬件平台是整个嵌入式操作系统和应用软件运行的基础。

不同的应用通常有不同的硬件平台,然而差不多的结构是相同的,通常包括嵌入式处理器、储备器和输入输出(I/0)接口,如图2-2所示。

图2-2嵌入式硬件平台结构

 

3.嵌入式Linux操作系统及QT编译环境

3.1嵌入式Linux操作系统介绍

一、Linux起源、特性及应用领域

Linux操作系统核心最早是由芬兰的LinusTorvalds1991年8月在芬兰赫尔辛基大学上学时公布的[那年Torvals25岁],后来通过众多世界顶尖的软件工程师的不断修改和完善,Linux得以在全球普及开来,在服务器领域及个人桌面版得到越来越多的应用,在嵌入式开发方面更是具有其它操作系统无可比拟的优势,并以每年100%的用户递增数量显示了Linux强大的力量。

Linux的是一套免费的32位多人多工的操作系统,运行方式同UNIX系统专门像,但Linux系统的稳固性、多工能力与网络功能已是许多商业操作系统无法比拟的,Linux还有一项最大的特色在于源代码完全公布,在符合GNUGPL(GeneralPublicLicense)的原则下,任何人皆可自由取得、散布、甚至修改源代码。

二、主流Linux操作系统发行版简介

就Linux的本质来说,它只是操作系统的核心,负责操纵硬件、治理文件系统、程序进程等。

LinuxKernel(内核)并不负责提供用户强大的应用程序,没有编译器、系统治理工具、网络工具、Office套件、多媒体、绘图软件等,如此的系统也就无法发挥其强大功能,用户也无法利用那个系统工作,因此有人便提出以LinuxKernel为核心再集成搭配各式各样的系统程序或应用工具程序组成一套完整的操作系统,通过如此组合的Linux套件即称为Linux发行版。

国外封装的Linux以RedHat(又称为“红帽Linux”)、OpenLinux、SuSE、TurboLinux等最为成功:

RedHat是个商业气息颇为浓厚的公司,不仅展现开创Linux商业软件的妄图心,也在1999年在美国科技股为主的那斯达克让公司股票成功上市,RedHat慢慢被拱为Linux商业界龙头。

RedHat是目前销售量最高、安装最简便、最适合初学者的Linux发行版,也是目前世界上最流行的Linux发行套件,它的市场营销、包装及服务做的相当不错,自行开发了RPM套件治理程序及X桌面环境Gnome的众多软件并将其源代码回馈给OpenSourcecommunity。

也正是因为RedHat的方便性,安装程序将系统的构架或软件安装方式全部做了包装,用户学到的差不多上GUI界面(图形用户界面)上输入一些设置值的粗浅知识,至于软件安装了那些文件、安装到哪个文件名目、系统作了哪些设置,使用者则一无所知,一旦真正遇到系统程序发生问题时,要解决问题也就比较困难。

Caldera将OpenLinux这套系统定位为容易使用与设置的发行版,以集成使用环境与最终用户办公环境,容易安装使用与简便治理为系统目标,有望成为最流行的公司团体台式Linux操作系统,适合初学者使用,全部安装需要1GB的硬盘空间。

Caldera有自行研发的图形界面的安装程序向导,安装过程能够玩俄罗斯方块,提供完整的KDE桌面环境,附赠功能强大的商业软件,如StarOffice、图形界面的硬盘分割工具PartitionMagic等。

SuSE是欧洲最流行的Linux发行版,而且SuSE是软件国际化的先驱,让软件支持各国语系,奉献颇丰,SuSE也是用RPM作为软件安装治理程序,只是SuSE并不适合新手使用,提供了专门多的工具软件,全部安装需4.5GB的硬盘空间,安装过程也较为复杂。

TurboLinux是日本制作的Linux发行版,其最大特色便是以日文版、中文简/繁体版、英文版三种形式发行,对软件国际化的推动体会丰富,安装的简易性与系统设置的难度与RedHat差不多,且安装界面是汉化的,系统本身支持中文简体,在中国国内有宽敞的用户群。

国内Linux发行版做的相对比较成功是红旗和中软两个版本,界面做得都专门的美观,安装也比较容易,新版本逐步屏蔽了一些底层的操作,适合于新手使用。

两个版本差不多上源于中国科学院软件研究所承担的国家863打算的Linux项目,但不管稳固性与兼容性与国外的版本相比都有一定的差距,操作界面与适应与Windows越来越像,提供一定技术支持和售后服务,适宜于国内做低价的操作系统解决方案。

3.2嵌入式Linux系统的优点

现今,与嵌入式应用相结合的嵌入式操作系统有VxWorks、Linux、WinCE、

COS-II等,他们各有其特点,VxWorks的特点是可靠性,实时性,可裁剪性,相比较而言,WINCE是多线性、多任务、全优先的操作系统,是专门针对资源有限而设计,

COS-II则是一个基于优先级的实时操作系统,每一个任务必须具有不同的优先级,假如优先级相同,任务将无法区分。

而嵌入式Linux更具有优势。

归纳起来,嵌入式Linux至少具有以下优势:

(1)开放的源码,丰富的软件资源

Linux是自由的操作系统,它的开放源码使用户获得了最大的自由度。

Linux上的软件资源十分丰富,每一种通用程序在Linux上都能够找到。

(2)功能强大的内核,性能高效、稳固,多任务

Linux的内核专门稳固,它的高效和稳固性差不多在各个领域,专门在网络服务器领域,得到了事实的验证。

Linux内核小巧灵活,易于裁减,这使得它专门适合嵌入式系统的应用。

(3)支持多种体系结构,如X86、ARM、MIPS、ALPHA、SPARC等

目前,Linux差不多被移植到数十种硬件平台上,几乎支持所有流行的CPU。

(4)完善的网络通讯、图形、文件治理机制

Linux自产生之日起就与网络密不可分,网络是Linux的强项。

另外,Linux还支持多种文件和图形系统。

(5)支持大量的周边硬件设备

Linux上的驱动差不多专门丰富了,它们支持各种主流硬件设备和最新硬件技术。

(6)大小、功能都可定制

Linux秉承Unix的优秀设计思想,专门灵活,各部分的可定制性都专门强。

(7)良好的开发环境,不断进展的开发工具集

Linux有着专门优秀的完整开发工具链,有十几种集成开发环境,其中专门多是免费的,大大降低了开发费用。

(8)软件开发者的广泛支持

Linux的自由精神

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

当前位置:首页 > 工程科技 > 能源化工

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

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