(1) pcm格式
pcm是通過話筒錄音後直接獲得的未經壓縮的數據流
數據大小=採樣頻率*採樣位數*聲道*秒數/8
採樣頻率通常是22k或者44k,位數通常是8位或者16位,聲道通常是單聲道或者雙聲道
pcm屬於編碼格式,就是一串由多個樣本值組成的數據流, 自己沒有任何頭信息或者幀的概念,。若是不是音頻的錄製者,光憑一段PCM數據,是沒有辦法知道它的採樣率等信息的。(網上有說法指2048個採樣算一幀PCM,http://www.360doc.com/content/11/1230/19/2226925_176139396.shtml,不知道這種說法是否正確)
參見:
(2)WAV格式
WAV格式是封裝格式,裏面自己能夠存放多種編碼格式的數據,不過通常都是存放的PCM數據,存放其餘編碼意義不是很大。
wav文件由wav文件頭部分和wav文件數據體部分組成,0-43字節存放採樣率、通道數、數據部分的標識符等頭信息,44字節之後的就是數據部分。 很顯然,wav的頭信息很重要,一旦頭信息損壞了,播放估計會有問題。
參見:
(3)MP3格式
MP3是封裝格式,裏面存放的數據使用的編碼方式稱爲MPEG1 Layer-3
MP3文件由TAG_V2(ID3V2)結構體,一組Frame, TAG_V1(ID3V1)結構體組成,頭部的TAG結構體不必定存在,須要進行判斷,尾部的TAG長度爲128個字節,也須要進行判斷。
中間的一組Frame,Frame長度能夠定長也能夠邊長,每個Frame都由幀頭和數據實體組成,幀頭記錄了mp3的位率,採樣率,版本等信息,每一個幀之間相互獨立,各幀相互獨立。也就是說即便前面的幀損壞了,後面的也是能夠播放的。
(4)AMR格式
AMR文件包含一個文件頭,後面就是一幀一幀的AMR幀。文件頭裏面的值是固定值,用於標識該文件爲AMR文件。每一個幀分爲幀頭和數據部分,幀頭裏麪包含編碼方式以及輔助信息。AMR的採樣率根據編碼方式不一樣而不一樣,所以不像MP3同樣,在每一個幀裏面存放採樣率。
參見:
(5)AAC格式
初步瞭解,AAC文件能夠沒有文件頭,所有由幀序列組成,每一個幀由幀頭和數據部分組成。幀頭包含採樣率、聲道數、幀長度等,有點相似MP3格式。
關於AAC格式的文章網上很是少,只看到如下幾篇:
(6)CAF文件
CAF是蘋果的一種音頻封裝格式,與WAV差很少,裏面能夠存放LPCM、MP3等多種編碼數據。
參見:
----------------------------------------------------------------------------------------
本人博客內容系我的學習與研究的筆記,如存在謬誤或缺失,請見諒並指出,謝謝。
本文地址:http://www.cnblogs.com/gugupluto/p/3584320.htmlhtml
轉載請註明來自:http://www.cnblogs.com/gugupluto/android
---------------------------------------------------------------------------------------- ios