寫給小白的音訊認識基礎

葉大俠發表於2019-03-04

初識音訊

從初中物理上我們就學到,聲音是一種波。計算機只能處理離散的訊號,通過收集足夠多的離散的訊號,來不斷逼近波形,這個過程我們叫做取樣。怎麼樣才能更好的還原聲音資訊呢?這裡很自然引出兩個概念了。

聲音波形圖

取樣頻率(Sample Rate):每秒採集聲音的數量,它用赫茲(Hz)來表示。

取樣率越高越靠近原聲音的波形,常見的取樣率有以下幾種:

  • 8khz:電話等使用,對於記錄人聲已經足夠使用。
  • 22.05khz:廣播使用頻率。
  • 44.1kb:音訊CD。
  • 48khz:DVD、數字電視中使用。
  • 96khz-192khz:DVD-Audio、藍光高清等使用。

取樣精度(Bit Depth): 它表示每次取樣的精度,位數越多,能記錄的範圍就越大。

取樣精度常用範圍為8bit-32bit,而CD中一般都使用16bit。

把聲音記錄下來之後,通過喇叭的震動把波再還給空氣傳到你的耳朵就完成了這個完美的迴圈了。但是富有創造力的人類不會限制於此就結束了,很快人們發現,當把不同的聲音傳遞到不同的喇叭的時候,竟然會驚奇地讓聲音變得有空間感了,即時是同一個聲音,也比單個通道能獲得更好的體驗,於是就出現了什麼立體聲,5.1 環繞等看起來很高大上的東西。所以,音訊又多了一個東西:

聲音通道(Channel): 你知道每個通道儲存的聲音會從其中的一個喇叭出來就好了,不過可以通過演算法的模擬來讓沒有那麼多喇叭也能出來類似的效果。

有了聲音通道,樂隊在錄音的時候就可以每個人插一條音軌了,然後每一個聲音可以寫到不同的通道里面,當然,實際錄音當然都是後期混音而成的。下面介紹的其中一個混音演算法會用到聲音通道這個特性。

最後再介紹一個大家經常看到的概念:

位元率(bps [bits per second]): 其實看單位就很容易知道它要表達的意思了,就是每秒鐘要播放多少 bit 的資料。公式一目瞭然:

位元率 = 取樣率 × 取樣深度 × 通道。
複製程式碼

比如 取樣率 = 44100,取樣深度 = 16,通道 = 2 的音訊的的位元率就是 44100 * 16 * 2 = 1411200 bps。

一般來說,位元率越高,音訊質量越好。要注意一些位元率的換算不是 1024 作為一個級別換算的哈。

1,000 bps	= 【1 kbps】 =	1,000 bit/s
1,000,000 bps	= 【1 Mbps】 =	1,000,000 bit/s	
1,000,000,000 bps	= 【1 Gbps】 =	1,000,000,000 bit/s
複製程式碼

音訊在計算機中的表示

我們來看一下真實音訊在計算機中究竟是怎樣的表示狀態,這裡指的是原始的資料表示,而非編碼(Mp3,Acc等)後的表示,平時我們看到的.wav字尾的音訊,把前面 44 個位元組用於記錄取樣率、通道等的頭部資訊去掉後就是就是原始的音訊資料了。

WAV表示圖

在理解了上面的概念之後,我們再來看這張圖。對於檔案頭部資訊我們就不詳細介紹了,不影響我們理解介紹的混音處理方式,需要了解的可以點選這裡

我們抽取其中的一個取樣來看,這裡我加多了一個通道,便於大家理解通道的儲存位置。

音訊取樣圖

不難理解,這個取樣中有三個通道,每通道取樣精度是 16 位元。每個取樣值的排序是 Little-Endian 低位在前的方式,比如通道 1 的取樣值就是 AB03, 每個取樣值的大小表示的是幅度資訊。

好了,先介紹到這裡,希望對你有幫助,如果文章有理解錯誤的地方,請給我留言指出,感謝你的閱讀,下一篇將會介紹有關音訊混音的相關知識。

參考資料

  1. WAV檔案格式
  2. 維基百科-位元率

技術交流群:70948803,大部分時間群裡都是安靜的,只交流技術相關,很少發言,不歡迎廣告噴子。

不玩音樂的看到這裡可以關閉了。

色彩濃重的廣告時間:

如果你有玩音樂,我做了一個音樂學習和記錄的輔助工具。剛在 Google Play 釋出,可以直接點選這裡下載:下載聲音筆記+。我平時會用它來作即興練習和合奏練習。

以下是免費的:

相關文章