[無聊首部曲] - PCM (S/PDIF) 訊號損失對聲音的影響

家用音響系統, 訊源、音響、家庭劇院、音響觀念等音響系統討論專區。

[無聊首部曲] - PCM (S/PDIF) 訊號損失對聲音的影響

文章chanlin 發表於 週日 10月 12, 2008 5:35 am

無聊的時候要幹什麼?

先來看一些影片好了,請到下列網址:

http://www.youtube.com/watch?v=me2xGttrnEY

吸滴普羅兔,那段其間偶正好也在學習當 Dx 套件裝配工, :mad:

先不談 jitter 或者把這隻吸滴普羅兔裝好了後,器材的音質會怎麼樣,

由於最近搞到一台有 USB-DAC 的耳擴,想到是否要用發燒 USB 線,要不要花錢試試看,

試了中等價位的 USB 線,萬一試不出來,那接著要試高價的 USB 線,想來想去就是要花錢, :bigcry: 所以,USB線就再說吧!

被偶的工程師知道偶在玩數位線或者打算玩 USB線,會被笑的 :keep: 。要偷偷地玩.......
最後由 chanlin 於 週二 10月 14, 2008 2:37 am 編輯,總共編輯了 1 次。
要努力賺錢,立志當大爺!
chanlin
SR40
SR40
 
文章: 0
註冊時間: 週二 7月 22, 2008 3:08 am

Re: [無聊首部曲]

文章chanlin 發表於 週日 10月 12, 2008 5:44 am

接著想到, CD Player 或音效卡,因為某些原因傳錯一個 data 給 DAC 的時候,到底對聲音由什麼改變?

要玩這個,我的經驗是,拿個(玻璃)光纖數位線,然後大力給它折一折,然後再比對比對, :mad:

小弟實驗的結果是,DAC 訊號會鎖不住,或者 DAC 上的繼電器一直動作.....這手法太激烈了。 :mad:
要努力賺錢,立志當大爺!
chanlin
SR40
SR40
 
文章: 0
註冊時間: 週二 7月 22, 2008 3:08 am

Re: [無聊首部曲]

文章chanlin 發表於 週日 10月 12, 2008 5:53 am

最近股票很慘,每天跌掉偶不少隻 AKG K702,沒錢再買線來試, :bigcry:

好吧!硬的不行就來軟的,無聊之餘寫了個 WAVE 的轉換程式。

http://www.FunP.Net/721283

這隻程式是把一個 wave 檔的 data 給它破壞一下,利用正常的PC音源與播放設備模擬真實情況下

因為某種原因而有 data loss 的聲音。

Edit: 檔案已經被移除並被取代。(2010/06/12)
最後由 chanlin 於 週六 6月 12, 2010 7:15 am 編輯,總共編輯了 1 次。
要努力賺錢,立志當大爺!
chanlin
SR40
SR40
 
文章: 0
註冊時間: 週二 7月 22, 2008 3:08 am

Re: [無聊首部曲]

文章chanlin 發表於 週日 10月 12, 2008 6:11 am

檔案下載後解壓縮,會有兩個檔案:

Boring_1.exe 241,664 bytes
無聊_1.txt 912 bytes


Boring_1.exe 是轉換程式,用古老的 Fortran 寫的,



"無聊_1.txt" 是設定參數,文字格式,可用記事本(notepad.exe)去編輯設定:

第一行是要處理的 wave 檔的 [檔名],檔名最多 64 個字元,

第二行是處理後,要輸出的 wave 檔的 [檔名],也是最多 64 個字元,

第三行是損失的 data 要如何處理,這邊有四種假設或 [模式],

第四行是資料損失的[週期間格],例如在 44.1KHz 輸入 44100 表示每秒損失 data 一次,輸入 4410 則表示十次

第五行則是每一週期下連續損失 data 的 [次數],建議用 1 或 2 即可,這個我本來是要模擬爆音的,不過,沒啥必要試了。

其後是無聊的屁話,沒作用的。

這隻程式,目前只支援 16bit, 二聲道 (stereo) 的 wave 格式,44.1, 48 或是 96 KHz 的取樣率應該都可以。

