一、聲音的三要素
1.音調
人耳對聲音高低的感覺稱為音調(也叫音頻)。音調主要與聲波的頻率有關。聲波的頻率高,則音調也高。當我們分別敲擊一個小鼓和一個大鼓時,會感覺它們所發出的聲音不同。小鼓被敲擊后振動頻率快,發出的聲音比較清脆,即音調較高;而大鼓被敲擊后振動頻率較慢,發出的聲音比較低沉,即音調較低。一般音頻 兒童>女生>男生。
人耳聽覺音頻范圍是20Hz-20000Hz(做音頻壓縮時不在這個范圍內的數據就可以砍掉)。
2.音強
也就是響度。人耳對聲音強弱的主觀感覺稱為響度。響度和聲波振動的幅度有關。一般說來,聲波振動幅度越大則響度也越大。當我們用較大的力量敲鼓時,鼓膜振動的幅度大,發出的聲音響;輕輕敲鼓時,鼓膜振動的幅度小,發出的聲音弱。
另外,人們對響度的感覺還和聲波的頻率有關,同樣強度的聲波,如果其頻率不同,人耳感覺到的響度也不同。
3.音色
也就是音品。音色是人們區別具有同樣響度、同樣音調的兩個聲音之所以不同的特性,或者說是人耳對各種頻率、各種強度的聲波的綜合反應。音色與聲波的振動波形有關,或者說與聲音的頻譜結構有關。
音叉可產生一個單一頻率的聲波,其波形為正弦波。但實際上人們在自然界中聽到的絕大部分聲音都具有非常復雜的波形,這些波形由基波和多種諧波構成。諧波的多少和強弱構成了不同的音色。各種發聲物體在發 出同一音調聲音時,其基波成分相同。但由于諧波的多少不同,并且各諧波的幅度各異,因而產生了不同的音色。
基波與諧波
二、音頻的量化與編碼
音頻的量化過程
現實生活中,我們聽到的聲音都是時間連續的,我們把這種信號叫模擬信號。模擬信號(連續信號)需要量化成數字信號(離散的、不連續的信號)以后才能在計算機中使用。如下圖所示量化過程分為5個步驟:
1.1 模擬信號
現實生活中的聲音表現為連續的、平滑的波形,其橫坐標為時間軸,縱坐標表示聲音的強弱。
1.2 采樣
按照一定的時間間隔在連續的波上進行采樣取值,如下圖所示取了10個樣。
1.3 量化
將采樣得到的值進行量化處理,也就是給縱坐標定一個刻度,記錄下每個采樣的縱坐標的值。
1.4 編碼
將每個量化后的樣本值轉換成二進制編碼。
1.5 數字信號
將所有樣本二進制編碼連起來存儲在計算機上就形成了數字信號。
量化的基本概念
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.2 哈夫曼無損編碼
將人類無法識別的聲音信號刪除掉后,對剩余的聲音信號繼續進行壓縮編碼,經過這種壓縮后再還原時是可以復原到和原來一樣的數據的(當然,復原也只是復原到壓縮前的狀態,那些刪除的人類無法識別的部分是不能復原的),所以稱為無損壓縮。
四、音頻編解碼器
4.1 常見音頻編解碼器
常見的音頻編解碼器包括OPUS、AAC、Vorbis、Speex、iLBC、AMR、G.711等。目前泛娛樂化直播系統采用rtmp協議,支持AAC和Speex。
性能上來看,OPUS > AAC > Vorbis,其它的逐漸被淘汰。
下圖為音頻編解碼器性能對比,橫坐標是碼率,縱坐標是音頻的采樣大小等級劃分(比如采樣大小為8bit是窄帶音頻,采樣大小為16bit是寬帶音頻)。