音頻基礎知識

一、聲音的三要素

1.音調

人耳對聲音高低的感覺稱為音調(也叫音頻)。音調主要與聲波的頻率有關。聲波的頻率高,則音調也高。當我們分別敲擊一個小鼓和一個大鼓時,會感覺它們所發出的聲音不同。小鼓被敲擊后振動頻率快,發出的聲音比較清脆,即音調較高;而大鼓被敲擊后振動頻率較慢,發出的聲音比較低沉,即音調較低。一般音頻 兒童>女生>男生。
人耳聽覺音頻范圍是20Hz-20000Hz(做音頻壓縮時不在這個范圍內的數據就可以砍掉)。


音調波形圖(圖片來自慕課網)
2.音量

也就是響度。人耳對聲音強弱的主觀感覺稱為響度。響度和聲波振動的幅度有關。一般說來,聲波振動幅度越大則響度也越大。當我們用較大的力量敲鼓時,鼓膜振動的幅度大,發出的聲音響;輕輕敲鼓時,鼓膜振動的幅度小,發出的聲音弱。
另外,人們對響度的感覺還和聲波的頻率有關,同樣強度的聲波,如果其頻率不同,人耳感覺到的響度也不同。


音量波形圖(圖片來自慕課網)
3.音色

也就是音品。音色是人們區別具有同樣響度、同樣音調的兩個聲音之所以不同的特性,或者說是人耳對各種頻率、各種強度的聲波的綜合反應。音色與聲波的振動波形有關,或者說與聲音的頻譜結構有關。
音叉可產生一個單一頻率的聲波,其波形為正弦波。但實際上人們在自然界中聽到的絕大部分聲音都具有非常復雜的波形,這些波形由基波和多種諧波構成。諧波的多少和強弱構成了不同的音色。各種發聲物體在發出同一音調聲音時,其基波成分相同。但由于諧波的多少不同,并且各諧波的幅度各異,因而產生了不同的音色。


基波與諧波(圖片來自慕課網)

二、音頻的量化與編碼

1.音頻的量化過程

現實生活中,我們聽到的聲音都是時間連續的,我們把這種信號叫模擬信號。模擬信號(連續信號)需要量化成數字信號(離散的、不連續的信號)以后才能在計算機中使用。如下圖所示量化過程分為5個步驟:

1.1 模擬信號

現實生活中的聲音表現為連續的、平滑的波形,其橫坐標為時間軸,縱坐標表示聲音的強弱。

1.2 采樣

按照一定的時間間隔在連續的波上進行采樣取值,如下圖所示取了10個樣。

1.3 量化

將采樣得到的值進行量化處理,也就是給縱坐標定一個刻度,記錄下每個采樣的縱坐標的值。

1.4 編碼

將每個量化后的樣本值轉換成二進制編碼。

1.5 數字信號

將所有樣本二進制編碼連起來存儲在計算機上就形成了數字信號。


音頻的量化過程(圖片來自慕課網)

2.量化的基本概念

2.1 采樣大小

一個采樣用多少個bit存放,常用的是16bit(這就意味著上述的量化過程中,縱坐標的取值范圍是0-65535,聲音是沒有負值的)。

2.2 采樣率

也就是采樣頻率(1秒采樣次數),一般采樣率有8kHz、16kHz、32kHz、44.1kHz、48kHz等,采樣頻率越高,聲音的還原就越真實越自然,當然數據量就越大。
模擬信號中,人類聽覺范圍是20-20000Hz,如果按照44.1kHz的頻率進行采樣,對20HZ音頻進行采樣,一個正玄波采樣2200次;對20000HZ音頻進行采樣,平均一個正玄波采樣2.2次。

2.3 聲道數

為了播放聲音時能夠還原真實的聲場,在錄制聲音時在前后左右幾個不同的方位同時獲取聲音,每個方位的聲音就是一個聲道。聲道數是聲音錄制時的音源數量或回放時相應的揚聲器數量,有單聲道、雙聲道、多聲道。

