嵌入式GPS語(yǔ)音導(dǎo)航系統(tǒng)中 MP3的解碼與播放
0 引言
近年來(lái),電子技術(shù)的迅猛發(fā)展,使得嵌入式系統(tǒng)在越來(lái)越廣泛的領(lǐng)域得到應(yīng)用。嵌入式系統(tǒng)平臺(tái)的功能也越來(lái)越強(qiáng)大,復(fù)雜度也越來(lái)越高,同時(shí)對(duì)其開(kāi)發(fā)的難度和要求也越來(lái)越高。在開(kāi)發(fā)過(guò)程中需要將應(yīng)用軟件和系統(tǒng)軟件作為一個(gè)整體考慮,而且軟件和硬件的聯(lián)系也更加密切。所以,嵌入式系統(tǒng)的開(kāi)發(fā)是一個(gè)復(fù)雜的過(guò)程。隨著嵌入式系統(tǒng)性能的大幅度提高,老式的GPS導(dǎo)航儀已開(kāi)始向嵌入式方向發(fā)展。嵌入式GPs導(dǎo)航儀已越來(lái)越便攜,功能越來(lái)越強(qiáng)大,語(yǔ)音導(dǎo)航和媒體功能已成為嵌入式GPS導(dǎo)航儀的一大突出的亮點(diǎn)。所以,MP3音頻解碼與播放技術(shù)現(xiàn)已成為嵌入式GPS導(dǎo)航系統(tǒng)中的一項(xiàng)基本技術(shù)。MP3的全稱(chēng)是MPEG Audio Layer 3,是目前流行的一種音頻編碼方案。它是1992年制定的MPEG-1標(biāo)準(zhǔn)的一部分,MPEG標(biāo)準(zhǔn)由系統(tǒng)、視頻和伴音三部分組成。其中伴音標(biāo)準(zhǔn)共分三層,MP3作為其中的第三層,是運(yùn)算復(fù)雜度最高而壓縮效果最好的一層。比起傳統(tǒng)的CD格式來(lái),其音效已相差無(wú)幾,但數(shù)據(jù)量卻不及CD的十分之一。同時(shí),MP3播放器的便攜性和續(xù)航能力都比CD有大幅度的提高。MP3最初應(yīng)用于數(shù)字音頻廣播以及數(shù)字電視伴音等;之后,隨著其流行程度的提高,在其他場(chǎng)合,尤其是互聯(lián)網(wǎng)音樂(lè)和便攜式娛樂(lè)設(shè)備上也開(kāi)始大量使用MP3格式;現(xiàn)在,幾乎所有便攜式語(yǔ)音導(dǎo)航設(shè)備都采用MP3作為其音頻媒體格式。本文主要介紹了基于ARM核心的嵌入式GPS導(dǎo)航系統(tǒng)平臺(tái)下MP3音頻文件的解碼技術(shù)。以便利用自行設(shè)計(jì)的方案在Windows CE.NET系統(tǒng)下運(yùn)用三星公司S3C2410平臺(tái),從而實(shí)現(xiàn)MP3的解碼播放功能。
1 MP3解碼原理
1.1 MP3的文件格式
MP3文件由數(shù)量不等且相互獨(dú)立的幀(frame)組成,每個(gè)幀包含1152個(gè)采樣信息,一個(gè)MP3每幀包含幀頭、錯(cuò)誤校驗(yàn)、音頻數(shù)據(jù)和輔助數(shù)據(jù)四部分。圖1所示是MP3的幀結(jié)構(gòu)示意圖。MP3文件的最后128字節(jié)通常包含有ID3v1標(biāo)簽,并附加有用戶(hù)定制的文件附加內(nèi)容,如歌曲名稱(chēng)、演唱者、風(fēng)格說(shuō)明等。
1.2 MP3解碼流程
原始PCM(脈沖編碼調(diào)制)音頻數(shù)據(jù)在經(jīng)過(guò)壓縮編碼之后將得到MP3碼流,MP3解碼就是把MP3碼流恢復(fù)成原始的PCM數(shù)據(jù)。MP3數(shù)據(jù)以幀為單位,解碼應(yīng)首先根據(jù)同步信息及錯(cuò)誤校驗(yàn)CRC模塊找出MP3幀在碼流中的位置,并由此確定幀頭、CRC校驗(yàn)、音頻數(shù)據(jù)及輔助數(shù)據(jù)的所在位置。
圖2所示是MP3的解碼流程,它主要包括哈夫曼解碼、反量化、反重排序、立體聲解碼、混疊消除、IMDCT、頻率反轉(zhuǎn)補(bǔ)償、子帶合成濾波等。圖2中的預(yù)處理的作用是讀取頭部數(shù)據(jù)并將需要的信息按結(jié)構(gòu)存放起來(lái),以便后續(xù)解碼。
評(píng)論