補充說明留言版討論的 dither 作用

討論MP3、WAV、MIDI、WMA甚至其他數位音訊的播放、製作、轉換等。

版主: DearHoney

回覆文章
訪客

文章 訪客 »

^^ ; ;

<font color="#008000">因為 random 所以可以減少量子化誤差。因為 uniform 所以可以降低量子化噪音(quantization noise)所帶來的高次諧波失真(harmonic distortion)。</font>

這兩個講的其實是同一個作用,只是用不同的觀點來描述而已。<br>量子化雜音換一個方式講就叫量子化誤差,我前面 post 過:「<font color="#008000">中間相差的 0.2V 就是所謂的「量子化雜音」(或者叫量子化誤差)</font>」。<br>請看那個<a href="http://www2.117.ne.jp/~vision/paf/term_d1.htm#disa" target="_blank">日文網頁</a>上的圖形。我們可以看到 dither 所加入的 White Noise 是小振幅(小音量),不規則(random)跳動的波形。從波形圖來看,由於加入了這些 dither,使得量子化誤差由紅線到 0 軸的距離縮短為紅線減掉藍線的距離。(網頁上的紅線沒畫好,有些應該在 0 軸的下方)所以說:「因為 random 所以可以減少量子化誤差」。<br>用另一個觀點,從 FFT 分析後的頻譜上來看,這種不規則跳動的波形,其頻率響應是均勻(uniform)的分佈於全部頻率的聲音,各個頻率區間的音量大小都相同,頻率響應是一直線,非常的平坦。<br>由於加上了這種均勻的 White Noise,使得量子化雜音所產生的「突出的高次諧波」被平均化了,往兩邊擴散,變得比較平坦。所以說:「因為 uniform 所以可以降低量子化噪音所帶來的高次諧波失真」。

同一個作用,不同的觀點,產生不同的表述。

再用數學的觀點來解釋,所謂小音量的意思就是指後面的那幾個 lower bit,所謂不規則跳動的波形就是指 random number,所謂"<font color="#008000">add a random number to bit 16~23, then carry to bit 15(LSB of 16bit data)</font>"這個動作就是加上 dither 來「減少量子化誤差」 = 「降低量子化雜音」。<br>因為量子化誤差變小了,使得我們比較能夠聽到原來音樂的樣子 = 失真較小 = 聲音不會變尖變薄 = 保有原來聲音的空間感,厚度感,溫暖感 = 多一點的 detail = 讓更多細微的聲音能被聽到。

如果不好從數學上的運算去了解這個 add and carry 對 sample 所造成的實質上的,物理上的,感官上的影響,我們就用圖形的方式來理解吧 ^_^
訪客

文章 訪客 »

沒錯, 我知道redithering可以把low level musical information帶回來而不是直接砍掉, 但是同時其實low level sound是被magnified, 不是嗎? 所以怎麼可以說「有115dB的dynamic range呢?」應該說, 如果原來錄的東西的dynamic range是115dB, 我用redithering可以在16bit的限制下, 仍然儘可能保留原來的音樂資訊, 雖然只有96dB的dynamic range但仍可以讓聆聽者可以聽到原本振幅只有在負一百多分貝的細節。(但其實是被magnified了!)
訪客

文章 訪客 »

嗯,我瞭解您的意思,其實我原來的想法也是和您一樣,所以我說我也看不懂 16bit 可以有 115dB 的 resolution 的意思。<br>不過我後來看了很多文章發現,奇怪,好像大家都是這麼講的.... ^^;;<br>您可以看一下 Cool Edit 的說明檔裡面對這個部分的說明(我引一下好了...)

This is because the noise itself still contains audio information that is audible. Signals as<br>quiet as -118dB (that's 22dB below the -96dB so-called "limit") can still be heard,<br>even though the S/N ratio is still -94dB. In other words, the S/N ratio is 94dB<br>while the dynamic range is closer to 118dB.

所以我想,或許他們對 dynamic range 的定義和我不一樣吧... (這樣講好像有點奇怪,我算什麼東西... ^^;;)(其實我也不知道 dynamic range 的定義是什麼....)(天啊... ^^;;;;)

JamesT 您有這方面的資料可以提供一下嗎?
訪客

文章 訪客 »

我想LIBIDO兄和JamesT兄,剛好我也很有興趣..所以,中途插進來,還請多多包涵^^<br>看了您們的文章,我也有一個想法,對於只有16bit ADC的音效卡,這類dithering的使用可以如何運用呢?如果動態範圍是115dB,那不是表示從0dB到-115dB都可以聽到,但是實際資料還是記錄16bit的寬度,應該只能聽到0dB到-96dB的東西,那超過的-96dB的部份是怎麼塞進16bit的寬度裡呢?難到說dithering的作用在於把-96dB以後的音訊全部增量,好擠進-96dB裡嗎?...<br>隨便亂講的,因為我沒有看過您們所討論的原文,能告訴我可以在哪裡找到嗎?謝謝!!^^
訪客

文章 訪客 »

OH!...<br>我犯了一個錯,修改一下...<br>第一句應該是對指您們所討論的問題有興趣...不是您們..<br>因此...中途插進來"討論"啦!^^
訪客

文章 訪客 »

對於只有16bit的ADC, 根本沒得redithering啊, 人家做redithering是想要把20bit或24bit的ADC錄到的東西塞進16bit裡(比方說一般的CD)而玩的花樣, 如果原來只有16bit, 那不可能憑空生出low level的music啊......
訪客

文章 訪客 »

To Luna:

我們前面的討論在訪客留言裡面。<br>您可以在留言版上運用關鍵字搜尋 LIBIDO,JamesT 或 Trevor。
回覆文章