2.4 碼率

也叫比特率,是指每秒傳送的bit數。單位為 bps(Bit Per Second),比特率越高,每秒傳送數據就越多,音質就越好。

碼率計算公式:
碼率 = 采樣率 * 采樣大小 * 聲道數

比如采樣率44.1kHz,采樣大小為16bit,雙聲道PCM編碼的WAV文件:
碼率=44.1hHz*16bit*2=1411.2kbit/s。
那么錄制1分鐘的音樂的大小為(1411.2 * 1000 * 60) / 8 / 1024 / 1024 = 10.09M。

三、音頻壓縮技術

音頻壓縮主要包括2種方法:

3.1 消除冗余數據

這種壓縮的主要方法是去除采集到的音頻冗余信息,這些被刪除掉的音頻信號是沒法恢復的,所以稱為有損壓縮。

冗余信息包括人類聽覺范圍之外的音頻信號和被掩蔽掉的音頻信號。什么是被掩蔽的信號呢?信號的掩蔽分為頻域掩蔽和時域掩蔽。

3.1.1 頻域掩蔽效應

人類聽覺范圍是20-20000Hz,但這并不意味著只要是這個頻率范圍內的聲音都可以聽到,能否聽到還與聲音的分貝大小有關,有個分貝臨界值,高于這個臨界值的聲音才能聽到,低于這個臨界值的聲音就聽不到,在不同的頻率下這個臨界值是不一樣的。如下圖所示,橫坐標為頻率,縱坐標為分貝值,圖中的黑色曲線就是這個臨界值曲線,所以位于曲線下方的聲音是聽不到的。

還有一種情況,比如2個音調差不多的人同時說話,一個聲音很大,一個聲音很小,聲音小的會受到聲音大的影響,導致聲音小的無法被聽到。如下圖所示,紅色的柱子是一個很大分貝的聲音,它會產生掩蔽效應將與它頻率相近的小分貝的聲音掩蔽掉,紅柱子兩邊的藍色曲線就是它的掩蔽范圍曲線,紫色柱子都在它的掩蔽曲線覆蓋的范圍內,所以紫色柱子代表的聲音是聽不到的;而綠色柱子不在其范圍內,所以是可以聽到的。


頻域掩蔽效應
3.1.2 時域掩蔽效應

除了同時發出的聲音之間有掩蔽現象之外,在時間上相鄰的聲音之間也有掩蔽現象,稱為時域掩蔽。時域掩蔽又分為超前掩蔽和滯后掩蔽,如下圖所示。產生時域掩蔽的主要原因是人的大腦處理信息需要花費一定的時間。一般來說,超前掩蔽很短,只有大約5~20ms,而滯后掩蔽可以持續50~200ms。


時域掩蔽效應
3.2 哈夫曼無損編碼

將人類無法識別的聲音信號刪除掉后,對剩余的聲音信號繼續進行壓縮編碼,經過這種壓縮后再還原時是可以復原到和原來一樣的數據的(當然,復原也只是復原到壓縮前的狀態,那些刪除的人類無法識別的部分是不能復原的),所以稱為無損壓縮。

四、音頻編解碼器

4.1 常見音頻編解碼器

常見的音頻編解碼器包括OPUS、AAC、Vorbis、Speex、iLBC、AMR、G.711等。目前泛娛樂化直播系統采用rtmp協議,支持AAC和Speex。
性能上來看,OPUS > AAC > Vorbis,其它的逐漸被淘汰。
下圖為音頻編解碼器性能對比,橫坐標是碼率,縱坐標是音頻的采樣大小等級劃分(比如采樣大小為8bit是窄帶音頻,采樣大小為16bit是寬帶音頻)。


音頻編解碼器性能對比(綠色的為免費開源,藍色為不開源,紅色為收費。)

4.2 AAC編解碼器介紹

