2015年3月20日 星期五

[基礎觀念解釋] 你了解什麼是sample rate和bit depth嗎?


By 終於想起來自己還有這麼一個網誌的阿翔




剛接觸錄音的時候,你是否常常聽到別人說16 bit, 44.1 kHz, 24 bit, 48kHz等等數字?在器材和軟體的規格表上看到上面這些數字?你知道這些東西是幹嘛的嗎?


你知道,要把類比的訊號轉換成數位訊號時,都必須要有他取樣的單位。拿影片來講,所謂的格率就是把現實世界發生的1秒鐘分割成24格或是29.97、30格之類的格數;拿圖片來講,數位化他會取樣成一點一點的解析度,而這個概念在數位聲音當中也是一樣的。雖然我們常常講說聲音和影像不同,聲音是實時發生的,但是為了把這個類比訊號擷取成電腦可以處理的數位訊號,我們就有了所謂的bit depth和sample rate,而他們之間錯綜複雜的關係可以用下圖來粗略解釋。






Bit Depth




這到底是什麼意思?忘記中文翻譯吧(因為我不知道)!這個名詞的簡單解釋就是:你取樣某一個聲音所需要的位元數。

這是什麼意思呢?因為在取樣音波的時候,聲音的能量能夠在任一時刻被切割成等份。如上圖所示,有點像一個階梯的樣子,在縱向來做聲音的切割。你可以把它當作解析度來理解,而每大一倍的解析度,他切割的數量就會同時加大。他每個等分數量的單位是一個sample中的一個整數數值(interger value),而拿16bit來說,他每sample的整數數值會介於-32768和32767中間,總共會有65,536 (2的16次方) 個可能存在的數值,而到了24bit,他就會有16,777,216 (2的24次方) 個可能存在的數值。整數數值範圍可以用下列公式求得:

最小= -2^(bit depth-1)
最大= 2^(bit depth-1) -1

看到這邊,剛剛燃起的求知慾是否已經降低不少?別擔心,我們還沒有結束。










Sample Rate






這到底又是什麼意思呢?再看看我們上面精美的圖表!我們可以輕易地發現時間和sample rate居然是處在同一個平面上,這就表示sample rate和時間有著極度密切的關係。Sample rate用中文簡單的解釋就是:每秒鐘對這個聲音的取樣次數。

想像這個完美的波形是一塊流動的蛋糕(?),而你切的每一刀距離都要一樣,也就是說,在蛋糕在你面前流動的時候,你必須手起刀落,用等速的時間切下每一刀,來計算這塊切下來的蛋糕到底有多大,這就是sample rate。所以24kHz等於是說每秒鐘對這個聲音切24,000次,而48kHz是每秒鐘對這個聲音切48,000次,夠簡單了吧!

那麼回到剛剛令人崩潰的bit depth,我們到底要怎麼知道每一塊蛋糕有多大呢?就是這每一刀(sample rate)加上他的高度(bit depth)啦!這樣一想是不是真的是a piece of cake啊?哈哈哈!









如何選擇需求的Sample Rate和Bit Depth






你可能有聽過,標準的CD音質是16bit, 44.1kHz,很多錄音軟體器材打開的預設值也是這個。為什麼這個是標準呢?

根據一個叫做Shannon-Hartley的定理,如果某一個類比訊號所包含的頻率都沒有超過某一特定頻率x,那麼取樣時就取以這個特定頻率x兩倍的數值,你就可以完整的重現出x以下原本的聲波。

以人耳為例,我們的聽力範圍不會超過22kHz,所以我們如果要完整的重現出我們人耳所聽到的聲音,我們就把取樣數訂在44kHz,而且我們必須肯定這個聲音並沒有包含超過22kHz以上的頻率。

記得我們說過bit depth是取樣聲音的能量嗎?聲音的能量=dB值,也就是說這邊我們在抓的是人耳能承受的聲音範圍。這個範圍是0dB SPL到130dB SPL(可能會聾的程度),而我們假設一曲音樂的音量是介於10dB SPL和100dB SPL之間,他們的差距就是90dB,再代入公式計算一下如果用16bit取樣會得到什麼:

20x log(2^(16-1))=90.3dB

讚!就是這首歌的音量差距!

這就是為什麼CD標準音質的是16bit, 44.1kHz的原因。

萬歲!現在我們已經算出人耳能分辨出的範圍和他對應的取樣數了!讚!


那為什麼有人還要用更高的取樣數??




讓我先把話講明白,1080p的畫質會比720p的好,而且這是人眼能夠分辨的,但是更高的取樣數並不會讓聲音更好聽,至少不會好聽到一倍。如果你的耳朵有受過訓練,當然細節部分你可以聽出來,但是給一般人聽呢?他們有些人甚至分不出mp3和wav檔案的差別。

從前面一堆複雜的計算可以看到,16bits, 44.1kHz在大多數的數位播放器上都是足夠的,只有專業的器材才能夠達到動態範圍超過90dB,頻率反應範圍大於22kHz,那麼使用更大的取樣數除了侵佔硬碟容量之外,還有什麼意義?

前面計算了這麼多,都是在一個完美的理論狀態下,但是聲音在錄進來之後,每做一次處理(混音、EQ、加效果等等)就會造成一些動態流失。例如說一個16bit的聲音數值1244,除以10是124,乘以2是248,但是1244除以5是249,在這邊經過兩次計算就造成了動態流失,更不要說聲音經過的處理不只一次兩次。使用更高的取樣數可能在原始狀態並不會有多大的差別,但是使用更高的取樣數容許你留下更多的細節,保障你在處理過程中不會喪失過大的動態範圍,進而影響到本來該有的音質。舉個簡單的例子,如果我們使用24bit錄音,不使用limiter或compressor,我們可以把錄音音量放小一點,留下更多的headroom好讓偶爾的peak不會爆表。因為你留了更多空間給你的錄音,他會聽起來更清楚、自然,混音起來更加有空間。

記住,有些高取樣數錄出來的聲音搞不好比一些16bit的還差,因為高取樣數並不等於更好聽的聲音,就像越貴的相機不代表畫面一定比較好看一樣。只是使用更高的取樣率可以容許處理過程中的損失發生,讓我們少一個錄不好的藉口罷了,哈哈哈!




參考資料+翻譯:



3 則留言:

  1. 深入淺出的技術文件,感謝阿翔

    回覆刪除
  2. 厲害,我的混音機裏面的rate 就是切蛋糕的意思 qq

    回覆刪除
  3. 我想問,請問以上這兩個最主要的區別是什麼? 假如今天要錄製CD,通常要如何設定?

    回覆刪除