位元深度 (音訊)
在數碼音頻與脈衝編碼調變(英語:PCM)中,音頻位元深度(英語:audio bit depth)是指每次取樣儲存着多少位元(英語:bit)的資訊,數值直接對應着每次取樣的解像度。比如,數碼音樂光碟採用16位元儲存取樣,則每個取樣點可以儲存65,536(216)種可能振幅值之一;DVD-A與藍光光碟則最高可支援24位元,即每個取樣點最多可以儲存16,777,216(224)種可能振幅值之一。[1]
在一些基本執行實例中,位元深度的變化主要影響由量化誤差引起的量化雜訊水平,比如說訊噪比(英語:SNR)和動態範圍。不過,抖動、過取樣、雜訊整型等技術也能夠減輕上述影響,同時維持位元深度不變。另外,位元深度還會影響位元速率和檔案大小。
位元深度僅對PCM數碼化訊號有意義,而有損資料壓縮格式等非PCM格式並無「位元深度」一說。[2][3]
二進位表示
[編輯]PCM訊號是一段數碼音頻取樣值序列,它所包含的資料可為重建原始模擬訊號提供必要資訊。在序列中,所有取樣值在時間上間隔均勻,各自代表訊號在對應時間點上的振幅。振幅是每個取樣點所精確儲存的唯一資訊,其儲存形式通常是整數或浮點數形式,但會編碼成具有固定位數的二進位數。該二進位數之位數就是取樣的位元深度(英語:bit depth),也稱作字長(英語:word length)或者字大小(英語:word size)。
取樣值的解像度是指:由原始模擬訊號所含所有振幅值所構成的連續分佈範圍內,有多少離散值能夠為取樣值所表示。在整數取樣PCM音頻中,取樣值通常以有符二補碼形式儲存,[4]以二進位整數表示的解像度會隨着字長增加而呈指數增長,字長每增加一位元,解像度即翻一倍。若位元深度以十進位整數形式表示為n,則取樣值能夠表示的可能振幅值數量為2n。[5]例如,若位元深度為16,則解像度為65,536(216)。
許多音頻檔案格式以及數碼聲訊工作站(英語:DAW)現在也支援以浮點數表示取樣的PCM格式,[6][7][8][9]比如WAV與AIF。[10][11]整數的位元模式是單一的位元系列,而浮點則與之不同,其數值表示是由單獨而互相構成數學關係的欄位構成的。最常見的浮點數標準是IEEE 754,在該標準中,數字由表示符號正負的符號位、指數以及由指數代表位移的尾數組成,其中尾數在IEEE二進位格式中是以二進位分數表示的。[12]
量化
[編輯]在重建出的訊號中,訊雜比最大值受限於取樣位元深度,並取決於量化誤差值。頻率響應則受限於取樣率而與位元深度無關。
由模擬至數碼轉換(英語:ADC)導致的量化誤差,是來自ADC的模擬電壓輸入值與完成數碼化的輸出值之間的捨入誤差,透過塑模可成為量化雜訊。這種雜訊非線性,並與訊號本身相關。
在理想狀態下,模擬至數碼轉換的量化誤差會均勻分佈在最低有效位(英語:LSB)±½倍範圍內,並且訊號會有覆蓋所有量化階的均勻分佈。訊號量化雜訊比(英語:SQNR)可通過下式計算:
此處的Q為訊號的量化位元數,解果以分貝(英語:dB)為單位。[13]
由此可知,CD上的16位元數碼音頻的最大理論訊噪比為96分貝,而專業的24位元數碼音頻的最大理論訊噪比可至144分貝。至2011為止,由於集成電路的實際設計限制,數碼音頻轉換器的訊噪比大約只能達到123分貝,[14][15][16]也就是相當於有效21位元,不過這也與人類的聽覺系統能力相近。[17][18]雖然說也有售賣的32位元轉換器,但這些基本純粹是營銷產物,和24位元轉換器比起來沒有任何實際好處,那些多出來的位元要麼一直是0,要麼只能編碼噪聲。[19][20]另外也可以用多個轉換器覆蓋處理同一訊號的不同範圍,如此一來就可以在訊號的長期範圍紀錄更大的動態範圍,這種技術稱作動態範圍拓展,不過這仍在短期範圍會有受限於單個轉換器動態範圍的問題。[21][22]
位元深度 | 訊噪比 | 整數取值總數(單個取樣點) | 有符十進位取值範圍(單個取樣點) |
---|---|---|---|
4 | 24.08 dB | 16 | −8至+7 |
8 | 48.16 dB | 256 | −128至+127 |
11 | 66.22 dB | 2,048 | −1,024至+1,023 |
12 | 72.24 dB | 4,096 | −2,048至+2,047 |
16 | 96.33 dB | 65,536 | −32,768至+32,767 |
18 | 108.37 dB | 262,144 | −131,072至+131,071 |
20 | 120.41 dB | 1,048,576 | −524,288至+524,287 |
24 | 144.49 dB | 16,777,216 | −8,388,608至+8,388,607 |
32 | 192.66 dB | 4,294,967,296 | −2,147,483,648至+2,147,483,647 |
48 | 288.99 dB | 281,474,976,710,656 | −140,737,488,355,328至+140,737,488,355,327 |
64 | 385.32 dB | 18,446,744,073,709,551,616 | −9,223,372,036,854,775,808至+9,223,372,036,854,775,807 |
浮點數
[編輯]在浮點數取樣中,位元深度與解像度的關係並不像在整數取樣中那般簡單。浮點數取值間隔並不均勻,相鄰二值之間隔與取值本身成比例。這一特點令其訊噪比遠遠高於整數取樣體系,因為同一段訊號無論位準高低都具有相同精度。[23]
儘管如此,浮點數取樣相比之下也有另一方面劣勢:對於相同位元深度,在取值很大的情形下,相鄰浮點數比相鄰整數間隔更大。因此,浮點數取值越大,捨入誤差便越大。而整數無論取值大小,捨入誤差值始終維持在相同程度。換言之,整數無論大小,數值修約結果始終不外於最低有效位取0或1;而浮點數無論大小,訊噪比始終不變,量化雜訊位準始終與訊號位準成一定比例,隨訊號位準升降而升降。[23]如果位元深度足夠低,量化雜訊位準之不同便能夠為人耳所辨別。[24]
音頻處理
[編輯]正如模擬至數碼訊號轉換這一步會引入量化誤差,大多數處理數碼音頻的運算涉及重新量化取樣,從而引入更多捨入誤差。在數碼至模擬轉換過程中,若要避免捨入誤差大於既有誤差,運算所涉計算步驟必須滿足更高精確度要求。[25]
無論是定點數抑或浮點數運算,數碼訊號處理都能滿足相應精度要求,但每一步運算的精度取決於所用硬件的運算精度,而不是輸入資料的解像度。例如x86處理器會採用單精度或雙精度執行浮點運算,以及採用16、32及64位元解像度執行定點運算,因此無論來源格式為何,所有用到英特爾處理器的處理工序都必然受到上述精度限制。
由定點數數碼訊號處理器通常支援特定字長,從而支援特定的訊號解像度。例如摩托羅拉56000採用24位元乘法器以及56位元累加器,因而能夠對兩段取樣執行乘積累加運算並且免受溢位以及截斷影響。[26]如果沒有高規格累加器,定點運算的結果可能受到截斷影響,從而精度較低。[27]摺積這類用到重複處理的演算法以及無限脈衝響應濾波器這類遞歸演算法對精度要求更高。[25][28]尤其在無限脈衝響應濾波器當中,捨入誤差會導致頻率響應表現欠佳、穩定性降低。[25]
顫動訊號
[編輯]在音頻處理流程當中,包括捨入誤差及精度損失在內的量化誤差會引入雜訊。若要減輕雜訊影響,可在量化前的訊號上加入顫動訊號(英語:dither),即加入少量隨機雜訊。顫動能夠消除非線性量化誤差所致影響,導致失真程度極低,代價則是雜訊基底(英語:noise floor)會稍微放大。在ITU-R 468雜訊加權(英語:noise weighting)標準之下,16位元數碼音頻的顫動訊號推薦值為以校準位準(英語:alignment level)減去約66分貝處,或是以數碼滿格(英語:full scale)位準減去84分貝處。該值與麥克風雜訊基底、錄音室噪聲值相當,在16位元音頻當中不足為慮。
對24位元音頻而言,數碼轉換器內的雜訊位準永遠高於顫動訊號位準的必要值,因此無需使用顫動訊號。理論上,24位元音頻經編碼可取得144分貝的動態範圍,但根據各廠商產品型錄,目前沒有任何模擬數碼轉換器動態範圍能夠做到大於125分貝左右。
顫動訊號也可以用於增大有效動態範圍。對於16位元音頻,若利用人耳的頻率響應特徵,對顫動訊號執行雜訊整型再加諸於音頻,則其主觀動態範圍可達至少120分貝。
動態範圍及動態寬限
[編輯]訊號動態範圍是指系統能夠錄入或再現的訊號振幅值當中最大值與最小值之比。若無顫動訊號,則動態範圍與量化雜訊基底相關,例如16位元整數體系取樣動態範圍可達96 dB左右。數碼音頻系統適當採用顫動訊號,可突破解像度對最低訊號位準的限制,增大有效動態範圍。[29]過取樣及雜訊整型等手段可除去重要頻段內量化誤差,進一步增大動態範圍。
若一段訊號的最高位準未達到其位元深度對最高訊號位準的規定值,該段音頻便具備寬限(英語:headroom)。錄音期間採用較高位元深度,可維持動態範圍不變而同時留出寬限,在不增加量化誤差的同時令低音量區域降幅(英語:clipping)風險降低。
超取樣
[編輯]若要在PCM音頻當中維持位元深度不變而增大動態範圍,超取樣也是一種方法。[30]超取樣即以數倍於期望值的取樣率取得取樣值。假設量化誤差均勻分佈於各頻段,超取樣以後其中一大部分將移位到超聲波頻段,播放音頻期間能夠由數碼模擬轉換器濾除。
若要藉由超取樣將位元深度提升位元,則取樣率需要增加至 倍。
例如,一台14位元模擬數碼轉換器若要將位元深度提升2位元,產生16位元、48 kHz數碼音頻,則需執行16()倍超取樣,取樣率為768 kHz()。因此,超取樣在PCM音頻當中以更高取樣率為代價,換得「以單一取樣值更低位元數維持解像度不變」這一優勢。
若要提高動態範圍,但不在源訊號數碼化期間執行超取樣,也可以在訊號重建階段執行。比如在16倍超取樣當中,對於原始訊號每一取樣點,數碼重建濾波器(英語:reconstruction filter)都要計算得到16個新取樣點以取代,因此每次取樣結果都獨一無二。如前文所述,有效位元深度增大的原理不在於減弱量化雜訊,而在於將雜訊頻譜分散到音頻頻寬的16倍。
歷史上,CD標準是由Sony與飛利浦共同開發制定。在各自首款CD播放機上,Sony CDP-101採用16位元DAC,而飛利浦CD100僅採用14位元雙DAC。當時市場方面以至業界都有許多人士對此感到不解,原因是16位元PCM訊雜比可達96分貝,而14位元PCM僅能達到84分貝,較前者少12分貝。實際上,飛利浦是將4倍超取樣與一階雜訊整型(英語:first-order noise shaping)相結合,理論上能實現96分貝動態範圍,與CD格式標準一致。[31]在實際應用當中,飛利浦CD100在20 Hz至20 kHz頻段上實測訊雜比為90分貝,表現與Sony CDP-101相同。[32][33]
雜訊整型
[編輯]採用超取樣處理訊號,則量化雜訊大小在所有頻段上都相同,動態範圍增大倍數與超取樣率(英語:oversampling ratio)之平方根成正比。而雜訊整型是在較高頻段加入額外雜訊以抵消較低頻段一些雜訊,以令超取樣動態範圍增幅更大的一種手段。n階雜訊整型(英語:nth-order noise shaping,是指超取樣後能令動態範圍較一般超取樣處理多6n分貝的雜訊整型。[34]譬如,對20 kHz模擬音頻執行4倍超取樣,再結合二階雜訊整型,便能將動態範圍提升30分貝。由此可知,對16位元訊號執行176 kHz取樣,位元深度等於對21位元訊號執行44.1 kHz無雜訊整型取樣。
參考資料
[編輯]- ^ Trier, Author Stephen. Choosing a high-performance audio ADC. Skywired.net. 2011-09-14 [2021-12-29]. (原始內容存檔於2022-03-31) (美國英語).
- ^ Montgomery, Chris. 24/192 Music Downloads ...and why they make no sense. xiph.org. 2012-03-25 [2013-05-26]. (原始內容存檔於July 2013-07-07) (英語).
With use of shaped dither, which moves quantization noise energy into frequencies where it's harder to hear, the effective dynamic range of 16 bit audio reaches 120dB in practice, more than fifteen times deeper than the 96dB claim. 120dB is greater than the difference between a mosquito somewhere in the same room and a jackhammer a foot away.... or the difference between a deserted 'soundproof' room and a sound loud enough to cause hearing damage in seconds. 16 bits is enough to store all we can hear, and will be enough forever.
- ^ Stuart, J. Robert. Coding High Quality Digital Audio (PDF). Meridian Audio Ltd. 1997 [2016-02-25]. (原始內容 (PDF)存檔於2016-04-07) (英語).
One of the great discoveries in PCM was that, by adding a small random noise (that we call dither) the truncation effect can disappear. Even more important was the realisation that there is a right sort of random noise to add, and that when the right dither is used, the resolution of the digital system becomes infinite.
- ^ Pulse Code Modulation (PCM). ccrma.stanford.edu. [2021-12-29]. (原始內容存檔於2022-03-31).
- ^ Thompson, Daniel M. Understanding audio : getting the most out of your project or professional recording studio. Boston, Mass.: Berklee Press. 2005. ISBN 0-634-00959-1. OCLC 58450656.
- ^ Campbell, Robert. Pro Tools 10 : advanced music production techniques. Boston, MA: Course Technology PTR. 2013. ISBN 978-1-133-72801-6. OCLC 812179989.
- ^ Avid Pro Tools 10. www.soundonsound.com. [2021-12-29]. (原始內容存檔於2022-01-01).
- ^ Reason Mixing Masterclass. www.soundonsound.com. [2021-12-29]. (原始內容存檔於2022-01-01).
- ^ Audio Fact Sheet — Ableton Reference Manual Version 11 | Ableton. www.ableton.com. [2021-12-29]. (原始內容存檔於2022-07-16) (英語).
- ^ Wave File Specifications. www-mmsp.ece.mcgill.ca. [2021-12-29]. (原始內容存檔於2010-03-25).
- ^ AIFF / AIFC Sound File Specifications. www-mmsp.ece.mcgill.ca. [2021-12-29]. (原始內容存檔於2021-03-09).
- ^ Floating Point (Real Numbers). www.dspguide.com. [2021-12-29]. (原始內容存檔於2021-07-30).
- ^ Kester, Walt. Taking the Mystery out of the Infamous Formula, "SNR = 6.02N + 1.76dB," and Why You Should Care (PDF). Analog Devices. 2007 [2021-12-29]. (原始內容存檔 (PDF)於2011-06-16).
- ^ Nwavguy. NwAvGuy: Noise & Dynamic Range. NwAvGuy. 2011-09-06 [2021-12-29]. (原始內容存檔於2022-04-12).
- ^ PCM4222. [2021-12-29]. (原始內容存檔於2011-06-23).
Dynamic Range (–60dB input, A-weighted): 124dB typical Dynamic Range (–60dB input, 20 kHz Bandwidth): 122dB typical
- ^ WM8741 | Cirrus Logic. master-nq.webp2.cirrus.com. [2021-12-29]. (原始內容存檔於2022-03-02).
- ^ D. R. Campbell. Aspects of Human Hearing (PDF). [2011-04-21]. (原始內容 (PDF)存檔於2011-08-21).
The dynamic range of human hearing is [approximately] 120 dB
- ^ Sensitivity of Human Ear. hyperphysics.phy-astr.gsu.edu. [2021-12-29]. (原始內容存檔於2011-06-04).
- ^ The great audio myth: why you don’t need that 32-bit DAC. Android Authority. 2016-01-19 [2021-12-29]. (原始內容存檔於2022-07-09).
- ^ 32-bit capable DACs. hydrogenaud.io. [2021-12-29]. (原始內容存檔於2022-03-31).
- ^ US6317065B1,Raleigh, Gregory G. & Vincent K. Jones,「Multiple A to D converters for enhanced dynamic range」
- ^ Christodoulou, Lakis; Lane, John; Kasparis, Takis. Dynamic range extension using multiple A/D converters. 2010 4th International Symposium on Communications, Control and Signal Processing (ISCCSP). 2010-03-01: 1–4. ISBN 978-1-4244-6285-8. S2CID 16501096. doi:10.1109/ISCCSP.2010.5463427.
- ^ 23.0 23.1 Fixed versus Floating Point. www.dspguide.com. [2021-12-29]. (原始內容存檔於2021-09-07).
- ^ Moorer, James. 48-Bit Integer Processing Beats 32-Bit Floating-Point for Professional Audio Applications (PDF). www.jamminpower.com. 1999-09 [2013-08-12]. (原始內容存檔 (PDF)於2019-02-14).
- ^ 25.0 25.1 25.2 Tomarakos, John. Relationship of Data Word Size to Dynamic Range and Signal Quality in Digital Audio Processing Applications. www.analog.com. 亞德諾半導體. [2021-12-29]. (原始內容存檔於2015-02-12) (英語).
- ^ NXP® Semiconductors Official Site | Home. www.nxp.com. [2021-12-29]. (原始內容存檔於2021-03-22).
- ^ The Scientist and Engineer's Guide to Digital Signal Processing, Chapter 4 – DSP Software / Number Precision. www.dspguide.com. [2021-12-29]. (原始內容存檔於2022-03-31).
- ^ Carletta, Joan. Determining Appropriate Precisions for Signals in Fixed-Point IIR Filters. DAC. 2003. CiteSeerX 10.1.1.92.1266 .
- ^ Dithering in Analog-to-Digital Conversion (PDF). e2v Semiconductors. 2007 [2011-07-26]. (原始內容 (PDF)存檔於2011-10-04).
- ^ Kester, Walt. Oversampling Interpolating DACs (PDF). Analog Devices. [2013-08-19]. (原始內容 (PDF)存檔於2012-05-19).
- ^ Philips Research. Philips. [2021-12-29] (英語).
- ^ Philips CD100 Stereo Compact Disc Player Manual | HiFi Engine. www.hifiengine.com. [2021-12-29]. (原始內容存檔於2022-01-01).
- ^ Sony CDP-101 Stereo Compact Disc Player Manual | HiFi Engine. www.hifiengine.com. [2021-12-29]. (原始內容存檔於2022-01-01).
- ^ B.1 First and Second-Order Noise Shaping Loops. www.iue.tuwien.ac.at. [2021-12-29]. (原始內容存檔於2022-01-01).