AAC(Advanced Audio Coding)編解碼器應用范圍特別廣,編解碼的音頻質量高保真,它出現的目的是取代mp3格式,因為mp3是有損壓縮,對音頻質量有一定損耗,而AAC對于原始數據的損耗就會小很多,而且壓縮率很高。目前市面上90%以上的直播系統都是用的AAC(雖然OPUS性能最好,但是rtmp協議不支持OPUS)。

4.2.1 AAC常用規格

AAC目前常用的規格有 AAC LC、AAC HE V1、AAC HE V2。

AAC LC

AAC LC (Low Complexity) 是低復雜度,一般碼率128kbt/s。

AAC HE V1

AAC HE V1是在AAC LC基礎上加入了SBR(Spectral Band Replication)技術,也就是分頻復用,加入這種技術后使碼流變得更低,而且音質更好。比如按照44.1kHz采樣率,20Hz頻段一個正玄波采樣2200個,這太浪費了,而在20000Hz頻段一個正玄波采樣2.2次,采樣次數太少導致音質較差。采用SBR進行分頻處理,在低頻段降低采樣率,在高頻段提高采樣率,這樣既能降低碼率又能提高音質。AAC HE V1一般碼率為64kbt/s左右。

AAC HE V2

AAC HE V2在AAC HE V1的基礎上又增加了PS(Parametric Stereo)技術。也就是將立體聲雙聲道分別保存,一個聲道的數據完整保存,另一個聲道只存儲一些差異性的參數信息,因為兩個聲道信息相關性非常強,可以通過那些差異性參數來還原這個聲道的信息。AAC HE V1一般碼率為32kbt/s左右。


AAC規格
4.2.2 AAC格式

AAC的格式有ADIF和ADTS兩種

AAC ADIF(Audio Data Interchange Format)

這種格式的AAC文件只在最開始的地方存有一個頭,頭里面包括采樣率、采樣大小、聲道數等信息。每拿出一個音頻幀都用這個頭信息來進行解析。它只能從開頭位置開始解碼,一般用于磁盤文件中。

AAC ADTS(Audio Data Transport Stream)

這種格式的AAC文件在每一個音頻幀的前面都有一個同步字,也就是加一個小的頭(7-9個字節),所以它可以從任何位置開始解碼。它的優點就是進行流傳輸時每拿到一個音頻幀直接就可以進行解碼播放,缺點就是每個音頻幀都多出一個頭,所以相對于ADIF格式它會多出一些數據量。

?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,572評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,071評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事?!?“怎么了?”我有些...
    開封第一講書人閱讀 175,409評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,569評論 1 307
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,360評論 6 404
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,895評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 42,979評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,123評論 0 286
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,643評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,559評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,742評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,250評論 5 356
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 43,981評論 3 346
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,363評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,622評論 1 280
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,354評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,707評論 2 370

推薦閱讀更多精彩內容

  • 概述 本片文章主要介紹音頻基礎,在做音頻開發之前首先必須要對音頻的相關概念了解。以下是具體內容概述: 常見的音頻格...
    iosmedia閱讀 2,691評論 0 1
  • 前言: 記載資料多為網絡搜集,侵刪。 根據最近接觸的整機項目做了一些整機音頻相關基礎知識的總結,如有不足或表述問題...
    Gawain_Knowknow閱讀 8,207評論 0 4
  • 音頻技術開發,我們得對聲音有所了解,掌握音頻的基礎知識,這才能更好地去做技術開發。首先介紹音頻基礎知識,然后介紹音...
    安仔夏天勤奮閱讀 7,474評論 3 18
  • Android 音頻開發 目錄 Android音頻開發(1):音頻相關知識 Android音頻開發(2):使用Au...
    android_趙樂瑋閱讀 27,934評論 4 58
  • 寫作計劃 學習入門 Android 平臺下的音視頻技術, 我打算按照下圖所示的步驟去學習: 從上圖可以看出, 學習...
    kamlin閱讀 1,844評論 2 2