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

正文內(nèi)容

基于linux的音樂播放器設(shè)計與實現(xiàn)論文-全文預(yù)覽

2025-09-22 15:25 上一頁面

下一頁面
  

【正文】 ,然后是:播 放時間、播放進度條和歌曲長度,最下面是 添加文件后的 播放列表。 parenttrayIconsetIcon(icon)。 parenttrayIconMenu = new QMenu(parent)。 24 4 系統(tǒng)測試 測試介紹 軟件測試的經(jīng)典定義是:在規(guī)定的條件下對程序進行操作,以發(fā)現(xiàn)程序錯誤,衡量軟件品質(zhì),并對其是否能滿足設(shè)計要求進行評估的過程。 隨后的工作則會伴隨著軟件開發(fā)的過程逐步展開 [16]。 總體來說,軟件測試的目標是,以最小的工作量和成本盡可能多的發(fā)現(xiàn)軟件系統(tǒng)中的潛在的各種錯誤和缺陷,以保證軟件系統(tǒng)的正確性和可靠性 [17]。測試案例是依應(yīng)用系統(tǒng)應(yīng)該做的功能,照規(guī)范、規(guī)格。 黑箱測試: 主要用于 測試應(yīng)用程式的功能,而不是其內(nèi)部結(jié)構(gòu)或運作。 (2) 好的測試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯誤的測試方案 。在一般情況下,軟件測試過程與 整個軟件開發(fā)過程基 本上是平行進行的。 運行 后 右 擊 托 盤圖標彈 出 菜 單 包含五個選項。 parenttrayIconshow()。 parentsetWindowIcon(icon)。 pauseIcon = QIcon(skinPath+“”)。如 圖 38 所示 : 圖 38 打開文件路徑存儲亂碼 在 Default open path 中,路徑為: /media/E/音樂,但是當寫入 的defaultOpenDir 時,出現(xiàn)了明顯的亂碼現(xiàn)象。 QString defaultOpenDir=QFileDialog::getExistingDirectory(this,Select the default file 22 directory),oldOpenDir)。 首先初始化 QSettings 指針變量 : QSettings *musicSettings = new QSettings(“./config/”,QSettings::IniFormat)。 fileName,Format format, QObject * parent= 0)。此時系統(tǒng)將修改配置文件。 } } 這樣當用戶在雙擊系統(tǒng)托盤圖標后,就會實現(xiàn)最小化和還原。 void MainWindow::iconActivated(QSystemTrayIcon::ActivationReason reason) { switch (reason) { 20 case QSystemTrayIcon::DoubleClick: if(thisisHidden()) { thisshowNormal()。 void MainWindow::doubleClicked(int row, int ) { mediaObjectsetCurrentSource(sourceList[row])。 mediaObjectsetQueue(sourceList)。 (7) 打 開 文件 在播放器啟動后,播放器的播放列表默認是空的,需要用戶手動添加播放列表,此時用戶可以通過打開按鈕,彈出打開系統(tǒng)默認的打開 文件對話框選擇歌曲文件。 mediaObjectstop()。 mediaObjectsetCurrentSource((index))。 (4) 下一首 如果用戶點擊下一首按鈕,系統(tǒng)會判斷當前播放項是否是列表最后一項,如果是,同時允許循環(huán)播放,會跳轉(zhuǎn)到第一首,如果不是 則 會提示用戶。 } 18 (2) 暫停 當播放器處于播放狀態(tài)是,想暫停播放歌曲,可以點擊 暫停按鍵時 ,這時將暫停播放,再次點擊此按鍵,將繼續(xù)從當前歌曲暫停處播放。 QTime totalTime(0,(temp / 60000) % 60,(temp / 1000) % 60)。 顯示歌 曲長度, mediaObject 在播放過程中發(fā)出 tick( qint64)信號 ,將 mediaObject的 tick( qint64)信號和自定義槽 showTime(qint64)關(guān)聯(lián)。 volumeSlidershow()。 將 媒體對象( mediaObject) 和 音頻輸 出設(shè)備( audioOutput)使用函數(shù) Phon on::createPath()連接起來 : Phonon::createPath(mediaObject, audioOutput)。 建立媒體對象 首先實例化使用 的 Phonon 類: mediaObject =new Phonon::MediaObject(this)。元素個數(shù)小于 1000的 QList能夠很快地實現(xiàn)在鏈表中間插入操作,以及快速的查找操作。 Qlist 容器類 QList 不是 Phonon 的 類 成員,而是 Qt 的一個類庫,它是一種表示鏈表的模板類 。 seekSlider show()。 (4) Phonon::SeekSlider class SeekSlider 類別提供一個可滑動的 slider 來設(shè)定多媒體串流播放的位置。 用法: AudioOutput *audioOutput=new AudioOutput(Phonon::MusicCategory, this)。所以它能夠經(jīng)由類似喇叭等輸出裝置來播放聲音,多媒體資料的來源必須要經(jīng)過 Phonon::createPath()與MediaObject 連接。 ○ 2 VideoWidget-影像播放 。后端可以是任何形式,只要你寫出了相應(yīng)的后端插件。 Phonon 其實什么都不干,他只是提供了一套 API 接口,這套接口可以給你的程序調(diào)用,同時也是給編寫后端插14 件提供一個規(guī)范。Sink 是 輸出多媒體, 通常 是一個播放的裝置 ( 如 聲 卡 ),且 只接受 MediaObject 來的 數(shù)據(jù)。相對于信號與槽帶來的靈活與簡便,這點性能損失是可以接受的。與 callback 相比較,信號與槽有些慢。即使關(guān)聯(lián)的對象在運行時被刪除,應(yīng)用程序也不會出現(xiàn)崩潰。 Qt 信號和槽機制減弱了 Qt 對象的耦合度。信號和其接受的槽之間傳遞的資料型態(tài)必須要相符合,需要關(guān)聯(lián)的信號和槽的簽名必須是等同的,即信號的參數(shù)類型和參數(shù)個數(shù)與接12 受該信號的槽的參數(shù)類型和參數(shù)個數(shù)相同;不過,一個槽的參數(shù)個數(shù)是可以少于信號的參數(shù)個數(shù),但缺少的參數(shù)必須是信號參數(shù)的最后一個或幾個參數(shù)。同時,信號和槽機制是完全和 GUI 事件完全獨立的,槽函數(shù)獨立循環(huán)。信號與槽的關(guān)聯(lián)關(guān)系有以下幾種模式: (1) 一個信號和槽關(guān)聯(lián) 。 信號與槽的關(guān)聯(lián) 信號是一個特定的標識,槽就是一個函數(shù),卻與一般函數(shù)不同,槽函數(shù)能和信號關(guān)聯(lián),也能夠被直接調(diào)用。 void mySlot(int x)。這適用于聯(lián)系非常緊密的類。 在這個區(qū)內(nèi)聲 明的槽意味著當前類及其子類可以將信號與之相連接。 (1) public slots 類型。槽可以有參數(shù),但槽的參數(shù)不能有缺省值。 另外,信號的返回類型都是 void,不要指望能從信號返回什么有用信息。 void mySignal(int x)。只有當所有的槽返回以后發(fā)射函數(shù) emit()才返回。 信號 當某個信號對其客戶或所有者發(fā)生的內(nèi)部狀態(tài)發(fā)生改變,信號被一個對象發(fā)射。一個槽并不知道是否有任何信號與自己相連接。 所有從 QObject 或其子類 (例如 Qwidget) 派生的類都能夠包含信號和槽。信號和槽是 QT 自行定義的一種通信機制,它獨立于標準的 C/C++ 語言,因此要正確的處理信號和 槽,必須借助一個稱為 moc( Meta Object Compiler)的 QT 工具,該工具是一個 C++ 預(yù)處理程序,它為高層次的事件處理自動生成所需要的附加代碼 [9]。在程序開發(fā)中,經(jīng)常使用回調(diào)( callback)機制來實現(xiàn)。 (6) 音樂播放器的控制設(shè)置功能 。 (2) 滾動顯示正在播放的歌曲及其長度信息 。 主要研究內(nèi)容包括以下幾個方面 : (1) 查找相關(guān)書籍與文獻 , 了解 LINUX 的構(gòu)架并搭建 LINUX 平臺 。 資源獲取途徑方面,本 播放器 可以不受限制地獲取本地 計算機上的所有資源,同時8 資源獲取方便快捷。由于 Qt 和 Phonon 都具有跨平臺的特性,使用 Qt 開發(fā)的軟件,相同的程序代碼可以在任何 支持 的平臺上編譯與執(zhí)行,而不需要修改源代碼。同時在 Linux 下使用 Qt 的集成開發(fā)環(huán)境 Qt Creator 與在 windows 平臺下沒有太大差別。 本系統(tǒng)采用 Qt 開源版, 不需要任何費用。它們提供傳 統(tǒng)商業(yè)軟件發(fā)行版并且提供在協(xié)議有效期內(nèi)的免費升級和技術(shù)支持 服務(wù) 。 可行性分析 對于基于 Linux 的音樂播放器的設(shè)計與實現(xiàn)的可行性, 本文 將從 經(jīng)濟、技術(shù)和應(yīng)用7 三 方面進行分析。本文也根據(jù)需要設(shè)置了相關(guān)的快捷鍵,實現(xiàn)對播放器的控制。 播放器 還有一些其他的功能,如:雙擊播放器列表實現(xiàn)文件的播放,系統(tǒng)關(guān)閉提示,最小化到系統(tǒng)托盤,鼠標拖動窗口等。同時,在用戶使用播放器的過程中,能夠打開本地音頻文件,將文件動態(tài)的添加到播放器當前播放列表,實現(xiàn)文件的打開操作 [8]。 功能 需求分析 音樂播放器作為一款必不可少的應(yīng)用程序,廣泛應(yīng)用于 電腦、智能手機、嵌入式設(shè)備 , 有著龐大的客戶人群。 雖 然 Linux上的音樂播放軟件并不缺 乏,但是很多的軟件技術(shù)層面并不是非常超前,只是簡簡單單,一切都 由 插件搞定,只是靠它整合的完整性讓人簡簡單單完成音樂播放的任務(wù)。但似乎它不能直接讀取 windows 分區(qū)里的音樂文件,如果音樂都在 NTFS 分區(qū)里,會給用戶帶來不少不便。 另外, Windows 有千千靜聽、 音樂、酷狗音樂等優(yōu)秀播放器,功能十分完善,界面十分華麗,設(shè)計人性化,操作靈活、簡單,種類十分豐富。使用 Solid, Phonon 將給予用戶更多配件的控制能力如耳機、揚聲器、麥克風。正是由于 Phonon 能夠?qū)崿F(xiàn)跨平臺使用,使得 和之后版本使用了 Phonon,作為跨平臺的音頻 和 視頻 播放。 集成了特定于 Qt 的功能,如信號與槽 (Signals/Slots)圖示調(diào)試器 , 對 Qt 類結(jié)構(gòu)可一目了然集成了 Qt Designer 可視化布局和格式構(gòu)建器只需單擊一下就可生成和運行 Qt 項目 。 語法標識和代碼完成功能輸入時進行靜態(tài)代碼檢驗以及提示樣式上下文相關(guān)的幫助代碼折疊括號匹配和括號選擇模式高級編輯功能 。從原始碼編譯時,也4 可以使用 cdb(Microsoft Console Debugger)。這個編輯器的功能包括語法高亮度顯示和自動完成。此 IDE 能夠跨平臺運行,支持在桌面環(huán)境 ,如: Windows、Linux/X11 和 Mac OS。 (2) 豐富的 API。除了 C++外, Qt 還為其它多種計算機語言提供了應(yīng)用程序接口,您也可以使用這些語言開發(fā) Qt 應(yīng)用程序 [6]。 Qt 是自由且開放源代碼的軟件,在 GNU 較寬松公共許可證條款下發(fā)布。 Qt 被OPIE、 Skype、 VLC media player、 Adobe Photoshop、 VirtualBox 與 Mathematica 所使用。將外部設(shè)備統(tǒng)一視為文件,只要安裝它們的驅(qū)動程序,任何用戶都可以像使用文件一樣操縱、使用設(shè)備,而不必知道它們的具體存在形式。系統(tǒng)資源可以被不同用戶各自擁有和使用,即每個用戶對自己的資源有特定權(quán)限,互不影響。 Linux 發(fā)展非常迅速,這與它具有的良好特性是分不開的。近年來,特別在國內(nèi)市場, Linux 桌面的發(fā)展趨勢非常迅猛。通常情況下, Linux 被打包成供桌上型電腦和服務(wù)器使用的 Linux 發(fā)行版本。 Linux 是一個領(lǐng)先的操作系統(tǒng), 在 2020 年 11 月發(fā)布的 TOP500 中有 %的超級計算機使用的是Linux 操作系統(tǒng) [1]。 它 在穩(wěn)定性、視覺效果、歌曲庫的大小等方面可能遠不如當今的 許多 播放軟件,但是它小巧 并且易移植, 能夠?qū)崿F(xiàn)跨平臺運行 。雖然 Linux和 Qt已經(jīng)發(fā)展了很長 的一段時間,但是對于很多國內(nèi)計算機專業(yè)的大學生來說, 它們 還是比較陌生的事物。 本文主要研究的 就是 基于 Linux 的音樂播放器 。音樂播放器 作為 一種用于播放各種音樂文件的多媒體播放軟件 , 已經(jīng)成為了 大家電腦里面不可或缺的一項應(yīng)用。 Linux。 function, 39。 function, 39。 function, 39。 function, 39。s lives, music player plays an irreplaceable role in people39。本播放器 實現(xiàn)了 音樂播放器的基本功能,包括 “ 播放 ” 、 “ 暫停 ” 、 “ 上一曲 ” 、 “ 下一曲 ” 、 “ 添加文件 ” 、 “ 刪除文件 ” 、 “ 切換背景圖標 ” 、 “ 最小化到托盤 ” 等 功能 。本播放器 在 Linux(Debian )操作系統(tǒng)平臺下進行開發(fā),使用 Qt 程序開發(fā)框架實現(xiàn)播放器的 GUI 設(shè)計,并用 Phonon 多媒體 API 實現(xiàn)多媒體控制,最后再 用 C++編程 實現(xiàn)。 關(guān)鍵詞: 音樂播放器 ; Linux; Qt;
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1