必須強調,把耳機或音響系統玩壞掉,本人概不負責。 :new002:
要努力賺錢,立志當大爺!
chanlin
SR40
SR40
 
文章: 0
註冊時間: 週二 7月 22, 2008 3:08 am

Re: [無聊首部曲]

文章chanlin 發表於 週日 10月 12, 2008 6:51 am

[吸滴普羅兔正宗第2集] 中有不少機司,那些機司買不起就算了,拿蔡大姊的 "被遺忘的時光" 來破壞破壞總可以吧!

這首被遺忘的時光,總長 2分41秒,wave 檔大概 27.78 MB左右。我用 Intel Core 2 Duo E4500 (2.2GHz) 約要 35 秒轉換,嗯,有點慢,隨便啦!

第四行建議先設定 44100,表示每秒 data 損失一次,且損失是週期性的。

第五行若設成 1,表示每次損失一筆資料,是左是右,由亂數決定。設成 2 則左右聲道的 data 同時都損失。



第三行就比較有趣了,也是我想比較久的地方,

第三行設成 0 的時候,當資料傳輸損失時,是假設 data 歸位為 "零"
設成 1 時,則假設損失的資料為最大值,16bit 的資料最大值是 32767
設成 2 時,則假設損失的資料為最小值,16bit 的資料最大值是 -32768

設成 3 時比較複雜,只改 16bit data 的其中一個 bit 的值,哪一個 bit 則是用亂數方式決定。
此時亂數挑到高位元的位址,那就跟設成1或2時差不多,
亂數挑到低位元的位址時,那改變不大。


第三行
設成 1 或 2,聽起來就是歌曲中加了個節拍器
設成 3 ,會是聲音忽大忽小的節拍器。
設成 0,.......嗯嗯,有趣。

供各位玩玩看吧!


盲目測試??
這個程式搞一稿啦,測同學朋友也好,請朋友測自己也好,不必線拔來拔去的還怕受測者偷看作弊..... :hand:


以蔡大姊的 "被遺忘的時光" 來試,與蔡小姐 "就是愛" 來測試,結論會差很多喔
蔡小姐的歌有人說原版的 wave 與 下載的 MP3 是聽不出差異...... :mad:

偶用這個搞破壞的程式弄一弄,
蔡小姐的歌 (我是用正版抓軌的,非 MP3),碰碰叫的,每秒內少一兩個 data ,好像,似乎,是沒多大關係 (是聽得出來啦,但....)。 :mad:
要努力賺錢,立志當大爺!
chanlin
SR40
SR40
 
文章: 0
註冊時間: 週二 7月 22, 2008 3:08 am

Re: [無聊首部曲]

文章chanlin 發表於 週日 10月 12, 2008 7:13 am

[無聊首部曲]....與 "無" 有關,個人想試試 data loss的聲音,loss 就是沒有就是 "無" 嘛.....(會凹吧) :mad:
[無聊二部曲]....與 "聊" 有關。coding中。
要努力賺錢,立志當大爺!
chanlin
SR40
SR40
 
文章: 0
註冊時間: 週二 7月 22, 2008 3:08 am

Re: [無聊首部曲]

文章chanlin 發表於 週日 10月 12, 2008 7:32 am

應該試試看這個才對:

http://www.ict.com.tw/DSP/hyperception/index.htm

有 F1 的日子還不算無聊。
要努力賺錢,立志當大爺!
chanlin
SR40
SR40
 
文章: 0
註冊時間: 週二 7月 22, 2008 3:08 am

Re: [無聊首部曲]

文章QUALIA 發表於 週日 10月 12, 2008 11:46 pm

USB 線....推薦 稍貴一點的飛利浦公司....聲音很直得喔
QUALIA
SR80
SR80
 
文章: 179
註冊時間: 週一 12月 25, 2006 5:22 pm
來自: 北極地帶

Re: [無聊首部曲]

文章chanlin 發表於 週二 10月 14, 2008 2:14 am

在下的本意,是想利用比較接近理想的重播系統,模擬使用爛數位線時所造成聽感上的差異,
聽聽 PCM stream 有傳輸錯誤的情形會發生什麼 (低頻變少?音場變小?還是歌者的口水聲不見了?)

