畢業(yè)設(shè)計(jì)(論文)基于Qt音頻管理系統(tǒng)_第1頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于Qt音頻管理系統(tǒng)_第2頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于Qt音頻管理系統(tǒng)_第3頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于Qt音頻管理系統(tǒng)_第4頁(yè)
畢業(yè)設(shè)計(jì)(論文)基于Qt音頻管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩26頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、基于基于 qtqt 音頻管理系統(tǒng)音頻管理系統(tǒng) 指導(dǎo)老師:指導(dǎo)老師: 學(xué)生姓名:學(xué)生姓名: 日期:日期: 摘摘 要要 qt是諾基亞開(kāi)發(fā)的一個(gè)跨平臺(tái)的c+圖形用戶界面應(yīng)用程序框架。它提供給 應(yīng)用程序開(kāi)發(fā)者建立藝術(shù)級(jí)的圖形用戶界面所需的所用功能。qt是完全面向?qū)?象的,很容易擴(kuò)展,并且允許真正地組件編程。 本文介紹了從分析到開(kāi)發(fā)到系統(tǒng)的設(shè)計(jì)與測(cè)試的整個(gè)音樂(lè)播放器的生成過(guò) 程,包括了4個(gè)章節(jié),第一章為緒論,簡(jiǎn)單介紹了音樂(lè)和音頻編碼;第二章為系 統(tǒng)功能,用一張用例圖表達(dá)了系統(tǒng)所需的基本功能;第三章為系統(tǒng)設(shè)計(jì),以第 二章為基礎(chǔ)詳細(xì)具體的羅列出系統(tǒng)的每個(gè)功能;第四章為系統(tǒng)實(shí)現(xiàn),包括了主 界面,每個(gè)功能界面的

2、截圖與代碼片段。 系統(tǒng)開(kāi)發(fā)平臺(tái)的介紹,具體介紹了qt主要界面和使用方法,其中包括常用 工具具體位置與使用方法和工作區(qū)的生成,項(xiàng)目的創(chuàng)建、項(xiàng)目中文件的添加刪 除、項(xiàng)目的編譯、項(xiàng)目的測(cè)試等。后邊幾部分介紹了系統(tǒng)規(guī)劃與分析,應(yīng)用程 序主界面,代碼的編寫(xiě)與功能的實(shí)現(xiàn),系統(tǒng)的編譯與運(yùn)行,最終實(shí)現(xiàn)了音樂(lè)播 放器的功能,能對(duì)歌曲音樂(lè)進(jìn)行播放和控制。 關(guān)鍵詞:關(guān)鍵詞:qt、播放器、組件編程 abstract the nokia qt is the development of a cross-platform c + + graphical user interface application framewo

3、rk. it provides application developers to build a state-of- the-art graphical user interface functionality required by. qt is fully object oriented, and is easy to extend, and allows the real component programming. this paper introduced from the analysis to the development to system design and testi

4、ng of the entire music player of the generation process, includes 4 chapters, the first chapter is the introduction, introduced a simple music and audio coding; second chapter is the system function, with a use case diagram to express the basic function; the third chapter is the system design, with

5、second chapters based on detailed list the system each function; the fourth chapter for the realization of the system, including the main interface, the function of each interface screenshots with code snippets. the introduction to the systematic developing platform, specifically describes the qt ma

6、in interface and method of use, including the commonly used tools specific location and use method and the work area of the generation, creation of projects, project add files deleted, the project is compiled, the test project. odd chapter introduced the system planning and analysis, the main applic

7、ation interface, the preparation of the code and the realization of the function, the compiler and operating system, finally achieved a music player function, can the music playback and control. key words: qt、music player、component programming 目目 錄錄 摘摘 要要.i i abstractabstract.iiii 1 1 緒論緒論.1 1 1.1 音

8、樂(lè)簡(jiǎn)介 .1 1.2 選題的背景及目的 .1 1.2.1 音頻編碼基本概念.1 1.2.2 各種音頻編碼介紹.3 1.2.3 研究的意義.4 1.3 系統(tǒng)主要實(shí)現(xiàn)內(nèi)容與實(shí)現(xiàn)方式 .5 1.3.1 系統(tǒng)主要實(shí)現(xiàn)內(nèi)容.5 1.3.2 系統(tǒng)的開(kāi)發(fā)方法.5 1.3.3 系統(tǒng)的開(kāi)發(fā)平臺(tái) .6 2 2 系統(tǒng)的功能分析系統(tǒng)的功能分析.7 7 3 3 系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì) .8 8 3.1 系統(tǒng)概要設(shè)計(jì) .8 3.2 系統(tǒng)功能模塊設(shè)計(jì) .10 3.2.1 加入文件 .11 3.2.2 加入目錄 .11 3.2.3 歌曲列表 .11 3.2.4 歌曲控制 .12 3.2.5 音量設(shè)置 .12 3.2.6 靜音設(shè)置

