音效卡輸出音質測試計畫

音效卡的問題在此討論。

版主: DearHoney

回覆文章
JamesT
神人
文章: 1347
註冊時間: 2001-01-04 08:00

文章 JamesT »

<!-- BBCode Quote Start --><FONT COLOR=GREEN>
個人猜測其實24Bit的wave檔其實資料格式是32Bit的,多的8Bit補零。也因此Cooledit2000也只能選32Bit來錄,沒辦法選24Bit,而選32Bit錄音的確能提供比16Bit更高的解析度。</FONT><!-- BBCode Quote End -->
我剛才看了一下 Cool Edit 2000 的 Help , 它支援的高解析格式其實分好多種, 只不過它自己內定使用的是 32-bit 浮點數, 而 0dB 設在 +32768.0 和 -32768.0 處。
DearHoney
神人
文章: 6487
註冊時間: 2001-01-03 08:00
聯繫:

文章 DearHoney »

<!-- BBCode Quote Start --><FONT COLOR=GREEN>是, 否則如何測?
唯一的問題只在於我沒有用過 Cool Edit Pro, 不知道它到底是怎麼去算 THD+N 也不知道它能否算 IMD......Cool Edit 2000 好像沒有這些功能。</FONT><!-- BBCode Quote End -->

我會這樣懷疑,來舉個例子說明一下。假如我們原本的波形就是要發出 1K 2K 3K 4K 的聲音,但是 2K 3K 4K 的 dB 值都小於 1K 的 dB,那麼,這些軟體是如何看出這些是我們本來就要的,還是諧波失真?軟體又是如何得知 2K 3K 4K 是 1K 的諧波,而不是看成 1K 4K 是 2K 的諧波?

又例如一段聲音,如果我們要測的是中間部分的聲音,但是前後擁有很長的空白訊號,並且包含音效卡的背景噪音,那麼這前後兩段的空白部分越多,是不是影響整體 S/N 的比重越大?

基於以上兩個例子,所以我才會覺得,是不是只有當軟體真正知道原始的聲音是什麼,才能真正算出實際的 THD+N、IMD 等資訊?
JamesT
神人
文章: 1347
註冊時間: 2001-01-04 08:00

文章 JamesT »

<!-- BBCode Quote Start --><FONT COLOR=GREEN>
我會這樣懷疑,來舉個例子說明一下。假如我們原本的波形就是要發出 1K 2K 3K 4K 的聲音,但是 2K 3K 4K 的 dB 值都小於 1K 的 dB,那麼,這些軟體是如何看出這些是我們本來就要的,還是諧波失真?軟體又是如何得知 2K 3K 4K 是 1K 的諧波,而不是看成 1K 4K 是 2K 的諧波?</FONT><!-- BBCode Quote End -->
本來就不應該這樣測。THD 都是測單音的諧波的。

而且若真要這樣測也沒什麼不可以, 問題只是你的軟體要支援這種玩法。總而言之你要告訴軟體說我的原始訊號是 1KHz 多少 dB 加上 2KHz 多少 dB 加上 ...... 。不過我所想到最根本的 THD 計算, 應該只要一個參數, 就是原始訊號的頻率, 而其強度則武斷地認定等於 0dB 。然後所有錄到的諧波加起來是多少 dB 就是多少失真。
<!-- BBCode Quote Start --><FONT COLOR=GREEN>
又例如一段聲音,如果我們要測的是中間部分的聲音,但是前後擁有很長的空白訊號,並且包含音效卡的背景噪音,那麼這前後兩段的空白部分越多,是不是影響整體 S/N 的比重越大?</FONT><!-- BBCode Quote End -->
計算的時候不要納入空白部份。
<!-- BBCode Quote Start --><FONT COLOR=GREEN>
基於以上兩個例子,所以我才會覺得,是不是只有當軟體真正知道原始的聲音是什麼,才能真正算出實際的 THD+N、IMD 等資訊?</FONT><!-- BBCode Quote End -->
軟體當然需要知道原始的聲音是什麼, 可是不需要真的去知道你所使用的 wave 檔是什麼。因為真正重要的只是 Frequency domain 的參數。就是頻率啦、強度啦...... Time domain 的資料並不重要。同樣是 1KHz 正弦波, 只要初始值不同, 做出來的結果就完全不一樣, 原始資料不是我們關心的。主要是測的時候 ( 計算的時候 ) 就應該用單純化的東西, 不是我們要的東西就不應該放進去, 如果像上面的例子一樣出難題, 就算有原始資料, 軟體也不知道該怎麼處理啊。
JamesT
神人
文章: 1347
註冊時間: 2001-01-04 08:00

