新聞中心
前言
本篇開始講解在Android平臺上進行的音頻編輯開發(fā),首先需要對音頻相關概念有基礎的認識。所以本篇要講解以下內(nèi)容:
1. 常用音頻格式簡介
2. WAV和PCM的區(qū)別和聯(lián)系
3. WAV文件頭信息
4. 采樣率簡介
5. 聲道數(shù)和采樣位數(shù)下的PCM編碼
6. 音頻文件解碼
7. PCM文件轉(zhuǎn)WAV文件
現(xiàn)在先給出音頻編輯的效果圖,看看能不能提高大家的積極性~,哈哈
常用音頻格式簡介
在Android平臺上進行音頻開發(fā),首先需要對常用的音頻格式有個大致的了解。在Android平臺上,常用的音頻格式有:
- WAV
WAV格式是微軟公司開發(fā)的一種聲音文件格式,也叫波形聲音文件,是最早的數(shù)字音頻格式,被Windows平臺及其應用程序廣泛支持。
WAV格式支持許多壓縮算法,支持多種音頻位數(shù)、采樣頻率和聲道,采用44.1kHz的采樣頻率,16位量化位數(shù),因此WAV的音質(zhì)與CD相差無幾,但WAV格式對存儲空間需求太大不便于交流和傳播。
補充:無損格式,缺點:體積十分大!
- MP3
MP3的全稱是Moving Picture Experts Group Audio Layer III。簡單的說,MP3就是一種音頻壓縮技術,由于這種壓縮方式的全稱叫MPEG Audio Layer3,所以人們把它簡稱為MP3。
MP3是利用 MPEG Audio Layer 3 的技術,將音樂以1:10 甚至 1:12 的壓縮率,壓縮成容量較小的file,換句話說,能夠在音質(zhì)丟失很小的情況下把文件壓縮到更小的程度。而且還非常好的保持了原來的音質(zhì)。
正是因為MP3體積小,音質(zhì)高的特點使得MP3格式幾乎成為網(wǎng)上音樂的代名詞。每分鐘音樂的MP3格式只有1MB左右大小,這樣每首歌的大小只有3-4MB。使用MP3播放器對MP3文件進行實時的解壓縮(解碼),這樣,高品質(zhì)的MP3音樂就播放出來了。
補充:最高比特率320K,高頻部分一刀切是他的缺點。音質(zhì)不高!
- AMR
全稱Adaptive Multi-Rate 和 Adaptive Multi-Rate Wideband,主要用于移動設備的音頻,壓縮比比較大,但相對其他的壓縮格式質(zhì)量比較差,多用于人聲,通話,效果還是很不錯的。
- Ogg
Ogg全稱應該是OGG Vobis(ogg Vorbis) 是一種新的音頻壓縮格式,類似于MP3等現(xiàn)有的音樂格式。
但有一點不同的是,它是完全免費、開放和沒有專利限制的。OGG Vobis有一個很出眾的特點,就是支持多聲道,隨著它的流行,以后用隨身聽來聽DTS編碼的多聲道作品將不會是夢想。
Vorbis 是這種音頻壓縮機制的名字,而Ogg則是一個計劃的名字,該計劃意圖設計一個完全開放性的多媒體系統(tǒng)。目前該計劃只實現(xiàn)了OggVorbis這一部分。
Ogg Vorbis文件的擴展名是.OGG。這種文件的設計格式是非常先進的。現(xiàn)在創(chuàng)建的OGG文件可以在未來的任何播放器上播放,因此,這種文件格式可以不斷地進行大小和音質(zhì)的改良,而不影響舊有的編碼器或播放器。
補充:目前最好的有損格式之一,MP3部分支持,智能手機裝軟件部分可以支持,最高比特率500kbps。
- AAC
AAC(Advanced Audio Coding),中文稱為“高級音頻編碼”,出現(xiàn)于1997年,基于 MPEG-2的音頻編碼技術。
優(yōu)點:相對于mp3,AAC格式的音質(zhì)更佳,文件更小。
不足:AAC屬于有損壓縮的格式,與時下流行的APE、FLAC等無損格式相比音質(zhì)存在“本質(zhì)上”的差距。加之,目前傳輸速度更快的USB3.0和16G以上大容量MP3正在加速普及,也使得AAC頭上“小巧”的光環(huán)不復存在了。
前景:以發(fā)展的眼光來看,正如“高清”正在被越來越多的人所接受一樣,“無損”必定是未來音樂格式的絕對主流。AAC這種“有損”格式的前景不容樂觀
- FLAC
FLAC即是Free Lossless Audio Codec的縮寫,中文可解為無損音頻壓縮編碼。
FLAC是一套著名的自由音頻壓縮編碼,其特點是無損壓縮。不同于其他有損壓縮編碼如MP3 及 AAC,它不會破任何原有的音頻資訊,所以可以還原音樂光盤音質(zhì)。現(xiàn)在它已被很多軟件及硬件音頻產(chǎn)品所支持。簡而言之,F(xiàn)LAC與MP3相仿,但是是無損壓縮的,也就是說音頻以FLAC方式壓縮不會丟失任何信息。這種壓縮與Zip的方式類似,但是FLAC將給你更大的壓縮比率,因為FLAC是專門針對音頻的特點設計的壓縮方式,并且你可以使用播放器播放FLAC壓縮的文件,就象通常播放你的MP3文件一樣。
補充:為無損格式,較ape而言,他體積大點,但是兼容性好,編碼速度快,播放器支持更廣。
WAV和PCM的區(qū)別和聯(lián)系
在Android平臺上要進行音頻編輯操作(比如裁剪,插入,合成等),通常都是需要將音頻文件解碼為WAV格式的音頻文件或者PCM文件。那么WAV和PCM之間有什么關系,這里有必要了解一下。
PCM(Pulse Code Modulation—-脈碼調(diào)制錄音)。所謂PCM錄音就是將聲音等模擬信號變成符號化的脈沖列,再予以記錄。PCM信號是由[1]、[0]等符號構成的數(shù)字信號,而未經(jīng)過任何編碼和壓縮處理。與模擬信號比,它不易受傳送系統(tǒng)的雜波及失真的影響。動態(tài)范圍寬,可得到音質(zhì)相當好的影響效果。也就是說,PCM就是沒有壓縮的編碼方式,PCM文件就是采用PCM這種沒有壓縮的編碼方式編碼的音頻數(shù)據(jù)文件。
WAV是由微軟開發(fā)的一種音頻格式。WAV符合 PIFF Resource Interchange File Format規(guī)范。所有的WAV都有一個文件頭,這個文件頭音頻流的編碼參數(shù)。WAV對音頻流的編碼沒有硬性規(guī)定,除了PCM之外,還有幾乎所有支持ACM規(guī)范的編碼都可以為WAV的音頻流進行編碼。WAV也可以使用多種音頻編碼來壓縮其音頻流,不過我們常見的都是音頻流被PCM編碼處理的WAV,但這不表示W(wǎng)AV只能使用PCM編碼,MP3編碼同樣也可以運用在WAV中,和AVI一樣,只要安裝好了相應的Decode,就可以欣賞這些WAV了。
在Windows平臺下,基于PCM編碼的WAV是被支持得最好的音頻格式,所有音頻軟件都能完美支持,由于本身可以達到較高的音質(zhì)的要求,因此,WAV也是音樂編輯創(chuàng)作的選格式,適合保存音樂素材。因此,基于PCM編碼的WAV被作為了一種中介的格式,常常使用在其他編碼的相互轉(zhuǎn)換之中,例如MP3轉(zhuǎn)換成WMA。
如上引用的描述,也就是說我們對音頻進行編輯操作,其實就是音頻解碼后的PCM音頻采樣數(shù)據(jù)進行操作,因為PCM記錄的就是采樣后的音頻信息,而我們常說的WAV文件是在PCM數(shù)據(jù)的基礎上添加一組頭信息,用于描述這個WAV文件的采樣率,聲道數(shù),采樣位數(shù),音頻數(shù)據(jù)大小等信息,這樣這個WAV就可以被音頻播放器正確讀取并播放,而單純的PCM文件因為只有編碼的音頻數(shù)據(jù),沒有其他描述信息,所以無法被音頻播放器識別播放。
WAV文件頭信息
接下來有必要了解一下WAV文件頭信息是什么樣的格式信息。
WAV文件頭信息由大小44個字節(jié)的數(shù)據(jù)組成:
4字節(jié)數(shù)據(jù),內(nèi)容為“RIFF”,表示資源交換文件標識
4字節(jié)數(shù)據(jù),內(nèi)容為一個整數(shù),表示從下個地址開始到文件尾的總字節(jié)數(shù)
4字節(jié)數(shù)據(jù),內(nèi)容為“WAVE”,表示W(wǎng)AV文件標識
4字節(jié)數(shù)據(jù),內(nèi)容為“fmt ”,表示波形格式標識(fmt ),最后一位空格。
4字節(jié)數(shù)據(jù),內(nèi)容為一個整數(shù),表示PCMWAVEFORMAT的長度
2字節(jié)數(shù)據(jù),內(nèi)容為一個短整數(shù),表示格式種類(值為1時,表示數(shù)據(jù)為線性PCM編碼)
2字節(jié)數(shù)據(jù),內(nèi)容為一個短整數(shù),表示通道數(shù),單聲道為1,雙聲道為2
4字節(jié)數(shù)據(jù),內(nèi)容為一個整數(shù),表示采樣率,比如44100
4字節(jié)數(shù)據(jù),內(nèi)容為一個整數(shù),表示波形數(shù)據(jù)傳輸速率(每秒平均字節(jié)數(shù)),大小為 采樣率 * 通道數(shù) * 采樣位數(shù)
2字節(jié)數(shù)據(jù),內(nèi)容為一個短整數(shù),表示DATA數(shù)據(jù)塊長度,大小為 通道數(shù) * 采樣位數(shù)
2字節(jié)數(shù)據(jù),內(nèi)容為一個短整數(shù),表示采樣位數(shù),即PCM位寬,通常為8位或16位
4字節(jié)數(shù)據(jù),內(nèi)容為“data”,表示數(shù)據(jù)標記符
4字節(jié)數(shù)據(jù),內(nèi)容為一個整數(shù),表示接下來聲音數(shù)據(jù)的總大小
由以上信息可知,對于一個PCM文件來說,只要知道它的大小,采樣率,聲道數(shù),采樣位數(shù),就可以通過添加一個WAV文件頭得到一個WAV文件了。
采樣率簡介
那么采樣率是什么意思,我們來了解下。
音頻采樣率是指錄音設備在一秒鐘內(nèi)對聲音信號的采樣次數(shù),采樣頻率越高聲音的還原就越真實越自然。在當今的主流采集卡上,采樣頻率一般共分為22.05KHz、44.1KHz、48KHz三個等級,22.05KHz只能達到FM廣播的聲音品質(zhì),44.1KHz則是理論上的CD音質(zhì)界限,48KHz則更加精確一些。
在數(shù)字音頻領域,常用的采樣率有:
8,000 Hz - 電話所用采樣率, 對于人的說話已經(jīng)足夠
11,025 Hz
22,050 Hz - 無線電廣播所用采樣率
32,000 Hz - miniDV 數(shù)碼視頻 camcorder、DAT (LP mode)所用采樣率
44,100 Hz - 音頻 CD, 也常用于 MPEG-1 音頻(VCD, SVCD, MP3)所用采樣率
47,250 Hz - 商用 PCM 錄音機所用采樣率
48,000 Hz - miniDV、數(shù)字電視、DVD、DAT、電影和專業(yè)音頻所用的數(shù)字聲音所用采樣率
50,000 Hz - 商用數(shù)字錄音機所用采樣率
96,000 或者 192,000 Hz - DVD-Audio、一些 LPCM DVD 音軌、BD-ROM(藍光盤)音軌、和 HD-DVD (高清晰度 DVD)音軌所用所用采樣率
2.8224 MHz - Direct Stream Digital 的 1 位 sigma-delta modulation 過程所用采樣率。
通常歌曲的采樣率是44100,而Android平臺的人聲錄音支持8000,16000,32000三種采樣率。
聲道數(shù)和采樣位數(shù)下的PCM編碼
接下來再了解下聲道數(shù)和采樣位數(shù)代表什么意思,在PCM編碼中是如何應用的。
聲道通常可以分為單聲道和雙聲道,雙聲道又分為左聲道和右聲道。
采樣位數(shù)表示一個采樣數(shù)據(jù)用多少位來表示,通常為8位和16位,對于8位表示一個字節(jié)來表示一個采樣數(shù)據(jù),16位表示用兩個字節(jié)表示一個采樣數(shù)據(jù),兩個字節(jié)為低位字節(jié)和高位字節(jié),通常低位字節(jié)在前,高位字節(jié)在后。
因此結(jié)合聲道和采樣字節(jié)數(shù)(采樣位數(shù)),可以組成下圖的PCM數(shù)據(jù)格式:
可以看到8位單聲道的PCM數(shù)據(jù),只需要一個字節(jié)就能表示一個采樣數(shù)據(jù),而16位雙聲道(立體聲)的PCM數(shù)據(jù),需要4個字節(jié)來表示一個采樣數(shù)據(jù)。那么計算一個PCM大小的方法就很簡單了。
對于8位單聲道,采樣率為8000,1分鐘的PCM音頻來說,大小是
//采樣率 * 通道數(shù) * 采樣位數(shù)/8 * 秒數(shù) 8000 * 1 * 8/8 * 60 = 480000,大約480k
分享文章:Android音頻編輯之音頻轉(zhuǎn)換PCM與WAV-創(chuàng)新互聯(lián)
當前網(wǎng)址:http://www.ef60e0e.cn/article/cdsooh.html