9、.12 3.2.7 播放列表 .12 3.3 系統(tǒng)運(yùn)行環(huán)境 .13 4 4 系統(tǒng)實(shí)現(xiàn)系統(tǒng)實(shí)現(xiàn) .1313 4.1 系統(tǒng)的編譯與運(yùn)行 .13 4.2 系統(tǒng)運(yùn)行 .13 4.3 系統(tǒng)功能界面 .14 4.3.1 加入文件功能實(shí)現(xiàn) .14 4.3.2 加入目錄 .17 4.3.3 打開(kāi)歌曲列表 .19 4.3.4 歌曲控制功能實(shí)現(xiàn) .21 4.3.5 音量控制功能實(shí)現(xiàn) .23 4.3.6 靜音設(shè)置功能實(shí)現(xiàn) .23 4.3.7 播放進(jìn)度條功能實(shí)現(xiàn) .24 5 5 總結(jié)總結(jié) .2525 致致謝謝.2626 參考文獻(xiàn)參考文獻(xiàn).26267 7 1 緒緒 論論 1.1 音樂(lè)簡(jiǎn)介音樂(lè)簡(jiǎn)介 音樂(lè)一直以來(lái)就是人們?nèi)?/p>

10、常休閑的必要調(diào)劑品,極大的豐富人們的精神生 活。物體規(guī)則震動(dòng)發(fā)出的聲音稱為樂(lè)音,由有組織的樂(lè)音來(lái)表達(dá)人們思想感情、 反映現(xiàn)實(shí)生活的一種藝術(shù)就是音樂(lè)。分為聲樂(lè)和器樂(lè)兩大部門(mén)。在所有的藝術(shù) 類型中,比較而言,音樂(lè)是最抽象的藝術(shù)。另有電影以此為名,以及音樂(lè)療法: 用音樂(lè)來(lái)減輕或消除患者的病痛。 音樂(lè)是這樣播放出來(lái)的,目前我們所聽(tīng)的音樂(lè)大部分都是 mp3 格式的音 頻文件,當(dāng)然還有其它的格式,cd 格式、wave(*.wav) 、 aiff、au、mp3、midi、wma、realaudio、vqf、oggvorbis、aac、ape ,即當(dāng)播放多媒體文件時(shí),計(jì)算機(jī)將指令發(fā)給聲卡,聲卡按照指令將媒體播

11、放 信息重新合成起來(lái)。所以,音樂(lè)的播放效果取決于聲卡的質(zhì)量。fm 合成芯片, 低檔聲卡一般采用 fm 合成聲音,以降低成本,fm 合成芯片的作用就是用來(lái) 產(chǎn)生合成聲音。波形合成表,在波表 rom 中存放有實(shí)際樂(lè)音的聲音樣本,供 播放 midi 使用,一般的中高檔聲卡都采用波表方式,可以獲得十分逼真的使 用效果。 壓縮音頻文件需要編碼,播放音頻文件需要解碼。編碼,解碼的不同,導(dǎo) 致音頻在經(jīng)過(guò)處理后得到的音質(zhì)也不盡相同,而好的音質(zhì)能夠更好的滿足人們 的聽(tīng)覺(jué)享受。所以,對(duì)各種音頻文件進(jìn)行解碼的技術(shù)研究就很有必要了。 本文就是關(guān)于對(duì)音頻解碼技術(shù)相關(guān)研究,并設(shè)計(jì)出一款屬于自己的音樂(lè)播 放器軟件。 1.2

12、 選題的背景及目的選題的背景及目的 .1 音頻編碼基本概念音頻編碼基本概念 1.什么是采樣率和采樣大小。 聲音其實(shí)是一種能量波,因此也有頻率和振幅的特征,頻率對(duì)應(yīng)于時(shí) 間軸線,振幅對(duì)應(yīng)于電平軸線。波是無(wú)限光滑的,弦線可以看成由無(wú)數(shù)點(diǎn)組成, 由于存儲(chǔ)空間是相對(duì)有限的,數(shù)字編碼過(guò)程中,必須對(duì)弦線的點(diǎn)進(jìn)行采樣。采 樣的過(guò)程就是抽取某點(diǎn)的頻率值,很顯然,在一秒中內(nèi)抽取的點(diǎn)越多,獲取得 頻率信息更豐富,為了復(fù)原波形,一次振動(dòng)中,必須有 2 個(gè)點(diǎn)的采樣,人耳能 夠感覺(jué)到的最高頻率為 20khz,因此要滿足人耳的聽(tīng)覺(jué)要求,則需要至少每秒 進(jìn)行 40k 次采樣,用 40khz 表達(dá),這個(gè) 40

13、khz 就是采樣率。采樣率和采樣大小 的值越大,記錄的波形更接近原始信號(hào)。 2.有損和無(wú)損 根據(jù)采樣率和采樣大小可以得知,相對(duì)自然界的信號(hào),音頻編碼最多 只能做到無(wú)限接近,至少目前的技術(shù)只能這樣了,相對(duì)自然界的信號(hào),任何數(shù) 字音頻編碼方案都是有損的,因?yàn)闊o(wú)法完全還原。在計(jì)算機(jī)應(yīng)用中,能夠達(dá)到 最高保真水平的就是 pcm 編碼,被廣泛用于素材保存及音樂(lè)欣賞,cd、dvd 以及我們常見(jiàn)的 wav 文件中均有應(yīng)用。因此,pcm 約定俗成了無(wú)損編碼,因 為 pcm 代表了數(shù)字音頻中最佳的保真水準(zhǔn),并不意味著 pcm 就能夠確保信號(hào) 絕對(duì)保真,pcm 也只能做到最大程度的無(wú)限接近。我們而習(xí)慣性的把 mp

