[心得] 运用 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