位元深度 (音訊)
在數位音訊與脈衝編碼調變(英語: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).