14、3 列 入有損音頻編碼范疇,是相對(duì) pcm 編碼的。 3.音頻壓縮技術(shù) pcm 音頻流的碼率,采樣率值采樣大小值聲道數(shù) bps。一個(gè)采樣 率為 44.1khz,采樣大小為 16bit,雙聲道的 pcm 編碼的 wav 文件,它的數(shù) 據(jù)速率則為 44.1k162 =1411.2 kbps。我們常說(shuō) 128k 的 mp3,對(duì)應(yīng)的 wav 的參數(shù),就是這個(gè) 1411.2 kbps,這個(gè)參數(shù)也被稱為數(shù)據(jù)帶寬,它和 adsl 中的帶寬是一個(gè)概念。將碼率除以 8,就可以得到這個(gè) wav 的數(shù)據(jù)速率, 即 176.4kb/s。這表示存儲(chǔ)一秒鐘采樣率為 44.1khz,采樣大小為 16bit,雙聲 道的 pc

15、m 編碼的音頻信號(hào),需要 176.4kb 的空間,1 分鐘則約為 10.34m,這 對(duì)大部分用戶是不可接受的,尤其是喜歡在電腦上聽(tīng)音樂(lè)的朋友,要降低磁盤(pán) 占用,只有 2 種方法,降低采樣指標(biāo)或者壓縮。降低指標(biāo)是不可取的,各種音 頻壓縮編碼所達(dá)到的音質(zhì)和壓縮比都不一樣。 4.頻率與采樣率的關(guān)系 采樣率表示了每秒對(duì)原始信號(hào)采樣的次數(shù),我們常見(jiàn)到的音頻文件采 樣率多為 44.1khz,假設(shè)我們有 2 段正弦波信號(hào),分別為 20hz 和 20khz,長(zhǎng) 度均為一秒鐘,以對(duì)應(yīng)我們能聽(tīng)到的最低頻和最高頻,分別對(duì)這兩段信號(hào)進(jìn)行 40khz 的采樣,結(jié)果是:20hz 的信號(hào)每次振動(dòng)被采樣了 40k/20=20

16、00 次,而 20k 的信號(hào)每次振動(dòng)只有 2 次采樣。顯然,在相同的采樣率下,記錄低頻的信 息遠(yuǎn)比高頻的詳細(xì)。這也是 cd 數(shù)碼聲不夠真實(shí)的原因,cd 的 44.1khz 采樣 也無(wú)法保證高頻信號(hào)被較好記錄。要較好的記錄高頻信號(hào),看來(lái)需要更高的采 樣率,在捕捉 cd 音軌的時(shí)候使用 48khz 的采樣率,這是不可取的!這其實(shí)對(duì) 音質(zhì)沒(méi)有任何好處,對(duì)抓軌軟件來(lái)說(shuō),保持和 cd 提供的 44.1khz 一樣的采樣 率才是最佳音質(zhì)的保證之一,而不是去提高它。較高的采樣率只有相對(duì)模擬信 號(hào)的時(shí)候才有用,如果被采樣的信號(hào)是數(shù)字的,不要去嘗試提高采樣率。 5.流特征 隨著網(wǎng)絡(luò)的發(fā)展,人們對(duì)在線收聽(tīng)音樂(lè)提出

17、了要求,因此也要求音頻 文件能夠一邊讀一邊播放,而不需要把這個(gè)文件全部讀出后然后回放,這樣就 可以做到不用下載就可以實(shí)現(xiàn)收聽(tīng)了。也可以做到一邊編碼一邊播放,正是這 種特征,可以實(shí)現(xiàn)在線的直播,架設(shè)自己的數(shù)字廣播電臺(tái)成為了現(xiàn)實(shí)。 .2 各種音頻編碼介紹各種音頻編碼介紹 1.pcm 編碼 pcm 脈沖編碼調(diào)制是 pulse code modulation 的縮寫(xiě)。我們不需要關(guān)心 pcm 最終編碼采用的是什么計(jì)算方式,我們只需要知道 pcm 編碼的音頻流的 優(yōu)點(diǎn)和缺點(diǎn)就可以了。pcm 編碼的最大的優(yōu)點(diǎn)就是音質(zhì)好,最大的缺點(diǎn)就是體 積大。我們常見(jiàn)的 audio cd 就采用了 pcm

18、編碼,一張光盤(pán)的容量只能容納 72 分鐘的音樂(lè)信息。 2.wav 這是一種古老的音頻文件格式,由微軟開(kāi)發(fā)。wav 是一種文件格式, 符合 riff (resource interchange file format) 規(guī)范。所有的 wav 都有一個(gè)文件 頭,這個(gè)文件頭包含了音頻流的編碼參數(shù)。wav 對(duì)音頻流的編碼沒(méi)有硬性規(guī) 定,除了 pcm 之外,還有幾乎所有支持 acm 規(guī)范的編碼都可以為 wav 的音 頻流進(jìn)行編碼。wav 可以使用多種音頻編碼來(lái)壓縮其音頻流,不過(guò)我們常見(jiàn) 的都是音頻流被 pcm 編碼處理的 wav,但這不表示 wav 只能使用 pcm 編 碼,mp3 編碼同樣也可以運(yùn)用在

19、 wav 中,只要安裝好了相應(yīng)的 decode,就可 以欣賞這些 wav 了。在 windows 平臺(tái)下,基于 pcm 編碼的 wav 是被支持 得最好的音頻格式,所有音頻軟件都能完美支持,由于本身可以達(dá)到較高的音 質(zhì)的要求,因此,wav 也是音樂(lè)編輯創(chuàng)作的首選格式,適合保存音樂(lè)素材。 因此,基于 pcm 編碼的 wav 被作為了一種中介的格式,常常使用在其他編碼 的相互轉(zhuǎn)換之中,例如 mp3 轉(zhuǎn)換成 wma。 3.mp3 mp3 作為目前最為普及的音頻壓縮格式,為大家所大量接受,各種與 mp3 相關(guān)的軟件產(chǎn)品層出不窮,而且更多的硬件產(chǎn)品也開(kāi)始支持 mp3,我們能 夠買到的 vcd/dvd 播

