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

正文內(nèi)容

畢業(yè)設(shè)計-mac平臺下mp3播放器的實現(xiàn)-免費閱讀

2025-01-02 17:25 上一頁面

下一頁面
  

【正文】 如果同時能夠?qū)崿F(xiàn)一些百度、 google 的音樂插件,直接在軟件里輸入歌曲或者歌手然后鏈接到百度或者 google,實現(xiàn)音樂的下載和播放就更加完美了。所有的編碼工作都是基于 Cocoa 框架利用 ObjectiveC 語言編寫的。 顯示歌曲信息的偽代碼如下: 28 void showInfo:( palylistEntry *) palyinfo { 讀取歌曲 artist、 album、 title、 genre、 year、 track、 albumArt 信息 。 = imageSize。 NSRect imageFrame。 此功能適合用于歌曲的列表條目比較多的時候, 方便查找。它還得管理菜單欄的兩個按鈕 ―Shuffle‖和 ―Repeat‖。 } 24 圖 4 3 播放控制 歌曲列表管理介紹 歌曲列表管理, 也是本次設(shè)計的核心模塊之一。 所用的控件是 如圖 43 紅色區(qū)域畫出的范圍就是播放控制所對應(yīng) 控制 的界面。 if ([bestType isEqualToString:NSFilenamesPboardType]) { NSMutableArray *urls = [[NSMutableArray alloc] init]。 甚至 可以通過連線直接把類里的方法和界面的按鈕聯(lián)系起來。里面包含了蘋果公司的開發(fā)文檔,開發(fā)人員可以隨時查閱這些文檔,由于在國內(nèi)關(guān)于蘋果方面的書籍很少,所以我們?nèi)粘5拈_發(fā)參考最多的也是蘋果公司提供的蘋果開發(fā)文檔。 如圖 35 紅色方框標(biāo)記的,這個是我們在設(shè)計時添加的一個 ImageCell 控件,該控件用來顯示我們繪制或者指定的圖片。 要實現(xiàn)同時顯示系統(tǒng)的文件夾圖標(biāo),就要實現(xiàn)重繪 Cell 的方法。 底層支持 模塊又底層開發(fā)團隊提供,實現(xiàn)的功能為 : 實現(xiàn) mp3 文件的編解碼 。 Kbps(比特位速率),表明了音樂每秒的數(shù)據(jù)量, Kbps 值越高,音質(zhì)越好,文件也越大, MP3 標(biāo)準(zhǔn)規(guī)定,不變的 bitrate 的 MP3 文件稱作 CBR,大多數(shù) MP3 文件都是 CBR 的,而變化的 bitrate 的 MP3 文件稱作 VBR,每個FRAME 的長度都可能是變化的。 MPEG 音頻編碼的層次越高,編碼器越復(fù)雜,壓縮率也越高, MP1 和 MP2 的壓縮率分別為 4:1 和 6:1 到 8:1,而 MP3 的壓縮率則高達 10:1 到 12:1,也就是說,一分鐘 CD 音質(zhì)的音樂,未經(jīng)壓縮需要 10MB 的存儲空間,而經(jīng)過 MP3 壓14 縮編碼后只有 1MB 左右。每次指定的觀察對象的屬性發(fā)生變化的時候, KVO 都會自動的去通知相應(yīng)的觀察者。 Delegate delegate 是 Cocoa 中廣泛使用的模式,它意味著無需創(chuàng)建自定義子類就可以修改對象的行為。 cocoa 里的 MVC 設(shè)計模式和一般的 MVC 設(shè)計模式又有點區(qū)別:在視圖和模型之間少了一個連接的關(guān)系,具體如圖 22: 圖 22 MVC 設(shè)計模式圖 控制器 模型 視圖 12 系統(tǒng)實現(xiàn) 關(guān)鍵點 Notification 每個運行的程序都有一個 NSNotificatinCenter 的成員變量,它的功能類似于公告欄。 它是一個高度面向?qū)ο蟮模?Object Oriented)開發(fā)框架。 另外一些則源于 Mac OS X 的內(nèi)核 BSD Unix系統(tǒng)。 (void) setDenominator: (int) d。并且在自己的類之間盡量使用低耦合的聯(lián)合依賴關(guān)系,而少用高聚合的繼承關(guān)系 ,增強模塊之間的獨立性。而 ObjectiveC 正是通過從 Smalltalk進化而來的這種語法,實現(xiàn)了對這個面向?qū)ο髮拥闹С帧? 第 2 章,討論本系統(tǒng)實現(xiàn)的關(guān)鍵技術(shù) 。除了 Xcode, Mac OS X 也提供您一整套開源的解決方案,比如 GNU Compiler Collection(GCC)。 Mac OS X 目前最新的版本是 ,它作為一款先進的操作系統(tǒng)是基于穩(wěn)定的 Unix內(nèi)核而構(gòu)建起來的。 如 表 1 就是 Mac OS X 和 windows 的一些主要差別。它的 GUI 環(huán)境( Aqua)就完全不是一般 Linux/FreeBSD所使用的 X11。有相當(dāng)多 Mac 軟件開發(fā)者喜歡在 UNIX shell 下工作,使用各種 UNIX 工具。 1998 年,蘋果以 iMac 實現(xiàn)了 公司復(fù)興 , 2021 年 iPod 誕生,改變了 MP3 播放器的時代。 Mac OS X 也在這十年之間陸續(xù)推出了 8 個版本。 此時 蘋果才開始慢慢的開啟了它的另外一個時代。它的最底層建基于Unix基礎(chǔ),其代碼被稱為 Darwin,實行的是部分開放源代碼。如果是更高流量如 160kb/s以上的 MP3 音頻,則可以對立體聲的兩個聲道獨立編碼,以保存相位信息。 VBR 指文件每秒的信息流量可以變化,其優(yōu)點是在信號復(fù)雜時用較多的容量記錄,信號簡單時用較少的容量記錄以有效利 用空間。早期的 MP3 編碼采用的是固定編碼率的方式( CBR ),我們常看到的 128KBPS,就是代表它是以 128KBPS固定數(shù)據(jù)速率編碼 ——可以提高這個編碼率,最高可以到 320KBPS,音質(zhì)會更好,自然,文件的體積會相應(yīng)增大。 ‖一年之后,布蘭登堡成功地將一首《騎兵進行曲》的 CD 音樂壓縮到原來的五分之一,但由于電腦速度 過慢,無法正常解碼。 關(guān)鍵字 : 蘋果 平臺 , MP3 播放器 , Cocoa V Abstract Along with Apple rise again, in the Mac application development platform to do it again hot, the system is developed in this context. The system is developed under the Mac platform, music player system that can achieve the daily needs of MP3 players. System development is based on Mac OS X39。 界面要求簡潔,界面的 菜單提示必須都是蘋果風(fēng)格的,色彩不要 過于豐富。 系統(tǒng)的開發(fā)是基于 Mac OS X 的 Cocoa 框架技術(shù),使用的開發(fā)語言是ObjectiveC。 本系統(tǒng)的開發(fā) , 設(shè)計是基礎(chǔ) , 功能是重點 。 1986 年,德國人卡爾因茨 1993 年, MP3 技術(shù)又得到國際標(biāo)準(zhǔn)組織(ISO)認可,從而成為主流音頻格式。 掩蔽效應(yīng)是 一種心理聲學(xué)模型,在聽覺上表現(xiàn)為有一個音量或音色特別突出的聲音出現(xiàn)時,其它細小的聲音會變得難以被察覺,因而沒有必要對所有的聲音細節(jié)都進行編碼,而只需對容易引起注意的聲音編碼。 M/S 常被用于左右聲道大體相似的情況,先將左右聲道相加 (L+R)得到一個聲道,再將左右聲道相減 (LR)得到另一個聲道,然后將這兩個聲道信息通過心理聲學(xué)模型和濾波器處理。 Mac OS 可以被分成操作系統(tǒng)的兩個系列:一個是老舊且已不被支持的―Classic‖Mac OS(系統(tǒng)搭載在 1984 年銷售的首部 Mac 與其后代上,終極版本是Mac OS 9)。 System 是在 1985 年的 4 月發(fā)布的, 只是 的一個更新而已,沒什么太大的變化 。大大改進內(nèi)存管理,允許同時運行更多軟件,而且實質(zhì)上消除了一個程序崩潰導(dǎo)致其它程序崩潰的可能性。 它開始為用戶創(chuàng)造著需求,讓我們明白原來可以用這個產(chǎn)品干這樣的事情,原來產(chǎn)品可以這樣用。 Windows 和 Mac OS X 都屬于現(xiàn)代的操作系統(tǒng),所以 Windows 在操作系統(tǒng)層級所提供的功能 ──執(zhí)行 文件與鏈接庫加載、多任務(wù)與多線程、內(nèi)存管理等 在Mac OS X 上都找得到對等的 API 和作法。雖然 Apple 有自己的開發(fā)環(huán)境 Xcode,但是底層采用 GCC 這件事對開發(fā)者來說是相當(dāng)重要的。Mac OS X 上最常見的 bundle 要屬 .app 結(jié)尾的應(yīng)用程序了。 蘋果 公司的網(wǎng)上應(yīng)用商店 App Store 的軟件產(chǎn)品更加是琳瑯滿目,上面有很多都是蘋果發(fā)燒友開發(fā)的應(yīng)用,為大家提供方便和更多的選擇。比如: Cocoa 和 Java 分別使用 ObjectiveC 和 Java 語言提供面向?qū)ο蟮拈_發(fā)環(huán)境,而 Carbon 提供基于 C/C++語言的開發(fā)環(huán)境。 本地音樂管理包括:瀏覽本地文件夾,添加本地音樂到播放列表;播放控制包括:音樂的播放、音樂的暫停,播放模式控制,上一首、下一 首控制,歌曲音量調(diào)節(jié);歌曲列表管理管理包括:顯示選中的歌曲,顯示 正在播放的歌曲,歌曲列表的排序,歌曲隊列的添加;歌曲信息管理 只用來管理 歌曲的詳細信息,例如:藝術(shù)家、歌曲時長、專輯信息、碼率、音軌 等。 ObjectiveC 的運行環(huán)境庫( Runtime Library)完全是由 C 編寫的,因此任何一個 ObjectiveC 消息派發(fā)( Message Dispatching),都會被替換成 ObjectiveC 運行環(huán)境中的某個或某幾個 C 函數(shù)的調(diào)用。亦與C++不同,但和 Java 相同, ObjectiveC 只容許對象繼承一個類別(不設(shè)多重繼承)。 int denominator。 … end Cocoa框架技術(shù)介紹 Cocoa 為創(chuàng)建應(yīng)用程序提供了一個功能豐富的支撐層。 AppKit 提供的類用于管理視圖,窗口,文檔 ,文本, 圖像,顏色 等。 MVC 范例適用于很多應(yīng)用程序,因為控制器在中間的協(xié)調(diào)角色使模型對象無需知道界面的 狀態(tài)和事件。收到通知的對象沒有機會建議是否要執(zhí)行動作,而且對象的通知可以有多個監(jiān)聽者。 KVC和 KVO KVC 是一種通過變量名來讀取及設(shè)置 變量的方法。使用 categories 增加了程序的靈活性。 Frame 包括一系列的幀,個數(shù)由文件大小和幀長決定 。 播放控制 模塊是本系統(tǒng)的核心模塊之一,實現(xiàn)的功能是: 音樂的播放 , 音樂暫停 , 播放模式控制 , 上一首、下一首控制 , 歌曲音量調(diào)節(jié) 。所以outlineView 的顯示數(shù)據(jù)都需要我們自己去組織提供。 ImageCell 的 重繪 Cocoa 中,系統(tǒng)的控件一般是由 control 和 cell 構(gòu)成的, control 控制控件 響應(yīng)系統(tǒng)事件 ,例如單擊等,而 cell 控制控件的外觀。并且 安裝有 Mac OS X Snow Leopard(雪豹) 操作系統(tǒng) 。 圖 37 Xcode 打開 工程 以上 圖 37 就是在 Xcode 打開一個已經(jīng)存在的工程,左邊是 ―分組和文件列表 ‖,右邊是書寫代碼的窗口,菜單欄是構(gòu)建控制常用的一些按鈕,這些按鈕可以自己添加。 實現(xiàn)打開系統(tǒng)文件夾的偽代碼如下: BOOL FileTree { if(是根節(jié)點) return true; else { if(選中節(jié)點有子節(jié)點?) 統(tǒng)計子節(jié)點個數(shù); 顯示選中節(jié)點得所有 的 子節(jié)點; return true; if (是葉子節(jié)點?) return false; } } 實現(xiàn)添加音樂 拖放 到播放列表的 核心 代碼如下: (BOOL)tableView:(NSTableView*)tv acceptDrop:(id NSDraggingInfo)info row:(int)row dropOperation:(NSTableViewDropOperation)op { NSArray *supported = [NSArray arrayWithObjects:CogUrlsPboardType, NSFilenamesPboardType, iTunesDropType, nil]。 具體流程如 圖 42 所示 : 23 圖 4 2 播放控制流程圖 點擊 ―上一首 ‖和 ―下一首 ‖按鈕還可以順序的選擇播放的歌曲。 newVolume = [audioPlayer volumeUp: VOLUME_UP]。 為了方便編程,減少代碼的書寫量,我們利用了 Cocoa 特有的 綁定 技術(shù),把列表里的每一列和我們 palylistEntry類里的變量綁定起 來。歌曲就會從播放列表里刪除。核心代碼如 下所示 。 if ([self drawsBackground]) { [[self backgroundColor] set]。 } 歌曲信息管理介紹 歌曲的信息管理就是能夠讓我們看到歌曲的詳細信息,包括歌曲名、藝術(shù)家、專輯、 時間長度、碼率、 音軌 、專輯圖片 等歌曲的具體信息。 } 29 結(jié)束語 本系統(tǒng)的開發(fā)遵循的就是 MVC 的設(shè)計模式,使用這個設(shè)計模式,可以實現(xiàn)視圖和數(shù)據(jù)的分離,從而可以使程序的模塊化更強,便于移植。 (2) 軟件的搜
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1