先自我檢討,這次的模擬有兩大敗筆:

1. 程式設計時假設 data loss 是週期性的,真實狀況可能不是
2. 當 data loss 發生時,DAC 中的接收晶片到底是送什麼 data 給 DA chip,在此只考慮四種模式,似乎不夠全面與周延。


關於第一點,如果設定每一秒資料損失一次,那當試驗時忽然聽到一個不正常的訊號,下一秒則會期待另一個不正常訊號,
若事先不知道週期,但連續聽幾個不正常的聲音,大腦會學習並計算出週期,並期待下一次的發生。
因此,假設 data loss 是週期性的處理方式, data loss 在聽感上對聲音的影響會被放大。

第二點,這我就不知了。
理論上用模式 3 的亂數方式,16 bits 資料中亂挑一個 bit 把 0 改 1 或者把 1 改成 0,應該符合實際吧!
有高手可以指點嗎?


如果以上兩點並不是大大的瑕疵,那這個試驗所下的結論那是略為有趣的:

1. PCM 的數據,當 data loss 發生數次多時 ( 每一秒 loss 一次的頻率即很可怕),總有一次聽起來就是 (微小的) 爆音。
(請不要用碰碰叫的舞曲試)

2. PCM 的數據,當 data loss 發生時,不會改變低頻,音場,解析度之類的。與換數位線造成的聽感變化是差很多的。

3. 正常的數位播放設備,聽正常音樂 (如蔡大姊的),若總是聽不到 (微小的) 爆音,那這個系統至少在數位傳輸接收上沒有 data loss。
(這點素呼有問題。要質疑者,我們先同調一下,請您先聽聽看小弟所指的微小爆音是啥,在我的系統下是清楚的可以感受)


小弟也認為 (或經驗上) 用不同數位線,的確聲音略有不同,尤其較高價或者較解析的系統會更明顯。那到底是怎麼回事,所以


4. 一般合乎規格的不同數位線,其所造成的 jitter 變化,不至於到達 data loss 的程度。(那我用貴一點的數位線不就是白癡?)。

5. 水準以上的器材,其 Jitter 對聲音變化的關連性,推理是對接收晶片的工作負載產生影響,(不是對音樂 010101 的資料流產生突變),
進而 "間接" 影響 DA 晶片的工作效果而影響聲音,與 data loss 無關。


簡單講,經過試驗後,邏輯上是, 正常音樂的 PCM 的資料串中因各種原因而有 data loss or error,會聽到微小的爆音!
最後由 chanlin 於 週二 10月 14, 2008 11:07 pm 編輯,總共編輯了 1 次。
要努力賺錢,立志當大爺!
chanlin
SR40
SR40
 
文章: 0
註冊時間: 週二 7月 22, 2008 3:08 am

Re: [無聊首部曲]

文章chanlin 發表於 週二 10月 14, 2008 2:24 am

小弟的測試器材是

X-Fi XM 音效卡 (DIY 用BNC母座輸出數位訊號)

KECES 豆腐機 (改電源,改 BNC in/out,改內部一小段配線)

Corda Opera (使用 S/PDIF 訊源,數位是 RCA 母座沒改),拿這台來試驗的好處是,
opera 沒有內部的 DSP chip (如DF1700, DF1704),原資料送到 PCM1794 做 DA

敗耳 DT990

BNC-BNC 與 BNC-RCA 數位線都是 Belden 的,型號忘了,RCA 頭是 WBT 號稱 75 ohm 的。
要努力賺錢,立志當大爺!
chanlin
SR40
SR40
 
文章: 0
註冊時間: 週二 7月 22, 2008 3:08 am

Re: [無聊首部曲]

文章chanlin 發表於 週二 10月 14, 2008 2:46 am

QUALIA 寫:USB 線....推薦 稍貴一點的飛利浦公司....聲音很直得喔


2多謝 QUALIA 兄的指示,請問這線有型號嗎? Thanks.
要努力賺錢,立志當大爺!
chanlin
SR40
SR40
 