20、放機(jī)都很多都能夠支持 mp3,還有更多的便攜的 mp3 播放器等等,雖然幾大音樂(lè)商極其反感這種開(kāi)放的格式,但也無(wú)法阻止這種音 頻壓縮的格式的生存與流傳。mp3 發(fā)展已經(jīng)有 10 個(gè)年頭了,他是 mpeg(mpeg:moving picture experts group) audio layer-3 的簡(jiǎn)稱,是 mpeg1 的衍生編碼方案,1993 年由德國(guó) fraunhofer iis 研究院和湯姆生公司合作發(fā)展 成功。mp3 可以做到 12:1 的驚人壓縮比并保持基本可聽(tīng)的音質(zhì),在當(dāng)年硬盤(pán)天 價(jià)的日子里,mp3 迅速被用戶接受,隨著網(wǎng)絡(luò)的普及,mp3 被數(shù)以億計(jì)的用戶 接受。mp3 編碼技

21、術(shù)的發(fā)布之初其實(shí)是非常不完善的,由于缺乏對(duì)聲音和人耳 聽(tīng)覺(jué)的研究,早期的 mp3 編碼器幾乎全是以粗暴方式來(lái)編碼,音質(zhì)破壞嚴(yán)重。 隨著新技術(shù)的不斷導(dǎo)入,mp3 編碼技術(shù)一次一次的被改良,其中有 2 次重大技 術(shù)上的改進(jìn)。 4.ogg 編碼 ogg vorbis 的音頻編碼,ogg 是一個(gè)龐大的多媒體開(kāi)發(fā)計(jì)劃的項(xiàng)目名 稱,將涉及視頻音頻等方面的編碼開(kāi)發(fā)。整個(gè) ogg 項(xiàng)目計(jì)劃的目的就是向任 何人提供完全免費(fèi)多媒體編碼方案。ogg 的信念就是: open,free,vorbis。這幾個(gè)個(gè)詞匯成為了 ogg 項(xiàng)目中音頻編碼的正式命名。 目前 vorbis 已經(jīng)開(kāi)發(fā)成功,并且開(kāi)發(fā)出了編碼器。ogg v

22、orbis 是高質(zhì)量的音頻 編碼方案,官方數(shù)據(jù)顯示:ogg vorbis 可以在相對(duì)較低的數(shù)據(jù)速率下實(shí)現(xiàn)比 mp3 更好的音質(zhì)。ogg vorbis 這種編碼也遠(yuǎn)比 90 年代開(kāi)發(fā)成功的 mp3 先進(jìn), 她可以支持多個(gè)聲道,這意味著 ogg vorbis 在 sacd、dtscd、dvd audio 抓軌軟件的支持下,可以對(duì)所有的聲道進(jìn)行編碼,而不是 mp3 只能編碼 2 個(gè)聲 道。多聲道音樂(lè)的興起,給音樂(lè)欣賞帶來(lái)了革命性的變化,尤其在欣賞交響時(shí), 會(huì)帶來(lái)更多臨場(chǎng)感。這場(chǎng)革命性的變化是 mp3 無(wú)法適應(yīng)的。和 mp3 一樣, ogg vorbis 是一種靈活開(kāi)放的音頻編碼,能夠在編碼方案已經(jīng)固

23、定下來(lái)后還能 對(duì)音質(zhì)進(jìn)行明顯的調(diào)節(jié)和新算法的改良。因此,它的聲音質(zhì)量將會(huì)越來(lái)越好, 和 mp3 相似,ogg vorbis 更像一個(gè)音頻編碼框架,可以不斷導(dǎo)入新技術(shù)逐步完 善。和 mp3 一樣,ogg 也支持 vbr。 .3 研究的意義研究的意義 人類進(jìn)入信息化時(shí)代以來(lái),網(wǎng)絡(luò)的長(zhǎng)足發(fā)展和廣泛的普及,使得人們能夠 更快,更方便的欣賞音樂(lè)。在個(gè)人 pc 上,一款音樂(lè)播放器在手,聽(tīng)盡世間音 樂(lè)。而一款好的音樂(lè)播放器,能幫助人們更好的去欣賞音樂(lè)?,F(xiàn)今網(wǎng)絡(luò)上有許 多優(yōu)秀的音樂(lè)播放器,如千千靜聽(tīng)等,他們內(nèi)置了相當(dāng)多的音頻解碼器,能夠 播放各種格式的音頻文件。 能編寫(xiě)屬于自己的一款音樂(lè)播放器

