本帖最后由 helix 于 2025-6-15 10:41 编辑
树莓派刷moode, volumio, picoreplayer这些固件当数播,我已经玩了好几年了,买过树莓派3,zero W, zero 2W, 树莓派4,CM4,树莓派5,后来发现volumio有其它单片机的移植固件,又买过Rock 64, Tinkerboard/S,Orange Pi PC/PC Plus/Lite, Radxa Zero等。X86上的Daphile也玩过,Thin ITX的主板,还有DELL wyse 3040这样的终端机。
我之前的搭配是picoreplayer双机,一台树莓派5改恒温晶振,线电,外接20T硬盘作服务端,一台树莓派4改恒温晶振,线电作为播放端。声音不错,但整套系统挺复杂,成本也高,淘宝上线电晶振双改的成品机一台都得3K以上,自己DIY单台成本也至少1K多,性价比就差了。
而且树莓派改晶振也有问题,树莓派的晶振频率是54,50,25MHZ,不是音乐采样率44.1KHZ和48KHZ的整数倍,转换后还是有损失的,其它单片机也有同样问题。
树莓派的I2S输出可以工作在slave mode,就是以外部时钟为基准,这是比较好的解决方法,数字输出品质可以提高很多,但这种数字输出板国内市场没有(百万有一款,已经下架了),国外的又贵又难买。
在Volumio论坛上翻翻有啥新东西的时候,偶然发现给Nano Pi NEO3移植的固件,不仅支持I2S输出,还支持slave mode,真是眼前一亮: https://community.volumio.com/t/unofficial-volumio3-images-with-myvolumio-for-nanopi-neo-neo2-air-with-i2s-slave-support/61787
仔细看完了技术指导部分就在网上下了单,Nano Pi NEO3的2G内存版本只要200出头,数字板需要有11.2896MHZ和12.288MHZ两个频率的输出,正好老虎鱼给飞利浦CD PRO系列转盘设计的同轴输出板有这两个频率输出,高配版本用的恒温晶振,价格398。
到货先刷固件,刷好后把系统文件夹里armbianEnv.txt这个文档打开,把user_overlays那行改成:user_overlays=rockchip-spdif-out-enablerockchip-i2s-external-mclk。保存退出后启动,系统就默认工作在slave mode,必须接收到外部时钟信号才能播放音乐。
简单接了下就成功开声了,但是绝大多数高清音乐是16bit 44.1KHZ和24bit 48KHZ两种格式,对应的时钟频率是11.2896MHZ和12.288MHZ,播放不同采样率歌曲的时候,需要切换时钟频率。固件是通过GPIO针脚上GPIO2_A2这个点来控制的,当播放44.1KHZ歌曲时,这个针脚输出3.3V的电平信号,播放48KHZ歌曲时候,电平信号则停止,这样通过一个继电器模块就可以从两个时钟输出口来回切换,我用的双联继电器模块,一路用于时钟,一路用于LED指示灯,黄灯是44.1KHZ,蓝灯是48KHZ,方便观察。同轴板输出最高支持到24bit 192KHZ。
同轴板的供电是9V,NanopiNEO3的供电是5V,我已经有台9V的线性电源,为了简化供电,一路给同轴板直供,另一路给降压板(老虎鱼,80元),降到5V后给Nanopi供电,1.5A的电流输出能力,足够板子的运行再外挂大容量U盘,SSD和无线网卡什么的。
参考小红书上乾龙盛陈总的分享,想到给I2S输出加个隔离,隔绝Nanopi上的电气干扰,又下单了老虎鱼的I2S隔离板,68元。遗憾的是Nanopi和同轴板的供电是共线的,所以地线没有达成隔离,好在实听没有任何问题,背景漆黑。
设计了个外壳,把Nanopi NEO3的USB拓展针脚也用上,可以多两个USB2.0口,用来接无线网卡也挺方便。
其实可以做个扩展板,把Nanopi和同轴板集成到一起,十分紧凑,就恨自己不懂电路设计,只能手工慢慢焊接,看起来有点乱糟糟。
装配完成后通电即点亮,时钟和LED切换正常,声音非常棒,明显更清晰干净,推荐有兴趣的朋友也试试。
|