文章: 0
註冊時間: 週二 7月 22, 2008 3:08 am

Re: [無聊首部曲]

文章unique01ping 發表於 週二 10月 14, 2008 10:55 am

chanlin 寫:
QUALIA 寫:USB 線....推薦 稍貴一點的飛利浦公司....聲音很直得喔


2多謝 QUALIA 兄的指示,請問這線有型號嗎? Thanks.


不知道是不是這款

http://www.p4c.philips.com/files/s/swu1 ... ss_eng.pdf
unique01ping
SR40
SR40
 
文章: 1
註冊時間: 週一 10月 25, 2004 1:09 pm

Re: [無聊首部曲] - PCM (S/PDIF) 訊號損失對聲音的影響

文章EX-S 發表於 週二 10月 14, 2008 12:00 pm

錄音上來說

我個人有投資過1394的線材感覺投資比較划算....

也許是設備等級不同的關係!?
LHH-1000 suit

DIGI 002 Factory

Sonic studio ADA
EX-S
SR40
SR40
 
文章: 13
註冊時間: 週二 4月 18, 2006 11:39 am
來自: Nevernever land

Re: [無聊首部曲] - PCM (S/PDIF) 訊號損失對聲音的影響

文章herroyuihk 發表於 週二 10月 14, 2008 3:16 pm

EX-S 寫:錄音上來說

我個人有投資過1394的線材感覺投資比較划算....

也許是設備等級不同的關係!?

我買了Ortofon的I.link接AF4
基本上聽不出區別 :mad:
不要勸我去買Siltech :hard:
頭像
herroyuihk
SR40
SR40
 
文章: 3
註冊時間: 週六 4月 24, 2004 11:05 pm
來自: 新竹

Re: [無聊首部曲] - PCM (S/PDIF) 訊號損失對聲音的影響

文章superpipi 發表於 週二 10月 14, 2008 8:16 pm

因為電腦中是數位化處理
1000111
1000110
我們人眼看起來很像只差了個1
但是decode結果就會天差地遠 :ho:

如果一條線濫到會data error 那已經是不良品,不應該出現在市面上販售的.. :eeh:
數位線材對聲音的影響 我認為應該要在相同環境下測量jitter值跟波形比較有意義
superpipi
SR40
SR40
 
文章: 0
註冊時間: 週四 5月 13, 2004 4:12 am

Re: [無聊首部曲] - PCM (S/PDIF) 訊號損失對聲音的影響

文章chanlin 發表於 週二 10月 14, 2008 11:21 pm

herroyuihk 寫:
EX-S 寫:錄音上來說

我個人有投資過1394的線材感覺投資比較划算....

也許是設備等級不同的關係!?

我買了Ortofon的I.link接AF4
基本上聽不出區別 :mad:
不要勸我去買Siltech :hard:


邏輯上是只要您不要公開宣稱 "換 1394 線 沒有效果",
就不會有用 Siltech 的人跳出來說您 XXXX.

小的在 "猜" 是不是您的 P1A 把 1394 線的差異變小了?

我用不同 1394 線傳 DV,有差啦!有的線容易 lose frame 說。
另外用不同 USB 延長線接隨身碟,速度也是有差,且差距不是資料有沒有重整的那種差距。

再另外,偶今年買了一個廉價機殼在宿舍用,機殼上內附的前面版 USB 座 (與線) 上不了 USB 2.0,
只能 USB 1.1..... :mad:


to pipi兄,
您可能還不知道業界的黑暗面..... :eeh:
若 (用儀器) 判斷消費者不會知道時,業界有何不敢的,大牌子也不會清高到哪裡。
台灣應該還好,
大陸這邊的不良品蠻好找的吧,把消費者當其 QA 員工用。
要努力賺錢,立志當大爺!
chanlin
SR40
SR40
 
文章: 0
註冊時間: 週二 7月 22, 2008 3:08 am

Re: [無聊首部曲] - PCM (S/PDIF) 訊號損失對聲音的影響

文章ETK 發表於 週日 10月 19, 2008 11:22 am