24、無(wú)疑是一件有趣的事情,但首先得了解 音樂(lè)播放器是怎么實(shí)現(xiàn)對(duì)各種音頻格式文件進(jìn)行播放的,如何實(shí)現(xiàn)播放器上許 多方便快捷的功能。帶著這個(gè)目的,我選擇了此課題。 而對(duì)音頻解碼進(jìn)行技術(shù)研究有助于了解其內(nèi)在的原理,能夠幫助我們更好 的設(shè)計(jì)出一款屬于自己的音樂(lè)播放器。 1.3 系統(tǒng)主要實(shí)現(xiàn)內(nèi)容與實(shí)現(xiàn)方式系統(tǒng)主要實(shí)現(xiàn)內(nèi)容與實(shí)現(xiàn)方式 .1 系統(tǒng)主要實(shí)現(xiàn)內(nèi)容系統(tǒng)主要實(shí)現(xiàn)內(nèi)容 通過(guò)對(duì)音頻編碼技術(shù)的相關(guān)研究,了解音頻編碼的原理以及過(guò)程,從而設(shè) 計(jì)出一款能夠播放多音頻格式的音樂(lè)播放器。 這款音樂(lè)播放器實(shí)現(xiàn)的相關(guān)內(nèi)容如下: 1)美觀、時(shí)尚的操作界面。 2)顯示正在播放的歌曲名。 3)歌曲控制方式要多樣化

25、。 4)顯示歌曲的播放進(jìn)度。 5)mp3 文件的添加方式多樣化,并且要將其添加到歌曲列表中。 6)實(shí)現(xiàn)靜音和音量的控制。 .2 系統(tǒng)的開(kāi)發(fā)方法系統(tǒng)的開(kāi)發(fā)方法 結(jié)構(gòu)化生命周期法是一種傳統(tǒng)的管理信息系統(tǒng)開(kāi)發(fā)方法,其基本思想是把 整個(gè)系統(tǒng)開(kāi)發(fā)過(guò)程分成若干個(gè)階段,每個(gè)階段進(jìn)行若干活動(dòng),每項(xiàng)活動(dòng)應(yīng)用一 系列標(biāo)準(zhǔn)、規(guī)范、方法和技術(shù),完成一個(gè)或多個(gè)任務(wù),形成符合給定規(guī)范的產(chǎn) 品。 采用結(jié)構(gòu)化生命周期法開(kāi)發(fā)管理信息系統(tǒng)時(shí),應(yīng)遵循的主要原則: (1) 用戶參與的原則 (2) “先邏輯后物理”的原則 (3) “自頂向下”的原則 (4) 工作成果描述(主要指文檔)標(biāo)準(zhǔn)化的原則 其具體開(kāi)發(fā)步驟可分為以

26、下四步: (1) 系統(tǒng)規(guī)劃 (2) 系統(tǒng)開(kāi)發(fā) 1.系統(tǒng)分析 1)系統(tǒng)初步調(diào)查 2)系統(tǒng)可行性研究 3)現(xiàn)行系統(tǒng)的詳細(xì)調(diào)查 4)新系統(tǒng)邏輯方案的提出 2. 系統(tǒng)設(shè)計(jì) 1) 系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì) 2) 系統(tǒng)總體功能設(shè)計(jì) 3) 系統(tǒng)總體物理結(jié)構(gòu)設(shè)計(jì) 4) 系統(tǒng)詳細(xì)設(shè)計(jì) 5) 數(shù)據(jù)庫(kù)設(shè)計(jì) 6) 代碼設(shè)計(jì) 7) 輸入輸出設(shè)計(jì) 3. 系統(tǒng)實(shí)施 1) 程序設(shè)計(jì) 2) 系統(tǒng)測(cè)試 (3) 系統(tǒng)的運(yùn)行及維護(hù) (4) 系統(tǒng)評(píng)價(jià) 快速原型法是 80 年代發(fā)展起來(lái)的,旨在縮短開(kāi)發(fā)周期,提高開(kāi)發(fā)效率和 用戶對(duì)系統(tǒng)的滿意程度。其基本思想是在系統(tǒng)開(kāi)發(fā)的初期,盡快構(gòu)造出系統(tǒng)的 原型,使用戶能及早地運(yùn)行這個(gè)系統(tǒng)原型,通過(guò)使用它、熟悉

27、它,受到啟發(fā)并 取得經(jīng)驗(yàn),然后對(duì)系統(tǒng)的目標(biāo)和功能提出更精確、具體的要求,研制人員據(jù)此 逐漸修改和完善原型,使它滿足用戶的需求,最后完成系統(tǒng)的開(kāi)發(fā)。該方法大 大提高了系統(tǒng)開(kāi)發(fā)效率,彌補(bǔ)了結(jié)構(gòu)化生命周期法開(kāi)發(fā)時(shí)間長(zhǎng)的缺陷。 通常采用原型法需以下四個(gè)階段: (1) 明確用戶的基本要求 (2) 研制系統(tǒng)的原型 (3) 使用、評(píng)價(jià)系統(tǒng)原型 (4) 修改和完善原型 .3 系統(tǒng)的開(kāi)發(fā)平臺(tái)系統(tǒng)的開(kāi)發(fā)平臺(tái) qt 是跨平臺(tái)的應(yīng)用程序和 ui 框架。它包括跨平臺(tái)類庫(kù)、集成開(kāi)發(fā)工具和 跨平臺(tái) ide。使用 qt 您只需一次性開(kāi)發(fā)應(yīng)用程序,無(wú)須重新編寫(xiě)源代碼,便可 跨不同桌面和嵌入式操作系統(tǒng)部署這些應(yīng)用

