[心得] 運用 Chrony 對時工具提升音訊品質

作者: elguapo (HPHT Synthesized)   2023-07-10 21:09:44
「紊亂的電腦系統時鐘,經過對時調節(realtime clock)到接近 AES11 Grade 2
的精度,進而增進電腦音訊品質。」
自從開始使用 Ravenna/AES67 AoIP 之後,對於時間的準確度也越來越要求;不久
前收了一張具備 GPS 接收器的 Intel E810-XXVDA4TGG1 網路卡,作為我的 AES67
的主時鐘,並將開箱文貼到 audiophilestyle 網站:
https://tinyurl.com/3p8ccjv2
本來想在 ptt 補充一下中文的部分,但後來發現有更值得討論的內容,遂決定先來
寫關於電腦作業系統時鐘的校對問題。
以 48000Hz 取樣率的音樂來說好了,相信很多燒友應該會認為是 48000Hz 的「
載波」在傳遞音訊。若有讀過 AES3 以及 AES67 的規範,其實音訊的傳遞是「每秒
傳送 48000 個取樣值」,若切更細一點,以 AES67 來說,數位音訊是每 1ms 傳送
48 個取樣值到目的地。
「若系統時鐘不穩定,充滿 jitter 而且偏移嚴重,那麼這個 1ms 還會是 1ms 嗎?」
——這是我開始自己建構 AES67 主時鐘的時候不斷思考的問題。
成功的將 Intel E810 設定為我的 AES67 主時鐘之後,也嘗試將這張網卡當成我的
HQPlayer Embedded 伺服器的主鐘,機制是:
1. 依據 GPS 1PPS 信號 rising edge 擷取 GPS 模組解出的 NMEA 訊息 ->
2. 把 NMEA 更新至網卡上的 PTP hardware clock ->
3. 運用 PTP hardware clock 去同步系統時鐘 CLOCK_REALTIME 以及 AES67 的器材。
經過這樣的對時,HQPe 主機的時間精度可以達 +-10ns 範圍!個人發現 HQPe PCM
的升頻變好聽很多,毛躁感降低不少,慢慢的也懶得升頻 DSD 了。
https://imgur.com/E1aTEZm.jpg
後來再進一步將我的 Fitlet3 NAA 用光纖掛上 E810 的其中一個 SFP28 port,
用同個 PTP hardware clock,傳送 layer 2 的 802.1AS gPTP 的對時資料給
Fitlet3。
https://imgur.com/etMHOn7.jpg
Fitlet3 的 CLOCK_REALTIME 雖然沒有很好,但精度還是能摧到 +-30ns,與 HQPe
server 同步後的聽感是,空間的殘響尾韻更顯著且又長了一點!
沒想到電腦主機正時之後的音訊品質,其改善幅度大到可以複製給來訪的朋友分辨,
所以乾脆愛屋及烏,把沒有辦法做 PTP 對時的電腦用 NTP 伺服器對時看看,結果
也是能得到很大的幫助!
我的 Atmos music 有 98% 是來自 Apple Music,將來源 Mac Mini M1 電腦用
本地端的 NTP server 做密集對時之後可達 <+-10us,Apple Music Atmos
定位精確度提升,尤其聽大編制的交響樂或大合唱,混亂感降低很多。
因此我想在這篇文章先介紹 Chrony 這個工具給諸君試看看。
Chrony 在 Linux 是家喻戶曉的對時工具,可以手動選擇離自己家最近的 NTP
伺服器,也能手動改動對時的次數頻率。
macOS 已經有 GUI 版,解壓縮立刻能執行:
https://whatroute.net/chronycontrol.html
第一次執行 ChronyControl 會提醒您將系統的自動對時關閉,畢竟兩個對時軟體
同時執行會打架,造成時鐘更紊亂。
Chrony 的介面很容易閱讀,跟 Linux 的 chronyc 一模一樣:
https://imgur.com/JXzcrkR.jpg
由於預設的伺服器通常比較「遠」(延遲較高),以個人經驗來說,最近的 NTP
伺服器理當是本地端的,其次是 ISP 提供的(但 ISP 提供的 NTP 伺服器階層可能
只到 Stratum 2);最好的 NTP 伺服器當是國家提供的,是直接和原子鐘對時的
Stratum 1 等級。
我國設立的 NTP 伺服器是這幾個:
tock.stdtime.gov.tw
watch.stdtime.gov.tw
time.stdtime.gov.tw
clock.stdtime.gov.tw
tick.stdtime.gov.tw
可以用編輯的方式將這些伺服器鍵入 Chrony 的設定檔(按下 ChronyControl 視窗
左上角齒輪就會出現文字編輯器):
https://imgur.com/uM9ZbaK.jpg
按下右下角 Check Syntax 按鈕之後,只要文法沒錯誤,就能繼續按最右邊的
Install Config。
這樣 Chrony 就開始抓可用的 NTP 伺服器,並且選擇誤差最小的那個為主要對時
對象。
由於系統時鐘很快就會歪掉,所以若要長時間保持在 AES11 Grade 2 +-10ppm
(+-10us),那麼就必須要增加對時頻率;為了避免被 NTP server 視為惡意行為
(過度的 polling 可能會被判斷為 DDoS),個人建議對時頻率別太緊密,大約
10~30s 範圍都能接受。
若觀察到有理想的 NTP server 在附近,那麼就能在 Chrony 設定檔指定該台伺服
器對時的頻率,寫上:
server watch.stdtime.gov.tw minpoll 4 maxpoll 4 prefer
這段設定的意思是將 watch.stdtime.gov.tw 這台 NTP 伺服器當成我的最愛,然後
每 16 秒向她送出對時申請。
ChronyControl 有繪圖功能,按下視窗上緣的 Live Tracking 按鈕,可以觀察開始
對時之後系統時鐘的修正狀態:
https://imgur.com/gRrAVjF.jpg
主要看橘色的線,是代表系統時間均值,以截圖來看,我的 MBP13" 經過對時可以
達到並穩定在 AES11 Grade 2 +-10ppm 的要求了。
由於我對 Windows 作業系統工具不是很熟,增加對時頻率的方法可能要請版上高人
補完了... Orz
希望這個 Linux or macOS 系統設定的變動能為「以電腦為主要播放器材」的版友
帶來助益 :-)
「對時,是為了要有:一致的一秒長度、一致的一秒起點以及一致的曆日」。
作者: Zyar (Zyar)   2023-07-10 21:47:00
感謝造福眾小資 已設置且感受明顯
作者: MoneyBlue (愛死娘子咪啦!!)   2023-07-10 21:51:00
雖然看不懂還是推
作者: qo3650 (江湖一把刀去一下 在看要)   2023-07-10 21:52:00
謝分享 順便問apple music 在mac還是不會自動抓分辨率嗎(取樣率補推
作者: lee28119 (德莫尼克)   2023-07-10 22:10:00
這樣效果有比外接主時鐘還好嗎?
作者: dancehotdog (長大就知道了)   2023-07-10 22:30:00
只會win10手動對時完快速聽歌
作者: Oswyn (Oswyn)   2023-07-10 22:46:00
對時完 不還是照自己的時鐘跑嗎:D
作者: dancehotdog (長大就知道了)   2023-07-10 23:11:00
如果有時鐘 感覺自己做個NTP伺服器 給所有設備
作者: uone (魚丸)   2023-07-10 23:27:00
推 但我疑惑的點是 對時以後 晶振的品質還是一樣沒有改變啊?但為了以後演場會更好搶票 我還是做了正時XD
作者: iitze (ici la lune)   2023-07-10 23:39:00
推,感覺很有趣,晚點來試試
作者: Oswyn (Oswyn)   2023-07-10 23:42:00
個人覺得正時不是重點,而是網卡成為主時鐘取代了主機版載的爛鐘,從而減少飄移
作者: ganei (菜虫)   2023-07-10 23:50:00
要網路卡的clock jitter低,建議找10G以上的規格,但是溫飄(單位PPM)跟jitter (單位ns/ps/fs)是兩回事,不同規格
作者: louis0407 (能當個鄉民也是一種幸福)   2023-07-11 01:19:00
同意Oswyn講的,音訊重播這塊,絕對時間的長期準確性不很重要,反而是時鐘訊號短期內的穩定性,或者轉化後的所謂相位噪訊,才是關鍵。這跟是不是AOIP無關,概念上類似你音訊是在某時某分某秒完美準確時間開始播放還是在誤差0.0001秒後播放,對聆聽者來說無妨,關鍵還是你最終硬體參考的時鐘訊號本身的穩定度能讓每個封包作動的時間間隔夠精準,也就是我說的短期穩定性。這部分考慮網路封包本身延遲的晃動,對時機制反而變成一種干擾,以上是我個人看法。順便問一下Oswyn,關閉Hpet之後,一般系統時鐘應該是直接吃CPU的TSC吧? 那這樣精確度其實也很高了。
作者: tienam (已有太多鍵盤)   2023-07-11 01:34:00
https://www.timesynctool.com/以上連結是windows對時工具,安裝後把server設定一下然後連線到https://time.is 看看對時效果但說真的,我替DDC加上個10M鐘,對音色的提升程度很小所以頻繁的讓PC與NTP server對時,我可能聽不出來差異吧
作者: Bencrie   2023-07-11 01:53:00
一般 clocksource 有這三種,tsc/hpet/acpi 可以都測看看
作者: Oswyn (Oswyn)   2023-07-11 02:07:00
我個人是覺得「時間」跟「計時」是兩件事,就像 TSC 本質是個計數器,一般來說 TSC 是 ns 等級、HPET 是 100ns但這些計數器還是要以其「頻率」回推才能得出「時間」時間關鍵應用需要的是頻率穩定、計數就會穩定、間隔才會穩其實就是我在 #1aMUsw3K 這篇裏提到的 Drift 問題
作者: lee28119 (德莫尼克)   2023-07-11 02:16:00
比方說 這個系統加上一台MERGING+CLOCK做主時鐘 這樣跟現在這個作法有什麼差別嗎?不是很懂
作者: greg7575 (顧家)   2023-07-11 07:41:00
LP播放你會在意馬達轉速穩定,還是要變DJ台?裝一個電波錶,"對時"拉拉扯扯這樣子的感覺嗎?
作者: dragon2543 (動霸)   2023-07-11 07:42:00
市售電腦可以接鐘的產品,可以參考sotm
作者: greg7575 (顧家)   2023-07-11 07:44:00
每30秒DJ打碟囉!
作者: louis0407 (能當個鄉民也是一種幸福)   2023-07-11 08:53:00
一致的一秒長度是關鍵沒錯,但十秒一次的對時能改善這件事? 我意思是能影響振盪器本身的相位噪訊? 我理解的是對時能通過校準讓對時瞬間的絕對時間對齊,但這能影響振盪器本身的穩定度? 如果可以的話那確實會有用。
作者: chiyoda (博愛的千代田提督)   2023-07-11 09:24:00
其實前面網友都說的很清楚了,“長時間準”對音樂系統跟本一點都不重要,短時間準才是重點,每十分鍾差個一秒跟本感覺不出來的,但拍子忽快忽慢就不行再者訊號到dac之後,都用dac的鐘了,前面的訊號(電腦)再如何準,意義不大
作者: tedliu1024 (泰德大王)   2023-07-11 09:58:00
聽說如果用DDC走II2(hdmi)餵訊號給DAC,時鐘會以DDC(電腦/外接)為準,是真的嗎?
作者: shukushoku (MW)   2023-07-11 10:02:00
回樓上 看dac設計 i2s有clock訊號沒錯 但還是得看dac吃不吃 另外,現在ddc一般都是用非同步usb了,所以應該不會吃電腦的clock
作者: xoy (XerXes)   2023-07-11 10:13:00
通常需要頻繁校時的系統時鐘的品質就不會太好,我自己工作上有對時間要求非常嚴格的系統,通常這種系統上要調一秒都要花數小時甚至一整天去慢慢攤平那一秒,不會頻繁跟Time Server校時
作者: djboy (雞尾酒)   2023-07-11 10:43:00
XOY 說到重點,確實就是目前的主流結論。原原PO 這麼的熱血的製作並分享,值得給推m文啊
作者: greg7575 (顧家)   2023-07-11 11:07:00
clock是振盪精度不是中原標準時間
作者: m9172250 (bahpomet)   2023-07-11 11:10:00
非同步不吃電腦clock然後此clock跟彼clock不一樣吧?穩定度跟對齊兩者不太一樣吧?
作者: jakkx (風藍)   2023-07-11 11:41:00
我覺得"clock"這個字可能某種程度讓人誤解了不過不可思議的是有人試有明顯改善那試試再說...
作者: m9172250 (bahpomet)   2023-07-11 12:31:00
作者: jakkx (風藍)   2023-07-11 12:48:00
看到後面說明就知道你是混淆了…
作者: sunday0913 (此帳號已易主)   2023-07-11 12:51:00
資料傳輸的interface通常用的是晶振吧…
作者: Oswyn (Oswyn)   2023-07-11 13:21:00
所以說 Mac's Audio 設定裏的 clock 都是 I/F not SystemAudio device 是不看 系統時間 的
作者: kshieh   2023-07-11 13:39:00
不懂明明很簡單的close loop控制,要用那麼複雜的open loop來解?
作者: jakkx (風藍)   2023-07-11 13:49:00
抱歉。我看本文還不確定是不是真的這樣…只是覺得不可思議那外接時鐘是拿來對時嗎?
作者: Oswyn (Oswyn)   2023-07-11 13:51:00
外接時鐘是為了 同步
作者: jakkx (風藍)   2023-07-11 13:51:00
我是指樓主的情況……不然外接時鐘是為了對時嗎?- -
作者: Myt33   2023-07-11 13:52:00
看不太懂@@ 電腦系統比NTP server慢1秒,會如何影響效能?電腦沒對時的話 (斷網),應該不會影響本機每1秒內的長度啊?還是指電腦沒定期對時的話,本機每1秒內的長度會改變? (跑掉
作者: m9172250 (bahpomet)   2023-07-11 13:56:00
a從起點直線走到十米外b從起點後一米直線走到離起點十一米a在丟飛鏢時都丟在靶心散佈5cmb固定丟在右側密集不散開1cma以等頻率實時同步投影字母給a2念稿b稍加整理後以每段方式丟給b2念稿a這邊以精準的每秒寫一個字 湊出一段句子 丟給b讀稿結果b不理a照自己的語速去讀稿b念出來後 a發現b念錯了a發現b根本不屌他也無法阻止b
作者: Oswyn (Oswyn)   2023-07-11 14:15:00
https://i.imgur.com/OilLwDf.jpg據我所知的 Audio device's clock 跟 roon 的解釋一致我猜原PO看到的 Roon 所說以電腦播放是以電腦自己的鐘為準應該指的是電腦上的 Audio device's clock not system's
作者: djboy (雞尾酒)   2023-07-11 14:40:00
https://reurl.cc/XExV7D 外接時鐘主要是在錄音室之類,大約有7+以上的器材需要同時運作,所以時間必需要對齊,錄出來的聲音才會準確。一般人的設備就3、4台,實在用不太到;而且DAC也是用旁邊的晶振是最好且誤差最小。
作者: sxing6326 (話題終結者)   2023-07-11 14:43:00
low phase noise跟準不準沒什麼關聯,很早以前Lavry就有文章打臉那些拿原子鐘做world clock的根本沒什麼屁用了現在DAC做時基重整的手段一堆,最高級的就是搞一個lowphase noise的OCXO當時鐘
作者: louis0407 (能當個鄉民也是一種幸福)   2023-07-11 14:55:00
其實我也不懂原Po為何一直覺得系統時間跟振盪器無關?在free clock下他就是要吃某顆振盪器的訊號啊,也許是CPU的TSC或是板子上的HPET。同步頻率十秒一次能改變這些原有振盪器的穩定度或者說相位噪訊? 我覺得這才是關鍵。
作者: sxing6326 (話題終結者)   2023-07-11 14:58:00
我前面說法有點問題world clock做同步其實有用,算是dejitter一種手段,沒用的是拿原子鐘做world clock,那種東西相噪根本比不上高檔的ocxo,高精度不等於低相噪現在大家常用USB DAC大部分是非同步模式,那其實搞定DAC上的時鐘就好,系統本身不重要
作者: lacer (期末啦)   2023-07-11 15:53:00
時鐘跟振蕩器是不同的東西 不是說無關啊 振蕩器可以是提供每秒的時間長度 但要決定時間幾點幾分 就是要跟標準時區對時 這樣起點才是對的 但是看樓上回了一串 我還真的看不懂如果Roon的協定就是會用到電腦的時鐘 那大家一起跟中原標準時間對時 這樣沒毛病啊 USB DAC是非對稱運作 所以roon endpoint對時 全部數位訊號到了DAC 就是用內建的晶振來做時間刻度的來源 我是想不出來哪邊有問題
作者: m9172250 (bahpomet)   2023-07-11 16:02:00
這個"大家"就很麻煩了
作者: bt092001 (一條魚)   2023-07-11 16:34:00
USB DAC不是這樣運作的…
作者: icekiba (冷風寒)   2023-07-11 16:35:00
OOYA
作者: greg7575 (顧家)   2023-07-11 16:41:00
振盪器ticks決定時間總長度。拜託不要再執著了好嗎爛錶無論你怎麼事後校正還是爛,不會改變它爛的事實不然一堆溫補晶振是做心酸的喔?跟中原標準時間校正啊反正只要有校正就對了,就是這麼簡單齁(?
作者: icekiba (冷風寒)   2023-07-11 16:43:00
壞掉的Clock總是會準2次(X
作者: chibob (lead)   2023-07-11 17:04:00
我比較好奇大家對串流這麼多意見這麼多花招 為甚麼還要玩串流…
作者: icekiba (冷風寒)   2023-07-11 17:10:00
自己找事情做的概念吧
作者: lacer (期末啦)   2023-07-11 18:30:00
那怎麼又不講OCXO的飄移跟壽命呢 如果真的這麼好 那幹嘛有些地方需要用可以校正的VCXO 再說本文是說Roon的發送信號系統時間 普通電腦沒有人在OCXO
作者: yamatai (迴避性人格障礙症)   2023-07-11 18:56:00
老話一句 數位比黑膠還難搞
作者: icekiba (冷風寒)   2023-07-11 19:00:00
可是數位比較方便阿
作者: yamatai (迴避性人格障礙症)   2023-07-11 19:06:00
所以我也是大部分聽 youtube 笑死
作者: icekiba (冷風寒)   2023-07-11 19:20:00
都好阿
作者: tienam (已有太多鍵盤)   2023-07-11 20:12:00
數位太方便,所以我聽串流,幾十萬曲目隨選多爽目前NB走usb到DDC,轉成同軸到DAC,所以我只要搞定DDC時鐘即可,於是我把DDC外掛10M時鐘,有沒有用?有,但效益不大.
作者: icekiba (冷風寒)   2023-07-11 20:14:00
擲筊
作者: jakkx (風藍)   2023-07-12 11:51:00
玩了才知道問題在那裡啊。用看的那來的意見…
作者: icekiba (冷風寒)   2023-07-12 12:31:00
用看的是趨勢 例如:鋼琴

Links booklink

Contact Us: admin [ a t ] ucptt.com