freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于qt的多媒體播放器系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(更新版)

  

【正文】   目: 基于QT的多媒體播放器       系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)   院  系:  計(jì)算機(jī)與信息工程學(xué)院  專業(yè)年級(jí):   07電子科學(xué)與技術(shù)   學(xué)生姓名: 尹倬卿  學(xué)號(hào): 20072680指導(dǎo)教師:    金一鳴      2011年 06月 14日40 / 45基于QT的多媒體播放器系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘要 隨著用戶要求的不斷提高,越來越多的嵌入式設(shè)備使用功能強(qiáng)大、價(jià)格低廉的嵌入式Linux作為操作系統(tǒng)并開始采用較為復(fù)雜的圖形用戶界面。關(guān)鍵詞:嵌入式系統(tǒng) 多媒體播放器 QT LinuxQT multimedia player based on the design and implementationAbstract With the continuous improvement of user requirements, more and more powerful embedded devices, lowcost embedded Linux as an operating system and begin to adopt a more sophisticated graphical user interface. Qt for its powerful features, good portability has bee a widely used GUI is because of the embedded operating system and its corresponding continuous development of graphical user interface, embedded software development bees more and more important. Embedded media player which can meet the audiovisual enjoyment of the system has gradually bee an indispensable part of the development in the embedded system media player technology has bee a hot spot in both the current number of embedded products contains the media , in Qtbased embedded Linux system to achieve media player has a profound significance and practical value. This use of technology under Linux QT GUI design, with a graphical interface, for example, the use of QT creator software programming, a simple multimedia player can play local audio files, in terms of functionality, it has some basic music processing operations (pause, play, adjust volume, drag, stop, etc.) In addition, the interface can display song information, such as singers, Play time can be achieved through the random playback function buttons.Keywords Embedded systems multimedia player QT Linux 1 系統(tǒng)研究背景 1 研究目的和意義 3 論文主要內(nèi)容及設(shè)計(jì)目標(biāo) 4 6 嵌入式處理器 6 嵌入式系統(tǒng)介紹 6 9 嵌入式Linux操作系統(tǒng)介紹 9 嵌入式Linux系統(tǒng)的優(yōu)點(diǎn) 11 嵌入式Linux的內(nèi)核 12 QT creator 介紹 14 Qt所支持的平臺(tái) 15 Qt類庫(kù) 18 22 硬件開發(fā)板介紹 22 S3C2440 芯片簡(jiǎn)介 22 2440 外部硬件連接 24 軟件開發(fā)環(huán)境 25 引導(dǎo)裝載程序 26 宿主機(jī)開發(fā)環(huán)境配置 26 交叉編譯環(huán)境的建立 27 30 架構(gòu)設(shè)計(jì) 30 Qt Phonon設(shè)計(jì)簡(jiǎn)單介紹 31 設(shè)計(jì)成果及分析 35 37謝辭 38參考文獻(xiàn) 39 系統(tǒng)研究背景由于Linux系統(tǒng)具有對(duì)各種設(shè)備的廣泛支持性,因此,能方便地應(yīng)用于機(jī)項(xiàng)盒、PDA、POS系統(tǒng)、掌上電腦、WAP手機(jī)、尋呼機(jī)、車載盒以及工業(yè)控制等智能信息產(chǎn)品中。當(dāng)前,消費(fèi)類電子產(chǎn)品更新?lián)Q代的速度進(jìn)一步加快,市場(chǎng)需求不斷增大。其中對(duì)系統(tǒng)要求極高的MPEG2解碼, SigmaDesigns851x能輕松達(dá)到3OfpsDI,流暢自如,難能可貴!優(yōu)點(diǎn):單芯片,低成本,低功耗。但由于MPEG2對(duì)硬件的極高要求,因此單純依靠PXA27x處理器進(jìn)行MPEG2編解碼是不現(xiàn)實(shí)的。基于PXA255的方案特點(diǎn)是功耗較低,且能夠支持較多的媒體格式,但缺點(diǎn)是無法支持大尺寸圖像的編解碼,如MPEG2等。 研究目的和意義當(dāng)前,嵌入式系統(tǒng)正處在一個(gè)飛速發(fā)展和激烈競(jìng)爭(zhēng)的時(shí)代,在未來的幾年里,這種發(fā)展和競(jìng)爭(zhēng)將達(dá)到白熱化的程度。在這樣的時(shí)代背景下,本文借助于嵌入式系統(tǒng)平臺(tái),完成一個(gè)基于QT的多媒體播放器,其中重點(diǎn)完成嵌入式操作系統(tǒng)的移植,包括bootloader,內(nèi)核以及文件系統(tǒng)移植,通過配置內(nèi)核對(duì)操作系統(tǒng)進(jìn)行優(yōu)化,并加入調(diào)度器對(duì)內(nèi)核進(jìn)行實(shí)時(shí)化改造,以便使開發(fā)板可以更靈活、更方便的開發(fā)各種各樣的應(yīng)用程序。Qmusic為L(zhǎng)inux下的簡(jiǎn)單媒體播放軟件,其簡(jiǎn)單而實(shí)用的功能卻是嵌入式系統(tǒng)所需要的。ARM內(nèi)核是由ARM公司開發(fā)的一系列32位RISC處理器內(nèi)核,當(dāng)前有6個(gè)系列的產(chǎn)品:ARM7,ARM9,ARM9E,ARM10E,SecurCore以及最新的ARM11系列。這一點(diǎn)就決定了它必然是一個(gè)技術(shù)密集、不斷創(chuàng)新的知識(shí)集成系統(tǒng)。嵌入式處理器存儲(chǔ)器輸入輸出圖22 嵌入式硬件平臺(tái)結(jié)構(gòu) 嵌入式Linux操作系統(tǒng)介紹 Linux起源、特性及應(yīng)用領(lǐng)域Linux操作系統(tǒng)核心最早是由芬蘭的Linus Torvalds 1991年8月在芬蘭赫爾辛基大學(xué)上學(xué)時(shí)發(fā)布的[那年Torvals 25歲],后來經(jīng)過眾多世界頂尖的軟件工程師的不斷修改和完善,Linux得以在全球普及開來,在服務(wù)器領(lǐng)域及個(gè)人桌面版得到越來越多的應(yīng)用,在嵌入式開發(fā)方面更是具有其它操作系統(tǒng)無可比擬的優(yōu)勢(shì),并以每年100%的用戶遞增數(shù)量顯示了Linux強(qiáng)大的力量。Caldera有自行研發(fā)的圖形界面的安裝程序向?qū)?,安裝過程可以玩俄羅斯方塊,提供完整的KDE桌面環(huán)境,附贈(zèng)功能強(qiáng)大的商業(yè)軟件,如StarOffice、圖形界面的硬盤分割工具Partition Magic等。Linux上的軟件資源十分豐富,每一種通用程序在Linux上都可以找到。(7)良好的開發(fā)環(huán)境,不斷發(fā)展的開發(fā)工具集Linux有著非常優(yōu)秀的完整開發(fā)工具鏈,有十幾種集成開發(fā)環(huán)境,其中很多是免費(fèi)的,大大降低了開發(fā)費(fèi)用。 嵌入式Linux的內(nèi)核內(nèi)核(kernel)是操作系統(tǒng)的內(nèi)部核心程序,它向外部提供了對(duì)計(jì)算機(jī)設(shè)備的核心管理調(diào)用。進(jìn)程是一個(gè)動(dòng)態(tài)的實(shí)體,從創(chuàng)建到消亡,是一個(gè)進(jìn)程的整個(gè)聲明周期,在這個(gè)周期中,進(jìn)程要經(jīng)過就緒態(tài)、阻塞態(tài)和運(yùn)行態(tài)三個(gè)過程。網(wǎng)絡(luò)接口(NET):主要提供對(duì)各種網(wǎng)絡(luò)標(biāo)準(zhǔn)的存取和各種網(wǎng)絡(luò)硬件的支持,網(wǎng)絡(luò)接口可以分為網(wǎng)絡(luò)協(xié)議和網(wǎng)絡(luò)驅(qū)動(dòng)程序兩部分。(4)使用拖放功能快速設(shè)計(jì)用戶界面;定制widget,或從標(biāo)準(zhǔn)widget庫(kù)中選擇widget;以本地外觀快速預(yù)覽格式。Qt 除了提供所有工具以及 API 與 類庫(kù) ,( 如 WebKit ) 外,Qt for Embedded Linux 還提供用于最優(yōu)化嵌入式開發(fā)環(huán)境的主要組件??梢赃M(jìn)程監(jiān)聽并向信道發(fā)送消息,任何時(shí)候只要監(jiān)聽到一個(gè)進(jìn)程便可創(chuàng)建信道。 GCC 版本 . 或更高。Qt 包括一套集成的開發(fā)工具,可加快在 Mac 平臺(tái)上的開發(fā)。 CE/MobileQt 是用 C++ 開發(fā)的應(yīng)用程序和用戶界面框架。特點(diǎn):基于HTML 層疊式樣式表 (CSS);適用于全部 widget;任何熟悉 CSS 技術(shù)的人員都可以定義復(fù)雜的樣式。占用存儲(chǔ)空間:緊湊配置 – MB,全配置 – MB。在最新版的Qt SDK 。從按鈕和對(duì)話框到樹形視圖與表格都具有完整的控件(窗體)自動(dòng)縮放,字體、語言與屏幕定位識(shí)別布局引擎支持抗鋸齒、矢量變形以及可縮放矢量圖形 (SVG)具有樣式API和窗體樣式表,可完全自定義用戶界面支持嵌入式設(shè)備的硬件加速圖形和多重顯示功能 174。Qt的跨平臺(tái)多線程功能簡(jiǎn)化了并行編程,另外它附加的同步功能可以更加輕松地利用多核架構(gòu)。Phonon可以輕松將音頻與視頻回放功能加入到Qt應(yīng)用程序當(dāng)中,并且在每個(gè)目標(biāo)平臺(tái)上提取多媒體格式與框架。同時(shí) Qt 還包含了 XQuery – 一個(gè)簡(jiǎn)單的類似 SQL的查詢語言,用于解析XML文件來選擇和聚合所需要的XML元素,并且將它們轉(zhuǎn)換成XML輸出或其它格式的輸出。三星公司推出的這款16/32 位RISC 處理器S3C2440A,是面向高端手持設(shè)備或其它一般應(yīng)用而設(shè)計(jì)的芯片。— 采用ARM920T CPU 內(nèi)核支持ARM 調(diào)試體系結(jié)構(gòu)?!?所有的存儲(chǔ)器bank 都具有可編程的操作周期?!?偽隨機(jī)數(shù)或輪轉(zhuǎn)循環(huán)替代法。針對(duì)本應(yīng)用,對(duì)其進(jìn)行了裁剪和配置,只包含了系統(tǒng)所需的模塊支持ext2\jffs2等文件系統(tǒng);內(nèi)存驅(qū)動(dòng)模塊提供內(nèi)存管理功能;網(wǎng)絡(luò)接口模塊支持以太網(wǎng)接口;GPIO驅(qū)動(dòng)模塊主要是提供給鍵盤和觸摸屏使用;圖形驅(qū)動(dòng)模塊是圖形用戶界面(GUI)和圖像顯示的底層支撐模塊;音頻設(shè)備輸出驅(qū)動(dòng)模塊支持音頻數(shù)據(jù)的數(shù)模轉(zhuǎn)換。 宿主機(jī)開發(fā)環(huán)境配置安裝Linux系統(tǒng):宿主開發(fā)環(huán)境,我們選用在windows下安裝VMware WorkStation虛擬機(jī)+fedora 。gcc是GUN推出的功能強(qiáng)大、性能優(yōu)越的多平臺(tái)編譯器,其執(zhí)行效率與一般的編譯器相比,平均要高20%30%。Makefile管理項(xiàng)目可以識(shí)別出makefile中哪些文件已經(jīng)修改,并且在再次編譯時(shí)只編譯這些文件,這樣提高了編譯效率。通過使用純C++語言開發(fā)來支持嵌入式Linux 系統(tǒng),采用Qt/Embedded 作為GUI 來提供強(qiáng)大的用戶界面,實(shí)現(xiàn)一個(gè)開放式的插件接口來增強(qiáng)擴(kuò)展性,利用內(nèi)核幀緩沖來輸出,消除對(duì)特定架構(gòu)的依賴,從而保證可移植性。文件解碼和輸出主要負(fù)責(zé)通過調(diào)用解碼器對(duì)音視頻數(shù)據(jù)流進(jìn)行解碼,然后利用QT/Embedded 可以直接操縱內(nèi)核幀緩沖FrameBuffer 的特性,將解碼之后的數(shù)據(jù)通過FrameBuffer 直接送到輸出設(shè)備輸出,避免對(duì)DirectShow、OpenGL 等特定架構(gòu)的依賴,進(jìn)一步增強(qiáng)可移植性。而sink只接受media object來的資料,由media object控制播放;而由sink來處理這些多媒體 ?paths 用來連接Phonon的物件,意即media object與sink之間的連接。Phonon::AudioOutput *audioOutput =new Phonon::AudioOutput(Phonon::MusicCategory, this)。 void nextFile()。編碼:現(xiàn)在,我們需要做的第一件事情是初始化Phonon,并建立內(nèi)部的信號(hào)和槽。Phonon::createPath(mediaObject, audioOutput)?,F(xiàn)在添加如下用于處理playPause()槽的新函數(shù):void MainWindow::playPause(){ switch (mediaObjectstate()){ case Phonon::PlayingState: mediaObjectpause()。 break。phonon最初是 一個(gè) 源于KDE的項(xiàng)目,為使用音頻和視頻的應(yīng)用程序開發(fā)提供的一個(gè)框架。不過本次設(shè)計(jì)過程中,由于時(shí)間因素的限制,對(duì)于QT庫(kù)的研究還不夠徹底,對(duì)于視頻解碼模塊的研究也沒能實(shí)現(xiàn),基于QT的播放器的設(shè)計(jì)與實(shí)現(xiàn)是需要依賴phonon框架的,網(wǎng)上所有的版本都缺乏phonon庫(kù),使得在最終結(jié)果的實(shí)現(xiàn)有了很大的阻礙。另外,本論文在整個(gè)研究過程中還得到本小組其他同學(xué)的極大幫助,他們幫我開拓思路,為我指點(diǎn)迷津,精心點(diǎn)撥,熱忱鼓勵(lì),為我完成這篇論文提供了巨大的幫助。潘剛。中國(guó)儀器儀表學(xué)會(huì)第九屆青年學(xué)術(shù)會(huì)議論文集[C
點(diǎn)擊復(fù)制文檔內(nèi)容
職業(yè)教育相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1