28、程序。 qt 是諾基亞開(kāi)發(fā)的一個(gè)跨平臺(tái)的 c+圖形用戶界面應(yīng)用程序框架。它提供 給應(yīng)用程序開(kāi)發(fā)者建立藝術(shù)級(jí)的圖形用戶界面所需的所用功能。qt 是完全面向 對(duì)象的,很容易擴(kuò)展,并且允許真正地組件編程。自從 1996 年早些時(shí)候,qt 進(jìn)入商業(yè)領(lǐng)域,它已經(jīng)成為全世界范圍內(nèi)數(shù)千種成功的應(yīng)用程序的基礎(chǔ)。qt 也 是流行的 linux 桌面環(huán)境 kde 的基礎(chǔ)?;旧?,qt 同 window 上的 motif,openwin,gtk 等圖形界面庫(kù)和 windows 平臺(tái)上的 mfc,owl,vcl,atl 是同類型的東西,但 qt 具有優(yōu)良的跨平臺(tái)特性、面 向?qū)ο?、豐富的 api、大量的開(kāi)發(fā)文檔等優(yōu)點(diǎn)。

29、 2 2 系統(tǒng)系統(tǒng)的功能分析的功能分析 基于音樂(lè)播放器所要實(shí)現(xiàn)的內(nèi)容,我們列出用戶操作的模塊,其中每個(gè)模 塊對(duì)應(yīng)一個(gè)功能。 加入文件 加入目錄 播放列表 歌曲控制 靜音設(shè)置 音量設(shè)置 顯示列表 圖 2.1 uml 用例圖 確定了系統(tǒng)的功能。本系統(tǒng)需要完成的功能如下: 1)向系統(tǒng)中添加文件或目錄。 2)將添加的 mp3 文件顯示到歌曲列表中。 3)創(chuàng)建、打開(kāi)、保存和關(guān)閉播放列表。 4)歌曲控制:包括打開(kāi)/播放、暫停、停止 5)歌曲控制:上一首、下一首、循環(huán)、隨機(jī)播放。 6)靜音設(shè)置。 7)音量設(shè)置。 8)顯示歌曲的播放進(jìn)度、歌曲名和歌曲的長(zhǎng)度。 3 3 系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì) 3.1系統(tǒng)概要設(shè)計(jì)系統(tǒng)概

30、要設(shè)計(jì) (1)一個(gè)音樂(lè)軟件,要有列表、播放、暫停、停止、音量設(shè)置等基本功能, 畫(huà)出流程圖,然后為這些組件建立一個(gè)目錄框架,把開(kāi)發(fā)過(guò)程中創(chuàng)建的文件和需 要用到的文件都保存到這個(gè)目錄中,這時(shí)我們需要?jiǎng)?chuàng)建一個(gè)文件夾,命名為 mplayer,其中存放程序所需的素材,這樣文件結(jié)構(gòu)清晰,以便于組織和管理。 (2)對(duì)于創(chuàng)建的一個(gè)新的 qt 應(yīng)用程序來(lái)說(shuō),qt 使用一個(gè) project workspace 來(lái) 存儲(chǔ)該項(xiàng)目所需的所有文件,其中 project workspace 就是一個(gè)文件夾,與項(xiàng)目相關(guān) 的文件存儲(chǔ)在該文件夾下.而一個(gè)項(xiàng)目又由一定數(shù)量的文件組成,如果要生成一個(gè) 可執(zhí)行程序,文件必須包括 cpp

31、 文件和頭文件,而這些文件通常都存儲(chǔ)在同一工作 區(qū)文件夾中.我們?cè)?new 選擇一個(gè)項(xiàng)目類型,創(chuàng)建一個(gè)新的 gui application 首先 從菜單單欄中選擇 file 項(xiàng)打開(kāi)如下圖所示 圖 3.1 file 子菜單 圖 3.2 new 對(duì)話框 在 3.2 所示的 new 對(duì)話框中選 c+,選擇子項(xiàng) gui application 項(xiàng)目類型 (3)當(dāng)開(kāi)始一個(gè)新項(xiàng)目里首先想好三項(xiàng)內(nèi)容.第一項(xiàng)是項(xiàng)目類型是什么.第二 項(xiàng)是項(xiàng)目名稱是什么.第三項(xiàng)是項(xiàng)目是否需要 form file.圖 3.3 項(xiàng)目是否需要 form file(需要的話,form file 打上勾) 圖 3.3 含一個(gè)活動(dòng)工作區(qū)的

32、ide 窗口 (4)設(shè)計(jì)用戶操作界面:界面直接表現(xiàn)一個(gè)應(yīng)用程序的功能。qt 提供給應(yīng)用 程序開(kāi)發(fā)者建立藝術(shù)級(jí)的圖形用戶界面所需的所用功能.用戶界面主要包括對(duì)話 框,工具欄和菜單,它們可以將應(yīng)用程序的所有功能與界面中的控件或菜單命 令聯(lián)系起來(lái)。 (5)測(cè)試與調(diào)試:這是開(kāi)發(fā)人員在開(kāi)發(fā)工作過(guò)程中經(jīng)常要做的事。其目的就 是要盡早發(fā)現(xiàn)源程序中可能存在的錯(cuò)誤,并加以解決。隨著開(kāi)發(fā)工作的深入, 不斷地進(jìn)行軟件測(cè)試和調(diào)試,可以避免給后續(xù)工作帶來(lái)更大的麻煩。實(shí)現(xiàn)一個(gè) 新的功能的時(shí)候,最好檢查一下功能是不是和所預(yù)定的功能一樣,只有調(diào)試過(guò) 后并且不存在錯(cuò)誤后才允許付諸使用。 3.2系統(tǒng)功能模塊設(shè)計(jì)系統(tǒng)功能模塊設(shè)計(jì)

