




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、基于基于 qtqt 音頻管理系統(tǒng)音頻管理系統(tǒng)指導(dǎo)老師:指導(dǎo)老師:學(xué)生姓名:學(xué)生姓名: 日期:日期:摘摘 要要qt是諾基亞開發(fā)的一個跨平臺的c+圖形用戶界面應(yīng)用程序框架。它提供給應(yīng)用程序開發(fā)者建立藝術(shù)級的圖形用戶界面所需的所用功能。qt是完全面向?qū)ο蟮?,很容易擴展,并且允許真正地組件編程。本文介紹了從分析到開發(fā)到系統(tǒng)的設(shè)計與測試的整個音樂播放器的生成過程,包括了4個章節(jié),第一章為緒論,簡單介紹了音樂和音頻編碼;第二章為系統(tǒng)功能,用一張用例圖表達了系統(tǒng)所需的基本功能;第三章為系統(tǒng)設(shè)計,以第二章為基礎(chǔ)詳細具體的羅列出系統(tǒng)的每個功能;第四章為系統(tǒng)實現(xiàn),包括了主界面,每個功能界面的截圖與代碼片段。系統(tǒng)開
2、發(fā)平臺的介紹,具體介紹了qt主要界面和使用方法,其中包括常用工具具體位置與使用方法和工作區(qū)的生成,項目的創(chuàng)建、項目中文件的添加刪除、項目的編譯、項目的測試等。后邊幾部分介紹了系統(tǒng)規(guī)劃與分析,應(yīng)用程序主界面,代碼的編寫與功能的實現(xiàn),系統(tǒng)的編譯與運行,最終實現(xiàn)了音樂播放器的功能,能對歌曲音樂進行播放和控制。關(guān)鍵詞:關(guān)鍵詞:qt、播放器、組件編程abstract the nokia qt is the development of a cross-platform c + + graphical user interface application framework. it provides ap
3、plication 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 testing of the entire mus
4、ic 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 second chapters base
5、d 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 main interface and meth
6、od 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 application interface, the
7、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 iabstractabstract.iiii1 1 緒論緒論.1 11.1 音樂簡介 .11.2 選題的背景及目的 .11.2.1
8、 音頻編碼基本概念.11.2.2 各種音頻編碼介紹.31.2.3 研究的意義.41.3 系統(tǒng)主要實現(xiàn)內(nèi)容與實現(xiàn)方式 .51.3.1 系統(tǒng)主要實現(xiàn)內(nèi)容.51.3.2 系統(tǒng)的開發(fā)方法.51.3.3 系統(tǒng)的開發(fā)平臺 .62 2 系統(tǒng)的功能分析系統(tǒng)的功能分析.7 73 3 系統(tǒng)設(shè)計系統(tǒng)設(shè)計 .8 83.1 系統(tǒng)概要設(shè)計 .83.2 系統(tǒng)功能模塊設(shè)計 .103.2.1 加入文件 .113.2.2 加入目錄 .113.2.3 歌曲列表 .113.2.4 歌曲控制 .123.2.5 音量設(shè)置 .123.2.6 靜音設(shè)置 .123.2.7 播放列表 .123.3 系統(tǒng)運行環(huán)境 .134 4 系統(tǒng)實現(xiàn)系統(tǒng)實現(xiàn)
9、.13134.1 系統(tǒng)的編譯與運行 .134.2 系統(tǒng)運行 .134.3 系統(tǒng)功能界面 .144.3.1 加入文件功能實現(xiàn) .144.3.2 加入目錄 .174.3.3 打開歌曲列表 .194.3.4 歌曲控制功能實現(xiàn) .214.3.5 音量控制功能實現(xiàn) .234.3.6 靜音設(shè)置功能實現(xiàn) .234.3.7 播放進度條功能實現(xiàn) .245 5 總結(jié)總結(jié) .2525致致謝謝.2626參考文獻參考文獻.26267 71 緒緒 論論1.1 音樂簡介音樂簡介音樂一直以來就是人們?nèi)粘P蓍e的必要調(diào)劑品,極大的豐富人們的精神生活。物體規(guī)則震動發(fā)出的聲音稱為樂音,由有組織的樂音來表達人們思想感情、反映現(xiàn)實生活的
10、一種藝術(shù)就是音樂。分為聲樂和器樂兩大部門。在所有的藝術(shù)類型中,比較而言,音樂是最抽象的藝術(shù)。另有電影以此為名,以及音樂療法:用音樂來減輕或消除患者的病痛。音樂是這樣播放出來的,目前我們所聽的音樂大部分都是 mp3 格式的音頻文件,當然還有其它的格式,cd 格式、wave(*.wav) 、aiff、au、mp3、midi、wma、realaudio、vqf、oggvorbis、aac、ape,即當播放多媒體文件時,計算機將指令發(fā)給聲卡,聲卡按照指令將媒體播放信息重新合成起來。所以,音樂的播放效果取決于聲卡的質(zhì)量。fm 合成芯片,低檔聲卡一般采用 fm 合成聲音,以降低成本,fm 合成芯片的作用就
11、是用來產(chǎn)生合成聲音。波形合成表,在波表 rom 中存放有實際樂音的聲音樣本,供播放 midi 使用,一般的中高檔聲卡都采用波表方式,可以獲得十分逼真的使用效果。壓縮音頻文件需要編碼,播放音頻文件需要解碼。編碼,解碼的不同,導(dǎo)致音頻在經(jīng)過處理后得到的音質(zhì)也不盡相同,而好的音質(zhì)能夠更好的滿足人們的聽覺享受。所以,對各種音頻文件進行解碼的技術(shù)研究就很有必要了。本文就是關(guān)于對音頻解碼技術(shù)相關(guān)研究,并設(shè)計出一款屬于自己的音樂播放器軟件。1.2 選題的背景及目的選題的背景及目的 .1 音頻編碼基本概念音頻編碼基本概念1.什么是采樣率和采樣大小。 聲音其實是一種能量波,因此也有頻率和振幅的特
12、征,頻率對應(yīng)于時間軸線,振幅對應(yīng)于電平軸線。波是無限光滑的,弦線可以看成由無數(shù)點組成,由于存儲空間是相對有限的,數(shù)字編碼過程中,必須對弦線的點進行采樣。采樣的過程就是抽取某點的頻率值,很顯然,在一秒中內(nèi)抽取的點越多,獲取得頻率信息更豐富,為了復(fù)原波形,一次振動中,必須有 2 個點的采樣,人耳能夠感覺到的最高頻率為 20khz,因此要滿足人耳的聽覺要求,則需要至少每秒進行 40k 次采樣,用 40khz 表達,這個 40khz 就是采樣率。采樣率和采樣大小的值越大,記錄的波形更接近原始信號。2.有損和無損 根據(jù)采樣率和采樣大小可以得知,相對自然界的信號,音頻編碼最多只能做到無限接近,至少目前的技
13、術(shù)只能這樣了,相對自然界的信號,任何數(shù)字音頻編碼方案都是有損的,因為無法完全還原。在計算機應(yīng)用中,能夠達到最高保真水平的就是 pcm 編碼,被廣泛用于素材保存及音樂欣賞,cd、dvd以及我們常見的 wav 文件中均有應(yīng)用。因此,pcm 約定俗成了無損編碼,因為 pcm 代表了數(shù)字音頻中最佳的保真水準,并不意味著 pcm 就能夠確保信號絕對保真,pcm 也只能做到最大程度的無限接近。我們而習(xí)慣性的把 mp3 列入有損音頻編碼范疇,是相對 pcm 編碼的。3.音頻壓縮技術(shù) pcm 音頻流的碼率,采樣率值采樣大小值聲道數(shù) bps。一個采樣率為 44.1khz,采樣大小為 16bit,雙聲道的 pcm
14、 編碼的 wav 文件,它的數(shù)據(jù)速率則為 44.1k162 =1411.2 kbps。我們常說 128k 的 mp3,對應(yīng)的wav 的參數(shù),就是這個 1411.2 kbps,這個參數(shù)也被稱為數(shù)據(jù)帶寬,它和adsl 中的帶寬是一個概念。將碼率除以 8,就可以得到這個 wav 的數(shù)據(jù)速率,即 176.4kb/s。這表示存儲一秒鐘采樣率為 44.1khz,采樣大小為 16bit,雙聲道的 pcm 編碼的音頻信號,需要 176.4kb 的空間,1 分鐘則約為 10.34m,這對大部分用戶是不可接受的,尤其是喜歡在電腦上聽音樂的朋友,要降低磁盤占用,只有 2 種方法,降低采樣指標或者壓縮。降低指標是不可
15、取的,各種音頻壓縮編碼所達到的音質(zhì)和壓縮比都不一樣。4.頻率與采樣率的關(guān)系 采樣率表示了每秒對原始信號采樣的次數(shù),我們常見到的音頻文件采樣率多為 44.1khz,假設(shè)我們有 2 段正弦波信號,分別為 20hz 和 20khz,長度均為一秒鐘,以對應(yīng)我們能聽到的最低頻和最高頻,分別對這兩段信號進行40khz 的采樣,結(jié)果是:20hz 的信號每次振動被采樣了 40k/20=2000 次,而20k 的信號每次振動只有 2 次采樣。顯然,在相同的采樣率下,記錄低頻的信息遠比高頻的詳細。這也是 cd 數(shù)碼聲不夠真實的原因,cd 的 44.1khz 采樣也無法保證高頻信號被較好記錄。要較好的記錄高頻信號,
16、看來需要更高的采樣率,在捕捉 cd 音軌的時候使用 48khz 的采樣率,這是不可取的!這其實對音質(zhì)沒有任何好處,對抓軌軟件來說,保持和 cd 提供的 44.1khz 一樣的采樣率才是最佳音質(zhì)的保證之一,而不是去提高它。較高的采樣率只有相對模擬信號的時候才有用,如果被采樣的信號是數(shù)字的,不要去嘗試提高采樣率。5.流特征 隨著網(wǎng)絡(luò)的發(fā)展,人們對在線收聽音樂提出了要求,因此也要求音頻文件能夠一邊讀一邊播放,而不需要把這個文件全部讀出后然后回放,這樣就可以做到不用下載就可以實現(xiàn)收聽了。也可以做到一邊編碼一邊播放,正是這種特征,可以實現(xiàn)在線的直播,架設(shè)自己的數(shù)字廣播電臺成為了現(xiàn)實。.2
17、 各種音頻編碼介紹各種音頻編碼介紹1.pcm 編碼pcm 脈沖編碼調(diào)制是 pulse code modulation 的縮寫。我們不需要關(guān)心pcm 最終編碼采用的是什么計算方式,我們只需要知道 pcm 編碼的音頻流的優(yōu)點和缺點就可以了。pcm 編碼的最大的優(yōu)點就是音質(zhì)好,最大的缺點就是體積大。我們常見的 audio cd 就采用了 pcm 編碼,一張光盤的容量只能容納 72分鐘的音樂信息。2.wav這是一種古老的音頻文件格式,由微軟開發(fā)。wav 是一種文件格式,符合 riff (resource interchange file format) 規(guī)范。所有的 wav 都有一個文件頭,這個文件頭
18、包含了音頻流的編碼參數(shù)。wav 對音頻流的編碼沒有硬性規(guī)定,除了 pcm 之外,還有幾乎所有支持 acm 規(guī)范的編碼都可以為 wav 的音頻流進行編碼。wav 可以使用多種音頻編碼來壓縮其音頻流,不過我們常見的都是音頻流被 pcm 編碼處理的 wav,但這不表示 wav 只能使用 pcm 編碼,mp3 編碼同樣也可以運用在 wav 中,只要安裝好了相應(yīng)的 decode,就可以欣賞這些 wav 了。在 windows 平臺下,基于 pcm 編碼的 wav 是被支持得最好的音頻格式,所有音頻軟件都能完美支持,由于本身可以達到較高的音質(zhì)的要求,因此,wav 也是音樂編輯創(chuàng)作的首選格式,適合保存音樂素
19、材。因此,基于 pcm 編碼的 wav 被作為了一種中介的格式,常常使用在其他編碼的相互轉(zhuǎn)換之中,例如 mp3 轉(zhuǎn)換成 wma。3.mp3mp3 作為目前最為普及的音頻壓縮格式,為大家所大量接受,各種與mp3 相關(guān)的軟件產(chǎn)品層出不窮,而且更多的硬件產(chǎn)品也開始支持 mp3,我們能夠買到的 vcd/dvd 播放機都很多都能夠支持 mp3,還有更多的便攜的 mp3播放器等等,雖然幾大音樂商極其反感這種開放的格式,但也無法阻止這種音頻壓縮的格式的生存與流傳。mp3 發(fā)展已經(jīng)有 10 個年頭了,他是mpeg(mpeg:moving picture experts group) audio layer-3
20、 的簡稱,是 mpeg1的衍生編碼方案,1993 年由德國 fraunhofer iis 研究院和湯姆生公司合作發(fā)展成功。mp3 可以做到 12:1 的驚人壓縮比并保持基本可聽的音質(zhì),在當年硬盤天價的日子里,mp3 迅速被用戶接受,隨著網(wǎng)絡(luò)的普及,mp3 被數(shù)以億計的用戶接受。mp3 編碼技術(shù)的發(fā)布之初其實是非常不完善的,由于缺乏對聲音和人耳聽覺的研究,早期的 mp3 編碼器幾乎全是以粗暴方式來編碼,音質(zhì)破壞嚴重。隨著新技術(shù)的不斷導(dǎo)入,mp3 編碼技術(shù)一次一次的被改良,其中有 2 次重大技術(shù)上的改進。4.ogg 編碼ogg vorbis 的音頻編碼,ogg 是一個龐大的多媒體開發(fā)計劃的項目名稱
21、,將涉及視頻音頻等方面的編碼開發(fā)。整個 ogg 項目計劃的目的就是向任何人提供完全免費多媒體編碼方案。ogg 的信念就是:open,free,vorbis。這幾個個詞匯成為了 ogg 項目中音頻編碼的正式命名。目前 vorbis 已經(jīng)開發(fā)成功,并且開發(fā)出了編碼器。ogg vorbis 是高質(zhì)量的音頻編碼方案,官方數(shù)據(jù)顯示:ogg vorbis 可以在相對較低的數(shù)據(jù)速率下實現(xiàn)比mp3 更好的音質(zhì)。ogg vorbis 這種編碼也遠比 90 年代開發(fā)成功的 mp3 先進,她可以支持多個聲道,這意味著 ogg vorbis 在 sacd、dtscd、dvd audio抓軌軟件的支持下,可以對所有的聲
22、道進行編碼,而不是 mp3 只能編碼 2 個聲道。多聲道音樂的興起,給音樂欣賞帶來了革命性的變化,尤其在欣賞交響時,會帶來更多臨場感。這場革命性的變化是 mp3 無法適應(yīng)的。和 mp3 一樣,ogg vorbis 是一種靈活開放的音頻編碼,能夠在編碼方案已經(jīng)固定下來后還能對音質(zhì)進行明顯的調(diào)節(jié)和新算法的改良。因此,它的聲音質(zhì)量將會越來越好,和 mp3 相似,ogg vorbis 更像一個音頻編碼框架,可以不斷導(dǎo)入新技術(shù)逐步完善。和 mp3 一樣,ogg 也支持 vbr。.3 研究的意義研究的意義人類進入信息化時代以來,網(wǎng)絡(luò)的長足發(fā)展和廣泛的普及,使得人們能夠更快,更方便的欣賞音樂
23、。在個人 pc 上,一款音樂播放器在手,聽盡世間音樂。而一款好的音樂播放器,能幫助人們更好的去欣賞音樂。現(xiàn)今網(wǎng)絡(luò)上有許多優(yōu)秀的音樂播放器,如千千靜聽等,他們內(nèi)置了相當多的音頻解碼器,能夠播放各種格式的音頻文件。能編寫屬于自己的一款音樂播放器無疑是一件有趣的事情,但首先得了解音樂播放器是怎么實現(xiàn)對各種音頻格式文件進行播放的,如何實現(xiàn)播放器上許多方便快捷的功能。帶著這個目的,我選擇了此課題。而對音頻解碼進行技術(shù)研究有助于了解其內(nèi)在的原理,能夠幫助我們更好的設(shè)計出一款屬于自己的音樂播放器。1.3 系統(tǒng)主要實現(xiàn)內(nèi)容與實現(xiàn)方式系統(tǒng)主要實現(xiàn)內(nèi)容與實現(xiàn)方式.1 系統(tǒng)主要實現(xiàn)內(nèi)容系統(tǒng)主要實現(xiàn)內(nèi)
24、容通過對音頻編碼技術(shù)的相關(guān)研究,了解音頻編碼的原理以及過程,從而設(shè)計出一款能夠播放多音頻格式的音樂播放器。這款音樂播放器實現(xiàn)的相關(guān)內(nèi)容如下:1)美觀、時尚的操作界面。2)顯示正在播放的歌曲名。3)歌曲控制方式要多樣化。4)顯示歌曲的播放進度。5)mp3 文件的添加方式多樣化,并且要將其添加到歌曲列表中。6)實現(xiàn)靜音和音量的控制。.2 系統(tǒng)的開發(fā)方法系統(tǒng)的開發(fā)方法結(jié)構(gòu)化生命周期法是一種傳統(tǒng)的管理信息系統(tǒng)開發(fā)方法,其基本思想是把整個系統(tǒng)開發(fā)過程分成若干個階段,每個階段進行若干活動,每項活動應(yīng)用一系列標準、規(guī)范、方法和技術(shù),完成一個或多個任務(wù),形成符合給定規(guī)范的產(chǎn)品。采用結(jié)構(gòu)化生命周
25、期法開發(fā)管理信息系統(tǒng)時,應(yīng)遵循的主要原則:(1) 用戶參與的原則(2) “先邏輯后物理”的原則(3) “自頂向下”的原則(4) 工作成果描述(主要指文檔)標準化的原則其具體開發(fā)步驟可分為以下四步:(1) 系統(tǒng)規(guī)劃(2) 系統(tǒng)開發(fā)1.系統(tǒng)分析1)系統(tǒng)初步調(diào)查2)系統(tǒng)可行性研究3)現(xiàn)行系統(tǒng)的詳細調(diào)查4)新系統(tǒng)邏輯方案的提出2. 系統(tǒng)設(shè)計1) 系統(tǒng)總體結(jié)構(gòu)設(shè)計2) 系統(tǒng)總體功能設(shè)計3) 系統(tǒng)總體物理結(jié)構(gòu)設(shè)計4) 系統(tǒng)詳細設(shè)計5) 數(shù)據(jù)庫設(shè)計6) 代碼設(shè)計7) 輸入輸出設(shè)計3. 系統(tǒng)實施1) 程序設(shè)計2) 系統(tǒng)測試(3) 系統(tǒng)的運行及維護(4) 系統(tǒng)評價 快速原型法是 80 年代發(fā)展起來的,旨在縮短開
26、發(fā)周期,提高開發(fā)效率和用戶對系統(tǒng)的滿意程度。其基本思想是在系統(tǒng)開發(fā)的初期,盡快構(gòu)造出系統(tǒng)的原型,使用戶能及早地運行這個系統(tǒng)原型,通過使用它、熟悉它,受到啟發(fā)并取得經(jīng)驗,然后對系統(tǒng)的目標和功能提出更精確、具體的要求,研制人員據(jù)此逐漸修改和完善原型,使它滿足用戶的需求,最后完成系統(tǒng)的開發(fā)。該方法大大提高了系統(tǒng)開發(fā)效率,彌補了結(jié)構(gòu)化生命周期法開發(fā)時間長的缺陷。通常采用原型法需以下四個階段:(1) 明確用戶的基本要求(2) 研制系統(tǒng)的原型(3) 使用、評價系統(tǒng)原型(4) 修改和完善原型.3 系統(tǒng)的開發(fā)平臺系統(tǒng)的開發(fā)平臺qt 是跨平臺的應(yīng)用程序和 ui 框架。它包括跨平臺類庫、集成開發(fā)工
27、具和跨平臺 ide。使用 qt 您只需一次性開發(fā)應(yīng)用程序,無須重新編寫源代碼,便可跨不同桌面和嵌入式操作系統(tǒng)部署這些應(yīng)用程序。qt 是諾基亞開發(fā)的一個跨平臺的 c+圖形用戶界面應(yīng)用程序框架。它提供給應(yīng)用程序開發(fā)者建立藝術(shù)級的圖形用戶界面所需的所用功能。qt 是完全面向?qū)ο蟮模苋菀讛U展,并且允許真正地組件編程。自從 1996 年早些時候,qt進入商業(yè)領(lǐng)域,它已經(jīng)成為全世界范圍內(nèi)數(shù)千種成功的應(yīng)用程序的基礎(chǔ)。qt 也是流行的 linux 桌面環(huán)境 kde 的基礎(chǔ)?;旧希琿t 同 window 上的motif,openwin,gtk 等圖形界面庫和 windows 平臺上的mfc,owl,vcl,
28、atl 是同類型的東西,但 qt 具有優(yōu)良的跨平臺特性、面向?qū)ο?、豐富的 api、大量的開發(fā)文檔等優(yōu)點。2 2 系統(tǒng)系統(tǒng)的功能分析的功能分析基于音樂播放器所要實現(xiàn)的內(nèi)容,我們列出用戶操作的模塊,其中每個模塊對應(yīng)一個功能。加入文件加入目錄播放列表歌曲控制靜音設(shè)置音量設(shè)置顯示列表圖 2.1 uml 用例圖確定了系統(tǒng)的功能。本系統(tǒng)需要完成的功能如下:1)向系統(tǒng)中添加文件或目錄。2)將添加的 mp3 文件顯示到歌曲列表中。3)創(chuàng)建、打開、保存和關(guān)閉播放列表。4)歌曲控制:包括打開/播放、暫停、停止5)歌曲控制:上一首、下一首、循環(huán)、隨機播放。6)靜音設(shè)置。7)音量設(shè)置。8)顯示歌曲的播放進度、歌曲名和
29、歌曲的長度。3 3 系統(tǒng)設(shè)計系統(tǒng)設(shè)計3.1系統(tǒng)概要設(shè)計系統(tǒng)概要設(shè)計(1)一個音樂軟件,要有列表、播放、暫停、停止、音量設(shè)置等基本功能,畫出流程圖,然后為這些組件建立一個目錄框架,把開發(fā)過程中創(chuàng)建的文件和需要用到的文件都保存到這個目錄中,這時我們需要創(chuàng)建一個文件夾,命名為mplayer,其中存放程序所需的素材,這樣文件結(jié)構(gòu)清晰,以便于組織和管理。(2)對于創(chuàng)建的一個新的 qt 應(yīng)用程序來說,qt 使用一個 project workspace 來存儲該項目所需的所有文件,其中 project workspace 就是一個文件夾,與項目相關(guān)的文件存儲在該文件夾下.而一個項目又由一定數(shù)量的文件組成,如
30、果要生成一個可執(zhí)行程序,文件必須包括 cpp 文件和頭文件,而這些文件通常都存儲在同一工作區(qū)文件夾中.我們在 new 選擇一個項目類型,創(chuàng)建一個新的 gui application 首先從菜單單欄中選擇 file 項打開如下圖所示圖 3.1 file 子菜單圖 3.2 new 對話框在 3.2 所示的 new 對話框中選 c+,選擇子項 gui application 項目類型(3)當開始一個新項目里首先想好三項內(nèi)容.第一項是項目類型是什么.第二項是項目名稱是什么.第三項是項目是否需要 form file.圖 3.3 項目是否需要 form file(需要的話,form file 打上勾)圖
31、3.3 含一個活動工作區(qū)的 ide 窗口(4)設(shè)計用戶操作界面:界面直接表現(xiàn)一個應(yīng)用程序的功能。qt 提供給應(yīng)用程序開發(fā)者建立藝術(shù)級的圖形用戶界面所需的所用功能.用戶界面主要包括對話框,工具欄和菜單,它們可以將應(yīng)用程序的所有功能與界面中的控件或菜單命令聯(lián)系起來。(5)測試與調(diào)試:這是開發(fā)人員在開發(fā)工作過程中經(jīng)常要做的事。其目的就是要盡早發(fā)現(xiàn)源程序中可能存在的錯誤,并加以解決。隨著開發(fā)工作的深入,不斷地進行軟件測試和調(diào)試,可以避免給后續(xù)工作帶來更大的麻煩。實現(xiàn)一個新的功能的時候,最好檢查一下功能是不是和所預(yù)定的功能一樣,只有調(diào)試過后并且不存在錯誤后才允許付諸使用。3.2系統(tǒng)功能模塊設(shè)計系統(tǒng)功能模
32、塊設(shè)計在系統(tǒng)功能分析的基礎(chǔ)上,生成如圖 3.4 所示的系統(tǒng)功能模塊圖。mplayer加入目錄加入文件播放列表歌曲控制靜音設(shè)置音量設(shè)置歌曲列表圖 3.4 系統(tǒng)功能模塊圖.1 加入文件加入文件音樂的潮流步伐是快速的,我們常常需要向音樂播放器中添加時下最新的歌曲,以便能夠及時欣賞。此功能模塊能夠選擇電腦中或者從網(wǎng)絡(luò)上已下載的最新的歌曲,將之加入播放器的播放列表,同時更新播放列表。然后,就能開始欣賞最新的音樂了。.2 加入目錄加入目錄我們可能將許多歌曲放在電腦中一個目錄下面,如果要一首一首的向播放器中添加歌曲,顯然是很麻煩的。此功能模塊實現(xiàn)加入一個目錄下面所有需要進行播
33、放的歌曲,同時更新播放器播放列表。.3 歌曲列表歌曲列表我們聽歌曲時,有時候想知道歌曲的相關(guān)信息,播放器的歌曲列表實現(xiàn)了此功能。歌曲列表,此功能模塊實現(xiàn)通過一個對話框顯示歌曲的相關(guān)信息并可以進行編輯,保存,刪除。.4 歌曲控制歌曲控制我們聽音樂時,不免需要對歌曲進行,聽到一首好聽的歌曲,可以讓它循環(huán)播放,不喜歡聽,可以切換下一首。歌曲控制,此功能模塊實現(xiàn)對歌曲進行打開/播放、暫停、停止、上一首、下一首、循環(huán)播放等控制。.5 音量設(shè)置音量設(shè)置欣賞音樂時,不同的時間,不同的歌曲,不同的氣氛,都對音量的要求是不同的。音量設(shè)置,就可以對當前正在播放的歌曲
34、調(diào)節(jié)播放音量的大小,方便快捷的享受音樂帶來的感動。.6 靜音設(shè)置靜音設(shè)置當聽音樂時,有時有緊急事情需要處理,比如打電話,需要一個相對安靜的當前環(huán)境。當然,你可以將音量調(diào)到最小,不過,更便捷的方法是直接就行對當前播放歌曲的靜音。靜音設(shè)置,此功能模塊實現(xiàn)對當前正在播放的歌曲直接進行靜音。.7 播放列表播放列表每次聽音樂如果都要從電腦目錄中選擇需要播放的音樂是很麻煩的,播放列表可以幫助解決這個問題。播放列表。此功能模塊實現(xiàn)對歌曲列表的新建/打開/關(guān)閉/保存。3.3系統(tǒng)運行環(huán)境系統(tǒng)運行環(huán)境硬件平臺:處理器 amd 雙核2gb 內(nèi)存500gb 硬盤軟件平臺:操作系統(tǒng):wi
35、ndows xp開發(fā)工具:qt4 系統(tǒng)實現(xiàn)系統(tǒng)實現(xiàn)4.1系統(tǒng)的編譯與運行系統(tǒng)的編譯與運行資源文件主要包括 cpp 源文件,頭文件以及.pro 文件。其中.pro 文件為工程文件,編譯工具也是通過.pro 文件來得到所需要的源文件和頭文件。當系統(tǒng)成功運行一次之后,在 build-desktopdebug 文件下會生產(chǎn)一個和工程名同名的可以執(zhí)行文件,當然運行此.exe 文件還需要相應(yīng)的.dll 文件。4.2系統(tǒng)運行系統(tǒng)運行這款音樂播放器啟動運行后,程序主界面如圖 4.1 所示:圖 4.1 音樂播放器界面4.3系統(tǒng)功能界面系統(tǒng)功能界面.1 加入文件功能實現(xiàn)加入文件功能實現(xiàn)功能描述:選
36、擇電腦中或者從網(wǎng)絡(luò)上已下載的最新的歌曲,將之加入播放器的播放列表,同時更新播放列表。圖 4.2 “加入文件”處理流程圖流程描述:用戶運行音樂播放器軟件,單擊播放器的設(shè)定歌曲按鈕,選擇加入文件。運行單擊文件單擊加入文件彈出打開文件對話框選中文件,單擊打開完成添加圖 4.3 “加入文件”對話框此時播放器調(diào)用 addfiles()函數(shù)打開加入音樂對話框。從彈出的對話框中選擇最后需要打開的文件,點擊確定,從而實現(xiàn)添加文件的功能。代碼片段:圖 4.4 加入文件功能代碼.2 加入目錄加入目錄功能描述:實現(xiàn)加入一個目錄下面所有需要進行播放的歌曲,同時更新播放器播放列表。處理流程:運行單擊文件
37、單擊加入目錄彈出打開目錄對話框選中目錄,單擊打開完成添加圖 4.5 “加入目錄”流程圖流程描述:用戶運行音樂播放器軟件,單擊播放器的設(shè)定歌曲按鈕,選擇加入目錄,此時播放器調(diào)用 adddirectory()函數(shù),打開加入目錄對話框:圖 4.6 “加入目錄”對話框adddirectory()函數(shù)代碼片段圖 4.7 加入目錄功能代碼.3 打開歌曲列表打開歌曲列表功能描述:此功能模塊實現(xiàn)通過一個對話框打開.mpl 播放列表。處理流程:運行單擊文件單擊打開列表選擇所需.mpl 文件單擊打開播放器顯示列表更新完成圖 4.8 “歌曲列表”功能流程圖流程描述:運行音樂播放器軟件,單擊打開列表功
38、能按鈕,彈出文件信息對話框。圖 4.9 文件信息對話框openplaylist()代碼片段圖 4.10 打開列表功能代碼.4 歌曲控制功能實現(xiàn)歌曲控制功能實現(xiàn)功能描述:此功能模塊實現(xiàn)對歌曲進行打開/播放、暫停、停止、上一首、下一首、順序播放、循環(huán)播放和隨機播放等控制。處理流程:圖 4.11“歌曲控制”功能流程圖運行單擊相應(yīng)的功能按鈕播放器完成相應(yīng)功能完成流程描述:圖 4.12 控制功能按鈕圖 4.13 模式功能演示圖部分代碼片段圖 4.14 模式功能代碼.5 音量控制功能實現(xiàn)音量控制功能實現(xiàn)功能描述:可以對當前正在播放的歌曲調(diào)節(jié)播放音量的大小,方便快捷的享受音樂
39、帶來的感動。處理流程: 圖 4.15 “音量控制”功能流程圖流程描述:運行音樂播放器軟件,單擊播放器右邊音量控制功能按鈕,左右拉動滑塊進行音量調(diào)節(jié),如圖所示。圖 4.16 音量控制功能演示圖.6 靜音設(shè)置功能實現(xiàn)靜音設(shè)置功能實現(xiàn)功能描述:此功能模塊實現(xiàn)對當前正在播放的歌曲直接進行靜音。處理流程:運行單擊音量控制按鈕左右滑動調(diào)節(jié)音量完成運行單擊靜音按鈕進行靜音/取消靜音完成圖 4.17 “靜音設(shè)置”功能流程圖流程描述:運行音樂播放軟件,單擊播放器中間的靜音按鈕,具體如圖所示。圖 4.18 靜音控制功能演示圖.7 播放進度條功能實現(xiàn)播放進度條功能實現(xiàn)功能描述:定點播放音樂文件處理流程:圖 4.19 定點播放功能流程圖流程描述:運行音樂播放器軟件,單擊播放器頂上進度條按鈕,左右拖動進度條按鈕實現(xiàn)定點播放,如圖所示。圖 4.20 進度條功能演示圖 運行單擊進度條按鈕左右拖動進度條按鈕可以實現(xiàn)定點播放完成5 總總 結(jié)結(jié) 通過三個月的努力,在老師和同學(xué)的幫助下順利完成基于 qt 的音頻管理系統(tǒng)。這個總結(jié),既為大學(xué)劃上一個完美的句號,也為將來的人生做了一個鋪墊。我選的題目是關(guān)于音樂播放器,之所以選這個為核心,是因為在大一的時候我就想做一個音樂播放器,現(xiàn)在也算是實現(xiàn)了一個小夢想。剛剛開始的時候,題目好定,但是內(nèi)容卻一再讓我陷入迷茫,不知如何下手,說起來容易,做
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國無阻力軸向補償器數(shù)據(jù)監(jiān)測研究報告
- 2025年中國數(shù)碼控制箱市場調(diào)查研究報告
- 2025-2030年中國亞氯酸鈉項目投資風(fēng)險研究報告
- 2025至2031年中國絨把手記數(shù)跳繩行業(yè)投資前景及策略咨詢研究報告
- 2025至2031年中國絕緣油介電強度自動測定儀行業(yè)投資前景及策略咨詢研究報告
- 小學(xué)一年級語文下冊《口語交際:一起做游戲》指導(dǎo)
- 新疆司法警官職業(yè)學(xué)院《畢業(yè)論文寫作與作品設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025-2030年中國4,4′行業(yè)運行態(tài)勢及投資風(fēng)險評估報告
- 新疆伊犁州2025年初三下學(xué)期第一次模擬考試語文試題試卷含解析
- 2025-2030年中國TETRA數(shù)字集群無線電系統(tǒng)行業(yè)發(fā)展現(xiàn)狀分析及投資前景預(yù)測研究報告
- 寶鋼熱鍍鋅鋼板產(chǎn)品手冊
- 成語故事-半途而廢-課件
- 中國傳統(tǒng)文化知到課后答案智慧樹章節(jié)測試答案2025年春杭州師范大學(xué)
- 物業(yè)撤場方案
- 2025年山西杏花村汾酒集團有限責(zé)任公司招聘筆試參考題庫含答案解析
- 石化石油行業(yè)安全
- 外研版(三起)(2024)三年級下冊英語Unit 4 單元測試卷(含答案)
- 《資治通鑒》與為將之道知到課后答案智慧樹章節(jié)測試答案2025年春武警指揮學(xué)院
- 哪吒2+deepseek爆火彰顯文化自信和科技創(chuàng)新
- 第九章-人類與自然地理環(huán)境.課件
- 課題申報書:產(chǎn)教融合視域下職業(yè)教育賦能新質(zhì)生產(chǎn)力的模型構(gòu)建和實現(xiàn)路徑研究
評論
0/150
提交評論