用了多年树莓派做音乐串流,单机播放没问题,但想搭一套全屋音频系统,始终找不到一个能实现无延迟同步播放的统一标准。过去几年陆续购入WiiM产品来拼这套系统,心里却一直惦记着回到开源方案。
这次尝试的起点是Sendspin——一个开源协议,让兼容设备在同一网络内同步播放音乐。作者决定拿家里挂在墙上的Home Assistant控制平板做播放终端,由Music Assistant负责播放与分发。
Sendspin本质上是一套处理跨设备同步音频播放的开放协议。因为开源,它不受任何厂商约束,为硬件和软件提供一套共同语言。用作者的话说,它像Sonos,但是开源的。
买Sonos产品,想扩展生态就得继续买Sonos硬件。Sendspin没有这种限制,唯一的现实问题是:目前还买不到主流厂商出品的Sendspin硬件。
系统需要两个部分:负责播放、音频流和连接设备管理的服务器,以及接收并播放音频的客户端。这套方案里,Music Assistant充当Sendspin服务器。客户端不必是智能音箱,也可以是另一台电脑,或运行在现有设备上的应用。
把安卓平板变成多房间音频终端
作者选了最简单的路径:安装开源应用Kiosk Satellite。这款应用原本是为Home Assistant仪表盘需求设计的一体化方案,能显示仪表盘,同时兼作Sendspin客户端。
操作上只需在设置里启用该功能,填入Music Assistant服务器的IP地址,或者留空。想深入配置还有若干选项,但对多数用户来说,打开开关就够了。
这样一台安卓平板或手机就注册成了可用的Sendspin播放器。回到Music Assistant选中目标设备,就能开始放歌。
用Kiosk Satellite的好处是平板不会变成单一用途的音乐播放器,它仍然是Home Assistant控制面板。开始播放时,应用会弹出悬浮的正在播放小组件,显示专辑封面、播放控制和曲目信息。还有专门的全屏视图,展示当前曲目、队列和歌词(如有)。作者上周末办派对时就用上了这个功能,每台平板各接一组蓝牙音箱。
同步播放表现
这套系统真正的亮点是多房间同步播放的可靠性。作者用过Sonos、WiiM、Google Cast和基于Alexa的多房间系统,按无缝程度、速度和一致性排序,Sendspin能排进他试过的最好之列。
操作流程就是进Music Assistant、选目标、开始播放。各终端几乎瞬时起播,连续使用六到七个小时,没有出现一次失同步或断流。分组播放与单设备播放之间切换同样迅速。
Sendspin支持最高到FLAC文件的位完美音频,只要网络扛得住,音质上限不受限制。作者也提醒,如果用同步FLAC音频,客户端设备最好接有线音箱而不是蓝牙。
没有平台锁定
这套方案的价值在于,几乎任何闲置设备都能变成多房间音乐串流终端。不必依赖定制硬件,也不必围绕ESP32加DAC专门搭建——一台闲置安卓手机接上音箱和DAC,就能部署起来。
Sendspin提供协议,Kiosk Satellite把设置简化到近乎无脑,Music Assistant作为管理所有音乐源和媒体的 backbone。整套系统没有任何平台锁定。
热门跟贴