33、在系統(tǒng)功能分析的基礎(chǔ)上,生成如圖 3.4 所示的系統(tǒng)功能模塊圖。 mplayer 加 入 目 錄 加 入 文 件 播 放 列 表 歌 曲 控 制 靜 音 設(shè) 置 音 量 設(shè) 置 歌 曲 列 表 圖 3.4 系統(tǒng)功能模塊圖 .1 加入文件加入文件 音樂(lè)的潮流步伐是快速的,我們常常需要向音樂(lè)播放器中添加時(shí)下最新的 歌曲,以便能夠及時(shí)欣賞。 此功能模塊能夠選擇電腦中或者從網(wǎng)絡(luò)上已下載的最新的歌曲,將之加入 播放器的播放列表,同時(shí)更新播放列表。然后,就能開(kāi)始欣賞最新的音樂(lè)了。 .2 加入目錄加入目錄 我們可能將許多歌曲放在電腦中一個(gè)目錄下面,如果要一首一首的向播放 器中

34、添加歌曲,顯然是很麻煩的。 此功能模塊實(shí)現(xiàn)加入一個(gè)目錄下面所有需要進(jìn)行播放的歌曲,同時(shí)更新播 放器播放列表。 .3 歌曲列表歌曲列表 我們聽(tīng)歌曲時(shí),有時(shí)候想知道歌曲的相關(guān)信息,播放器的歌曲列表實(shí)現(xiàn)了 此功能。 歌曲列表,此功能模塊實(shí)現(xiàn)通過(guò)一個(gè)對(duì)話框顯示歌曲的相關(guān)信息并可以進(jìn) 行編輯,保存,刪除。 .4 歌曲控制歌曲控制 我們聽(tīng)音樂(lè)時(shí),不免需要對(duì)歌曲進(jìn)行,聽(tīng)到一首好聽(tīng)的歌曲,可以讓它循 環(huán)播放,不喜歡聽(tīng),可以切換下一首。 歌曲控制,此功能模塊實(shí)現(xiàn)對(duì)歌曲進(jìn)行打開(kāi)/播放、暫停、停止、上一首、 下一首、循環(huán)播放等控制。 .5 音量設(shè)置音量設(shè)置 欣賞音樂(lè)時(shí)

35、,不同的時(shí)間,不同的歌曲,不同的氣氛,都對(duì)音量的要求是 不同的。 音量設(shè)置,就可以對(duì)當(dāng)前正在播放的歌曲調(diào)節(jié)播放音量的大小,方便快捷 的享受音樂(lè)帶來(lái)的感動(dòng)。 .6 靜音設(shè)置靜音設(shè)置 當(dāng)聽(tīng)音樂(lè)時(shí),有時(shí)有緊急事情需要處理,比如打電話,需要一個(gè)相對(duì)安靜 的當(dāng)前環(huán)境。當(dāng)然,你可以將音量調(diào)到最小,不過(guò),更便捷的方法是直接就行 對(duì)當(dāng)前播放歌曲的靜音。 靜音設(shè)置,此功能模塊實(shí)現(xiàn)對(duì)當(dāng)前正在播放的歌曲直接進(jìn)行靜音。 .7 播放列表播放列表 每次聽(tīng)音樂(lè)如果都要從電腦目錄中選擇需要播放的音樂(lè)是很麻煩的,播放 列表可以幫助解決這個(gè)問(wèn)題。 播放列表。此功能模塊實(shí)現(xiàn)對(duì)歌曲列表的新建/打開(kāi)/關(guān)

36、閉/保存。 3.3系統(tǒng)運(yùn)行環(huán)境系統(tǒng)運(yùn)行環(huán)境 硬件平臺(tái): 處理器 amd 雙核 2gb 內(nèi)存 500gb 硬盤(pán) 軟件平臺(tái): 操作系統(tǒng):windows xp 開(kāi)發(fā)工具:qt 4 系統(tǒng)實(shí)現(xiàn)系統(tǒng)實(shí)現(xiàn) 4.1系統(tǒng)的編譯與運(yùn)行系統(tǒng)的編譯與運(yùn)行 資源文件主要包括 cpp 源文件,頭文件以及.pro 文件。其中.pro 文件為工 程文件,編譯工具也是通過(guò).pro 文件來(lái)得到所需要的源文件和頭文件。 當(dāng)系統(tǒng)成功運(yùn)行一次之后,在 build-desktopdebug 文件下會(huì)生產(chǎn)一個(gè)和工 程名同名的可以執(zhí)行文件,當(dāng)然運(yùn)行此.exe 文件還需要相應(yīng)的.dll 文件。 4.2系統(tǒng)運(yùn)行系統(tǒng)運(yùn)行 這款音樂(lè)播放器啟動(dòng)運(yùn)行后

37、,程序主界面如圖 4.1 所示: 圖 4.1 音樂(lè)播放器界面 4.3系統(tǒng)功能界面系統(tǒng)功能界面 .1 加入文件功能實(shí)現(xiàn)加入文件功能實(shí)現(xiàn) 功能描述: 選擇電腦中或者從網(wǎng)絡(luò)上已下載的最新的歌曲,將之加入播放器的播放列 表,同時(shí)更新播放列表。 圖 4.2 “加入文件”處理流程圖 流程描述:用戶運(yùn)行音樂(lè)播放器軟件,單擊播放器的設(shè)定歌曲按鈕,選擇加 入文件。 運(yùn)行 單擊文件 單擊加入文件 彈出打開(kāi)文件對(duì)話框 選中文件,單擊打開(kāi) 完成添加 圖 4.3 “加入文件”對(duì)話框 此時(shí)播放器調(diào)用 addfiles()函數(shù)打開(kāi)加入音樂(lè)對(duì)話框。 從彈出的對(duì)話框中選擇最后需要打開(kāi)的文件,點(diǎn)擊確定,從而實(shí)現(xiàn)添