data loss 有很多形式的.
有一種跟 buffer underflow /overflow 有關.
可以假設 source /DA 的 PLL 做不好, 兩地頻率有 誤差,
如果 DA clock 較快 ,每隔一段時間會 DA 要抓 data 會抓不到. 這時 DA 有可能會 repeat last data , 或是亂送 0 ..
如果 DA clock 較慢, 則是會 drop 掉一個 data.

如果受到 jitter 影響, 頻率忽快忽慢, 上述兩種現象會交互出現.

之前有做過這樣的實驗, 如果聽鋼琴的話, 會很明顯, 久久出現一些像炒豆子的聲音.
聽 heavy metal 的話 ... 感覺不出來 ... 音樂本身就太吵了 :hand:
頭像
ETK
SR40
SR40
 
文章: 0
註冊時間: 週日 1月 13, 2008 1:43 am

Re: [無聊首部曲] - PCM (S/PDIF) 訊號損失對聲音的影響

文章jjj121 發表於 週日 10月 19, 2008 11:32 am

herroyuihk 寫:
EX-S 寫:錄音上來說

我個人有投資過1394的線材感覺投資比較划算....

也許是設備等級不同的關係!?

我買了Ortofon的I.link接AF4
基本上聽不出區別 :mad:
不要勸我去買Siltech :hard:


Kimber Kable也有出這種usb cable線材
http://www.headphone.com/products/cable ... us-15m.php

之前有想買來試試看, 想想算了, 要音質好時聽cdp就好了
jjj121
SR40
SR40
 
文章: 0
註冊時間: 週日 9月 30, 2007 10:40 pm

Re: [無聊首部曲] - PCM (S/PDIF) 訊號損失對聲音的影響

文章chanlin 發表於 週六 6月 12, 2010 6:23 am

ETK 寫:data loss 有很多形式的.
有一種跟 buffer underflow /overflow 有關.
可以假設 source /DA 的 PLL 做不好, 兩地頻率有 誤差,
如果 DA clock 較快 ,每隔一段時間會 DA 要抓 data 會抓不到. 這時 DA 有可能會 repeat last data , 或是亂送 0 ..
如果 DA clock 較慢, 則是會 drop 掉一個 data.

如果受到 jitter 影響, 頻率忽快忽慢, 上述兩種現象會交互出現.

之前有做過這樣的實驗, 如果聽鋼琴的話, 會很明顯, 久久出現一些像炒豆子的聲音.
聽 heavy metal 的話 ... 感覺不出來 ... 音樂本身就太吵了 :hand:



寫了個 repeat last data 的小程式,下載網址:

http://www.FunP.Net/106018

檔案為 waveloss.zip (111KB or 113,762 Bytes)

解壓縮後有兩個檔案,

wave_loss.exe (232KB or 237,568 Bytes)
wave_loss.ini (64 Bytes)

有興趣者,不妨下載,準備一個 wave file (16, 24 bit 皆可,44.1, 48, ..... 都可以),
用這個小程式產生一個模擬有 data loss ,且遺失的資料是用上一筆資料取代,而不是填零。
要努力賺錢,立志當大爺!
chanlin
SR40
SR40
 
文章: 0
註冊時間: 週二 7月 22, 2008 3:08 am

Re: [無聊首部曲] - PCM (S/PDIF) 訊號損失對聲音的影響

文章chanlin 發表於 週六 6月 12, 2010 6:37 am

上面 wave_loss.ini 為文字檔,共四行,請自行用 "記事本" (Notepad) 或者 UltraEdit 等修改編輯。

Line 1: 要處理的 wave 檔,檔名請不要有空白 (blank)
Line 2: 產生有資料遺失的 wave 檔
Line 3: 每次遺失的資料 (連續) 筆數
Line 4: 遺失資料的發生週期,取樣率為 44.1k 時,輸入 44100 表示每秒遺失一次,若輸入 4410 表示一秒十次損失,左右聲道皆一起處理

執行後會多產生一個 waveheader.txt 的文字檔,這是該 wave 的檔頭,供參考而已。

