HIFI日记:DIY高性能音乐服务器(2022.8.31更新)
有段时间没更新,主要是工作忙,捣鼓东西不多。但最近BLOG主有位朋友嫌弃自己的群晖NAS风扇声音太吵,希望重新搞一台NAS做ROON CORE。正好BLOG主希望深入研究一下这方面的问题,因此就一拍即合,开始捣鼓做一台这样的音乐服务器了。
最早引出这个概念,是测评NK时候(点我),NK的CD直出声音大幅度领先内置SSD和网络串流。当时BLOG主判断,这应该是数字音源、网络隔离等众多因素导致的。具体原因则是更多了,比如供电部分没搞好、CPU高频运行产生的jitter、音源部分的晶振过于拉胯等等。
一、硬件部分
确定下组装一台高性能音频服务器后,第一步就是硬件选择,主要是CPU、主板、硬盘、电源这几个部分需要慎重考虑。
1、主板
一开始考虑主板,直接就锁定DC供电类型的主板,将整个供电部分交给线性电源,将交流电转变成直流电再输入,应该是最佳选择。而主板需求也并不高,供电部分不偷工减料、有原生nvme口、有原生sata口基本上就足够了。如果打算将流媒体部分做的更极致一些,可以考虑原生带SFP光口的主板。
更新:经过与朋友们讨论,主板的选择有了更新的方案,正常的ATX版型通过HIFI级别的DC-ATX转换器也可以达到很好的效果。虽然花费明显超过上述方案,但是对于需要搭载更高功耗的CPU以实现HQPlayer升频的玩家来说,这个选择也是相当优秀的。
2、CPU
CPU参考当前一票大几万的音频服务器,BLOG主认为应该选择同时具备核心数多、频率低、发热低的CPU。一方面是HQplayer是比较吃CPU资源的,核心数多,可以将CPU频率尽可能压下来,因为高频会引入非常严重的输入噪音。而如果不使用HQPlyaer,仅作为ROON CORE使用,那甚至J1800都CPU都应该够用。
更新:BLOG主发现,当期CORE最大的问题应该就是高频噪音和升频性能之间的矛盾了。在查阅了当前国内外10W以内几乎所有的成品机型,没有任何一台对这个问题提出了合理的解决方案。当前只要玩升频就无法避免CPU高频运行下产生噪音的问题。
3、供电
这个比较好算,直接将所有硬件的TDP加起来,然后乘1.2倍,就是线性电源所需的最低功耗,乘2就是高负载功耗。可以根据自己需求定做相对应瓦数的线性电源,值得注意的是,DC-DC供电线也是可以改用纯银来链接,效果会更好一些。
更新:BLOG主的另一位朋友认为,海盗船AX1600i使用的氮化镓功率场效应晶体管实测波纹非常漂亮,不输于很多专门制作的HIFI级线性电源。而且低负载时该电源可以完全关闭风扇,同时也能为升频系统引入一块高质量显卡进行CUDA加速。
4、硬盘
毫无疑问应该选用高品质的nvme SSD作为存储,第一是因为能使用nvme接口,无需经过SATA内部转换一次,降低了jitter。其次是存储速度变快,也侧面降低了CPU的压力。硬盘没什么好说的,哪怕BLOG主已经有价值数千的SATA线,也不建议使用,当前nvme仍然是最优解。
5、内存(更新)
内存方面,CL时钟可能对声音有影响,可以尽可能选择体质好,CL数值低的内存。甚至可以跟CPU一样,人为降频已获得更好的CL时钟表现。
更新:观察到国外高端成品机有使用ECC校检内存,但是考虑到ECC校检虽然能纠正错误,但是会产生延迟,因此对于这个选择持谨慎态度。如果有朋友测试了这一项,也请回复告知。
6、晶振(更新)
CPU和内存、硬盘在主板上是共用一个24M晶振的。大部分主板使用的都是一颗成本不足0.5元的贴片晶振。有大佬提供了替换成OCXO晶振套件,售价不菲,但是确实能极大程度降低整机,特别是CPU产生的Jitter。唯一的问题是不同主板MOD的方案不一样,推荐动手能力强的朋友一定试试。
7、网卡
有条件的朋友可以选择加上一块PCI-E的SFP或者光口网卡,用以杜绝本机杂讯(实测有效,但是不彻底)。如果再彻底一些,应该使用双网卡为进入和输出两段做分流处理,这将最大限度在当前技术条件下,得到最干净的网络传输环境。
8、机箱
当前最佳机箱肯定是挖铝全被动散热机箱,价格非常高昂。其次就是厚铝合金机箱了,BLOG主用血和泪的教训告诉诸位,不要选亚克力。
二、软件方面(更新请跳转这里)
这个就要分开讲了,如果仅使用ROON CORE,推荐使用LINUX系统,比如群晖之类的是个还不错的选择。而如果需要使用HQPlayer,Windoes方面则需要花点功夫了。实际上那些天价的音频服务器,硬件也不见得就很高端,跟自组服务器并不会有质的差距,但他们大多数都会宣传自己运行的是定制的系统以增加卖点。
其实这部分是可以自己尝试一下去做的。首先是选择一个靠谱的,不会动不动出BUG的WIN系统镜像。这里BLOG主推荐的是LTSC版,然后动手一个一个优化。这里BLOG主给出自己的参考思路:首先关闭UAC、自动更新、Defender、防火墙、遥测、日志、预读等功能。禁止使用虚拟内存、所有视觉特效。其次是砍掉没用的驱动、Skype、onedrive、xbox、store、winsxs等内容,将平时用不上的动画、工具都全部干掉。另外则是尽可能不要安装多余的运行环境,以免调用多余的DLL占用资源。另外则是可以选择一些大佬制作的精简版WINDOWS镜像,但是其实非常不建议,因为自己精简跟大佬精简的WIN实际内存占用并不会有特别明显的差异,反而可能会出现系统BUG,得不偿失。最后近期BLOG主已经转移到HQ的原生LINUX上,有兴趣的可以搜索BLOG内文章。
最后则是调整BIOS,经过一段时间测试,无论是什么性能的CPU,都建议关闭自动睿频。内存频率的重要性应该是CL值优先,越低越好。除此之外,应该把主板的自动省电关闭、将多余的PCI-E或者Audio、USB等接口关闭。需要了解的是,主板内不同硬件供电电压其实是不同的,就算使用的是线电DC供电,但主板仍然会将12V转换成3.3V、5V等电压,转换质量是非常不理想的,因此供电部分,CPU和内存都应该手动锁定电压。
这一套弄下来,基本上也到了自己DIY的极限了。BLOG主最终采用的方案是:
CPU | i3-9100T |
主板 | ASUS H310T2 R2.0 |
硬盘 | WD BLUE SN550 2T |
内存 | CRUCIAL DDR4 8G*2 |
电源 | LHY AUDIO 160W |
最终BLOG主网播部分的系统方案如下:
然后上机,开声非常喜人,在HQplayer进行NAA推送的情况下,声音跟NK的CD播放几乎可以说是不相上下。解析、规模、动态都基本持平。达到了非常理想的效果。这也是本篇文章BLOG主希望尽快与大家分享的原因。
这篇文章仅仅是抛砖引玉,BLOG主本人也会继续深挖,也欢迎朋友们留言分享,谢谢!
一条评论
vhtk
大佬,我完了一圈之后发现还是PC专机是个很好的解决方案,也从您的Blog中收获颇多,想请您发一下您当时组件时候的物料清单,提前感谢了!