38、加文 件的功能。代碼片段: 圖 4.4 加入文件功能代碼 .2 加入目錄加入目錄 功能描述: 實(shí)現(xiàn)加入一個(gè)目錄下面所有需要進(jìn)行播放的歌曲,同時(shí)更新播放器播放列 表。 處理流程: 運(yùn)行 單擊文件 單擊加入目錄 彈出打開(kāi)目錄對(duì)話框 選中目錄,單擊打開(kāi) 完成添加 圖 4.5 “加入目錄”流程圖 流程描述:用戶運(yùn)行音樂(lè)播放器軟件,單擊播放器的設(shè)定歌曲按鈕,選擇加 入目錄,此時(shí)播放器調(diào)用 adddirectory()函數(shù),打開(kāi)加入目錄對(duì)話框: 圖 4.6 “加入目錄”對(duì)話框 adddirectory()函數(shù)代碼片段 圖 4.7 加入目錄功能代碼 .3 打開(kāi)歌曲列表打開(kāi)歌曲

39、列表 功能描述: 此功能模塊實(shí)現(xiàn)通過(guò)一個(gè)對(duì)話框打開(kāi).mpl 播放列表。 處理流程: 運(yùn)行 單擊文件 單擊打開(kāi)列表 選擇所需.mpl 文件 單擊打開(kāi) 播放器顯示列表更新 完成 圖 4.8 “歌曲列表”功能流程圖 流程描述: 運(yùn)行音樂(lè)播放器軟件,單擊打開(kāi)列表功能按鈕,彈出文件信息對(duì)話框。 圖 4.9 文件信息對(duì)話框 openplaylist()代碼片段 圖 4.10 打開(kāi)列表功能代碼 .4 歌曲控制功能實(shí)現(xiàn)歌曲控制功能實(shí)現(xiàn) 功能描述:此功能模塊實(shí)現(xiàn)對(duì)歌曲進(jìn)行打開(kāi)/播放、暫停、停止、上一首、 下一首、順序播放、循環(huán)播放和隨機(jī)播放等控制。 處理流程: 圖 4.11“歌曲控制”功能流程圖

40、 運(yùn)行 單擊相應(yīng)的功能按鈕 播放器完成相應(yīng)功能 完成 流程描述: 圖 4.12 控制功能按鈕 圖 4.13 模式功能演示圖 部分代碼片段 圖 4.14 模式功能代碼 .5 音量控制功能實(shí)現(xiàn)音量控制功能實(shí)現(xiàn) 功能描述:可以對(duì)當(dāng)前正在播放的歌曲調(diào)節(jié)播放音量的大小,方便快捷的 享受音樂(lè)帶來(lái)的感動(dòng)。 處理流程: 圖 4.15 “音量控制”功能流程圖 流程描述:運(yùn)行音樂(lè)播放器軟件,單擊播放器右邊音量控制功能按鈕,左 右拉動(dòng)滑塊進(jìn)行音量調(diào)節(jié),如圖所示。 圖 4.16 音量控制功能演示圖 .6 靜音設(shè)置功能實(shí)現(xiàn)靜音設(shè)置功能實(shí)現(xiàn) 功能描述:此功能模塊實(shí)現(xiàn)對(duì)當(dāng)前正在播放的歌曲直接

41、進(jìn)行靜音。 處理流程: 運(yùn)行 單擊音量控制按鈕 左右滑動(dòng)調(diào)節(jié)音量 完成 運(yùn)行 單擊靜音按鈕 進(jìn)行靜音/取消靜音 完成 圖 4.17 “靜音設(shè)置”功能流程圖 流程描述:運(yùn)行音樂(lè)播放軟件,單擊播放器中間的靜音按鈕,具體如圖所 示。 圖 4.18 靜音控制功能演示圖 .7 播放進(jìn)度條功能實(shí)現(xiàn)播放進(jìn)度條功能實(shí)現(xiàn) 功能描述:定點(diǎn)播放音樂(lè)文件 處理流程: 圖 4.19 定點(diǎn)播放功能流程圖 流程描述:運(yùn)行音樂(lè)播放器軟件,單擊播放器頂上進(jìn)度條按鈕,左右拖動(dòng) 進(jìn)度條按鈕實(shí)現(xiàn)定點(diǎn)播放,如圖所示。 圖 4.20 進(jìn)度條功能演示圖 運(yùn)行 單擊進(jìn)度條按鈕 左右拖動(dòng)進(jìn)度條按鈕可以實(shí)現(xiàn)定點(diǎn)播放 完成 5 總總 結(jié)結(jié) 通過(guò)三個(gè)月的努力,在老師和同學(xué)的幫助下順利完成基于 qt 的音頻管理 系統(tǒng)。這個(gè)總結(jié),既為大學(xué)劃上一個(gè)完美的句號(hào),也為將來(lái)的人生做了一個(gè)鋪 墊。 我選的題目是關(guān)于音樂(lè)播放器,之所以選這個(gè)為核心,是因?yàn)樵诖笠坏臅r(shí) 候我就想做一個(gè)音樂(lè)播放器,現(xiàn)在也算是實(shí)現(xiàn)了一個(gè)小夢(mèng)想。剛剛開(kāi)始的時(shí)候, 題目好定,但是內(nèi)容卻一再讓我陷入迷茫

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論