文章 JamesT »

<!-- BBCode Quote Start --><FONT COLOR=GREEN>順道一題,我用CardDeluxe送24Bit的PCM給AD300,竟然可以正確解碼,可是它的codec的datasheet明明寫著只支援到20Bit,真是奇妙。
</FONT><!-- BBCode Quote End -->
我剛才去查了一下 SPDIF 的格式。得到的結論是這應該不成問題。反正多出來 4 個位元就不理它吧。我猜 SPDIF 的 MSB 應該是在最右邊(吧?)......

( http://www.epanorama.net/documents/audio/spdif.html )
DearHoney
神人
文章: 6487
註冊時間: 2001-01-03 08:00
聯繫:

文章 DearHoney »

<!-- BBCode Quote Start --><FONT COLOR=GREEN>DH> 基於以上兩個例子,所以我才會覺得,是不是只有當軟體真正知道原始的聲音是什麼,才能真正算出實際的 THD+N、IMD 等資訊?
JT> 軟體當然需要知道原始的聲音是什麼, 可是不需要真的去知道你所使用的 wave 檔是什麼。</FONT><!-- BBCode Quote End -->

感謝,終於解決我的疑惑。Cool Edit 好像是沒有算 THD+N 這類的功能,但是 SpectraLab 有,問題是我的 SpectraLab 已經過期不能在使用。印象中在我還能夠把玩 SpectraLab 的時候,找不到測試 THD 這類數值時的參數設定,反正就是丟個 wave 檔給他,他就可以算出一堆的數值給我們參考。可能是我玩的不夠仔細吧,也許 SpectraLab 有這些參數可以設定?但就是因為我自己沒有玩出那些設定,所以我對於 SpectraLab 算出來的東西覺得有點懷疑。

還是說,SpectraLab 另外有文件指出要測試某項數據時,使用者需要自行準備按照規定所錄下來的 wave 檔?例如要測諧波失真,SpectraLab 就有文件指示使用者要產生一個 1000Hz 0dB 的聲音來測試?
firtlaz
初學者
文章: 7
註冊時間: 2001-07-04 08:00

文章 firtlaz »

你們說到想要顯示動態的波形變化,我有想到一個辦法:
用 Camtasia 軟體,可以動態的抓螢幕顯示的畫面存成AVI
用他自己的codec可以抓到15fps沒問題(PIII-500)
不過可能會影響錄音或分析的動作(拖到電腦的速度?),那就要用
pc -> AV然後用另一台電腦錄了...
我猜DH大哥應該有足夠的設備可以做到任一種方案吧?

動態的波形似乎很有趣...

參考看看吧

Camtasia http://www.techsmith.com/
cpower
初學者
文章: 3
註冊時間: 2001-05-06 08:00

文章 cpower »

[b31]

其實真正要考慮的搞不好不是音效卡,而是令人頭痛EMI[電磁波、磁場干擾],
一般音效卡高頻有雜訊都是EMI問題,為什麼音效卡都不遮蔽,尤其鄰近的介面卡
沒做好EMI你就會有這問題困擾你

因為上次測試出如果連接線有鄰近高頻訊號的裝置,一般都會發生SN比下降
或是其他問題,

由下圖

ADSL 檔案下在中
圖檔

ADSL閒置中
圖檔
krys
初學者
文章: 37
註冊時間: 2001-01-08 08:00
來自: 台南市

文章 krys »

在採用44K或48K上,我認為若是這張卡不採用AC97架構(以前的音效卡),則只測44.1K,因為對於舊世代的音效卡,48K完全沒任何意義;有AC97的話,兩個都做是無妨的。

實際上我並不知道軟體實際測試時,是如何判斷的,我提供我個人的想法,但並不一定對。以THD為例,首先尋找最高點,若第二高的音量差很多,那當然就是以最高點那個頻率為基準;若有其他波形的音量和最高點差異不是很大(例如在9dB以內),而且是在左邊,那基準點就往左移....所以才會造成THD也會超過100%的現象?.........電腦要如何知道1KHz或2KHz為基準點這種事情,實際上你丟給它的測試檔不要太離譜,基本上應該沒有問題,要用2KHz,那當然2KHz是最高點嘍。

電磁波、磁場干擾、I/O衝突等等的干擾現像實在沒有辦法去考慮,我們只能在最單純的環境底下測試。就算兩台電腦有著同樣的配備,測出來也有可能不大一樣,但差異應該不大?若差異太大就表示有問題吧..... [b13]
LukeLo
神人
文章: 2100
註冊時間: 2001-01-04 08:00

文章 LukeLo »

我來提供一些測試結果。

首先是CardDeluxe的類比輸出,希望差異不要太大,否則就要進一步考慮統一訊號線。以下結果是在Win98下測得,與Win2k下的測試結果比較,可發現CardDeluxe在Win2k下表現較為優良,只有在96kHz 24Bit時Stereo Crosstalk較在Win98下高了2dB。
<a href="http://mp3.dearhoney.idv.tw/Ymf754/Card ... v">44.1kHz 16Bit</a>
<a href="http://mp3.dearhoney.idv.tw/Ymf754/Card ... sav">48kHz 16Bit</a>
<a href="http://mp3.dearhoney.idv.tw/Ymf754/Card ... sav">48kHz 24Bit</a>
<a href="http://mp3.dearhoney.idv.tw/Ymf754/Card ... sav">96kHz 24Bit</a>

再來是Labway XWave-6000(Ymf754),採用CardDeluxe錄音,解析度選24Bit。

Windows98,Vxd 2020
<a href="http://mp3.dearhoney.idv.tw/Ymf754/DS-X ... v">44.1kHz 16Bit Hi-Fi模式關閉</a>
<a href="http://mp3.dearhoney.idv.tw/Ymf754/DS-X ... v">44.1kHz 16Bit Hi-Fi模式開啟</a>
<a href="http://mp3.dearhoney.idv.tw/Ymf754/DS-X ... sav">48kHz 16Bit Hi-Fi模式關閉</a>
<a href="http://mp3.dearhoney.idv.tw/Ymf754/DS-X ... sav">48kHz 16Bit Hi-Fi模式開啟</a>

Windows 2000 Professional,WDM 5244,無Hi-Fi Mode可選。
<a href="http://mp3.dearhoney.idv.tw/Ymf754/YAMA ... v">44.1kHz 16Bit</a>
<a href="http://mp3.dearhoney.idv.tw/Ymf754/YAMA ... sav">48kHz 16Bit</a>

從上面的數據我們可以發現Hi-Fi模式對於44.1kHz輸出對頻率響應、交越失真和總斜波失真改善良多,而48kHz的頻率響應表現比44.1kHz好上不少。另外可發現這張卡在Win98下的表現比Win2k下好。

其實Stereo Crosstalk的數據參考價值較低,因為我曾經遇過同樣的設定下從-94.7dB到-97.4dB的變化。
<!-- Edit Notice Start -->

<font size=-1>[ 這篇文章在 2001-12-19 15:52 被 LukeLo 編輯過 ]</font><!-- Edit Notice End -->
LukeLo
神人
文章: 2100
註冊時間: 2001-01-04 08:00

文章 LukeLo »

剛剛測試了AD300與CardDeluxe間使用不同同軸數位線對輸出品質的差異,CardDeluxe錄音解析度為24Bit。

<a href="http://mp3.dearhoney.idv.tw/AD300/AD300 ... v">44.1kHz 普通類比同軸線</a>
<a href="http://mp3.dearhoney.idv.tw/AD300/AD300%2048.sav">48kHz 普通類比同軸線</a>

<a href="http://mp3.dearhoney.idv.tw/AD300/AD300 ... v">44.1kHz 第四台同軸線</a>
<a href="http://mp3.dearhoney.idv.tw/AD300/AD300 ... sav">48kHz 第四台同軸線</a>

採用的同軸線是在國際電子商場買的,大通牌五公尺NT110,搭配兩個RCA轉接頭各12元。測試時AD300只留下前置以Large Mode輸出。ADS2000由於輸出音量過小沒有到達RMAA的標準因此沒有測試。

從以上的測試結果我們可以發現播放44.1kHz訊號時,採用標準75 Ohm同軸線不但雜音減小了,動態範圍和總諧波失真都有改善。播放48kHz訊號時反而是類比線的雜音比較小,其餘項目差異不大,實在是相當有趣的結果。至於頻率響應的部分換線幾乎沒有影響,這與jitter理論所預測的結果相同。

實際聆聽我只有比較過44.1kHz的差異,採用類比線時聲音比較乾澀而背景比較毛噪,數位線聲音比較順耳,但是差異很小,要用耳機才能聽出差異。
<!-- Edit Notice Start -->

<font size=-1>[ 這篇文章在 2001-12-21 19:21 被 LukeLo 編輯過 ]</font><!-- Edit Notice End -->
回覆文章