將要處理 wave 檔與此 exe, ini 檔放在同一個子目錄,
修改 wave_loss.ini
執行 wave_loss.exe
就會產生另一個 wave 檔
兩個 wave 檔用 foobar2000 或 wavelab...播放,就可比較出有 data loss (repeat last data) 聽起來是如何。


關於設定的參數,
參照底下 LukeLo 兄所做的 Rotel RCD-971 的測試,
"錯誤的sample數量極少,五分鐘的音樂可能只有幾百個samples"

viewtopic.php?f=10&t=445&p=8600&hilit=pll+rotel#p377

所以建議第三行為 1,第四行給 44100 差不多,每秒遺失一次 data,五分鐘遺失 300 筆 (左+右共 600 筆)

若第三行為 3,耳機是 M1,耳擴與 DAC 是 TC electronic SK48,
我聽起來雖不是像補零時的爆音這麼誇張,而是有很明顯的 "炒豆聲"。
最後由 chanlin 於 週六 6月 12, 2010 6:00 pm 編輯,總共編輯了 3 次。
要努力賺錢,立志當大爺!
chanlin
SR40
SR40
 
文章: 0
註冊時間: 週二 7月 22, 2008 3:08 am

Re: [無聊首部曲] - PCM (S/PDIF) 訊號損失對聲音的影響

文章chanlin 發表於 週六 6月 12, 2010 6:51 am

底下連結是 Altera 網站上發表 Jitter 相關的一些文,我是覺得還不難懂,

http://www.altera.com/support/devices/p ... itter.html

jitter 如何影響音質,或許只有做 IC design 的人才知吧!

--------------------------------------------------------------------------------------------------------------

經由在下所做的一些資料遺失的模擬,
當接收器有 data loss ,不管是補零或用 repeat last data,聽起來不會影響空間感或音色之類的,

建議測試時,用錄得還不錯的 solo 音樂,流行樂的話如蔡琴 [機遇] 這片第三首 "六月茉莉",前九秒的資訊量夠多了,
太熱鬧的音樂可能聽不出爆音或炒豆聲。

若有很聰明的接收器發出訊號讓 DSP 用前面數個 data 去預測該補和數值 ..... 若有這東西,.....再說吧!
要努力賺錢,立志當大爺!
chanlin
SR40
SR40
 
文章: 0
註冊時間: 週二 7月 22, 2008 3:08 am

Re: [無聊首部曲] - PCM (S/PDIF) 訊號損失對聲音的影響

文章Higuma 發表於 週六 6月 12, 2010 10:25 am

chanlin 寫:上面 wave_loss.ini 為文字檔,共四行

Line 1: 要處理的 wave 檔,檔名請不要有空白 (blank)
Line 2: 產生的 wave 檔
Line 3: 每次遺失的資料 (連續) 筆數
Line 4: 遺失資料的發生週期,取樣率為 44.1k 時,輸入 44100 表示每秒遺失一次,左右聲道一起

執行後會多產生一個 waveheader.txt 的文字檔,這是該 wave 的檔頭,供參考而已。



參照底下 LukeLo 兄所做的 Rotel RCD-971 的測試,
"錯誤的sample數量極少,五分鐘的音樂可能只有幾百個samples"

viewtopic.php?f=10&t=445&p=8600&hilit=pll+rotel#p377

所以建議第三行為 1,第四行給 44100 差不多,每秒遺失一次 data,五分鐘遺失 300 筆 (左+右共 600 筆)

若第三行為 3,耳機是 M1,耳擴與 DAC 是 TC electronic SK48,
我聽起來雖不是像補零時的爆音這麼誇張,而是有很明顯的 "炒豆聲"。


所以.我一直認為不同數位輸出裝置對聽感產生的差異,不太可能是data loss之類的問題,

因為那對聽感的影響是"破壞性"的fail,我們會直覺"出現問題了 哪裡沒弄好",而不單單只

是"這聲音糊掉了,沒層次感......blablabla"之類音質上的不滿.
Higuma
SR40
SR40
 
文章: 7
註冊時間: 週三 10月 05, 2005 8:19 pm


回到 音響系統討論版

誰在線上

正在瀏覽這個版面的使用者:Google [Bot] 和 84 位訪客