零成本用snapcast开源项目组建多房间音乐系统

2023-04-14 23:26:16 27点赞 173收藏 24评论

最近搞了一套多房间音乐系统,实现任意设备播放的音乐流转到任何房间的设备播放或者同步播放,现在和大家一起分享。

想象这些场景,实现音频的流转自由

  • 台式电脑没有蓝牙,我想用我的蓝牙耳机听歌,我可以用我的手机作为中介,播放电脑上的任何声音

  • 电脑或手机上用麦克风喊话,各个房间的喇叭都会实时播放你的声音(比如叫起床,吃饭)

  • 我在客厅听音乐,现在想到卧室休息,卧室的音箱同步播放客厅的音乐不间断

  • 客厅的功放设备不支持airplay,但是我可以利用这个系统接收苹果的airplay隔空播放

  • 蓝牙的音质不好,我想播放抖音的音频到音箱,通过wifi,立刻给你搞定

  • foobar播放的音乐,充满每个房间,同步播放

  • 不管是安卓还是苹果手机,总能把音乐投送到指定设备

  • 我想播放nas上的音乐,不管我用平板、手机、还是pc,只要能浏览网页,不用安装客户端

是不是很神奇?先了解下系统的实现原理

系统原理图系统原理图

本系统的核心是snapcast开源项目,一个多房间的音频系统,分为服务端和客户端两部分。服务端捕获(snap)各种播放器播放的音频流,编码(flac,pcm,ogg,opus)后发送(cast)到各个安装有snapcast的客户端,可以是平板、手机、安卓机顶盒或者网页客户端。

音频流的来源,可以分为四大部分,安卓阵营的dlna,苹果的airplay,mopidy播放的本地文件和流媒体服务,手机或电脑的声卡直接捕获的流(只要能播放,就能做内容源)。这样几乎任何节目内容,都能被这个系统捕获,和蓝牙不同的是,它可以网络传输和无损编码,音质没有损失,理论上达到cd级别。

客户端安装到智能设备上,可以是平板、pc、手机、机顶盒、树莓派等。只要能安装snapcast客户端就行。接下来就是连接到你的现有音响系统,可以通过线缆,USBdac,蓝牙等方式。这个可能是唯一的硬件门槛。

一些截图:

malp安卓app控制MPDmalp安卓app控制MPD

mpd的各种端口mpd的各种端口

选择声卡播放选择声卡播放

电脑端snap.net电脑端snap.net

手机端控制snapcast手机端控制snapcast

具体的实现方式:

服务端需要运行在linux系统上,我是在Windows 上的虚拟机运行dietpi 系统,安装snapcast服务和shairport-sync(airplay接收端)、mopidy、upmpdcli(docker安装,用于接受dlna)。都是开源免费的软件,你也可以安装到群晖上。具体功能见图。

客厅的电视盒子和手机是安卓系统,安装了snap.net,一个开源的跨平台snapcast客户端带声卡采集广播功能(采集音频传输到snapcast服务器),pc也安装这个软件。snap.net也是控制中心,可以控制那个设备播放哪个音源(蓝色线框内的部分)。手机安装了MPd的客户端MALP,可以控制mopidy的各种功能,主要用于本地媒体播放和音乐串流服务(国外的多)。也可以访问mpd的网页客户端,进行控制,也可以打开snapcast的网页客户端控制音频的流转,同时只要能上网,你的设备就能临时变成播放终端,不用安装软件。

如果大家感兴趣,可以出详细的教程,也欢迎大家讨论这个平民版的多房间音乐系统。最大的好处是各种设备可以自由组合,充分利用老旧的现有设备,hifi设备,缺点是需要有一个设备充当服务器,可以是虚拟机、树莓派、软路由等。音质比蓝牙好(无损传输),延迟约1秒。听音乐没问题,但是播放视频延迟不可接受,解决办法是用可以调整音视频同步的播放软件,音频设置提前1秒。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

1849元起

ZSpace 极空间 私有云 Z4Pro 8G版 4盘位NAS存储(N97、8GB)

ZSpace 极空间 私有云 Z4Pro 8G版 4盘位NAS存储(N97、8GB)

2499元起

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

1749元起

ZSpace 极空间 私有云 Z4Pro 性能版 NAS存储(N305、16GB)

ZSpace 极空间 私有云 Z4Pro 性能版 NAS存储(N305、16GB)

3479.01元起

QNAP 威联通 TS-464C2 四盘位 NAS网络存储(赛扬N5095、8GB)黑色

QNAP 威联通 TS-464C2 四盘位 NAS网络存储(赛扬N5095、8GB)黑色

2599元起

UGREEN 绿联 DX4600+ 4盘位NAS(赛扬N5105、8GB)

UGREEN 绿联 DX4600+ 4盘位NAS(赛扬N5105、8GB)

1999元起

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

2849元起

ZSpace 极空间 私有云 Z4Pro 16G版 4盘位NAS存储(N97、16GB)

ZSpace 极空间 私有云 Z4Pro 16G版 4盘位NAS存储(N97、16GB)

2799元起

ZSpace 极空间 私有云 Z423 旗舰版 8盘位NAS存储(锐龙R7-5825U、64GB)

ZSpace 极空间 私有云 Z423 旗舰版 8盘位NAS存储(锐龙R7-5825U、64GB)

5899元起

QNAP 威联通 TS-466C 四盘位NAS(奔腾N6005、8GB)

QNAP 威联通 TS-466C 四盘位NAS(奔腾N6005、8GB)

3199元起

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

2499元起

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

2179元起

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

1349元起

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器手机平板扩容适用iPhone15 水

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器手机平板扩容适用iPhone15 水

1299元起

ZSpace 极空间 私有云 T2 2盘位NAS存储(RK 3568、4GB)

ZSpace 极空间 私有云 T2 2盘位NAS存储(RK 3568、4GB)

1699元起

ASUS 华硕 AS6702T 4盘位NAS存储 黑色(Core2 Quad Q8300、4GB)

ASUS 华硕 AS6702T 4盘位NAS存储 黑色(Core2 Quad Q8300、4GB)

4299元起
24评论

  • 精彩
  • 最新
  • 这个可以把小爱音响拉进来吗?

    校验提示文案

    提交
    这个我不太清楚 不过这个可以和一个开源项目 家庭只能中心 集成。好像叫home ass。。。什么开头的。具体没有研究

    校验提示文案

    提交
    那玩意我有,不过没做过音乐串流

    校验提示文案

    提交
    收起所有回复
  • 出个教程吧,这个开源项目怎么在网上都搜不到

    校验提示文案

    提交
    github上有 中文资料也有一些不多 玩的人少 主要就是配置文件,安装在dietpi上就是动动鼠标的事情 完全傻瓜瓜 到时候我把虚拟机传上来好了

    校验提示文案

    提交
    收起所有回复
  • 学习版roon,了解一下?

    校验提示文案

    提交
    roon的客户端是不是有平台限制 或者功放支持才行? snapcast几乎全平台没限制

    校验提示文案

    提交
    收起所有回复
  • 比较感兴趣,都docker就好了

    校验提示文案

    提交
    应该可以都用docker实现 我里面都是用snapcast的tcp源 airplay可以用管道

    校验提示文案

    提交
    收起所有回复
  • 请问大神,有没有后续教程,我总结一下,就是要在一个服务器端(比如群晖)安装:1.MPD(获取播放能力);2,upmpdcli(获取dlna接收能力);3,snapcast server(分发能力)。
    音响端安装snapcast client.
    能否具体出一个教程来将如何安装MPD,UPMPDCLI,SNAPCAST呢? 百度了一下,国内此方面教程很少

    校验提示文案

    提交
    你总结的没错!snapcast就是捕获和音频路由。安装很简单,一条命令就安装了。配置方面,snapcast官网有配置案例。推荐使用fifo形式,比较简单。推荐用dietpi虚拟机安装体验一下。

    校验提示文案

    提交
    snapcast已经用debian装了一个,但是前面的MPD,DLNA的render等还没有折腾好,且网上教程很少。同时,还不理解MPD,DLNA和snapcast,3者之间如何关联起来,期待作者出一个详细教程。

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 速度出啊,急

    校验提示文案

    提交
  • 这个好。研究研究

    校验提示文案

    提交
  • 坐等

    校验提示文案

    提交
  • 请速度😄

    校验提示文案

    提交
  • 没有人讨论,看来都不感兴趣啊

    校验提示文案

    提交
  • 请继续更新搭建过程 [欢呼]

    校验提示文案

    提交
  • 火钳刘明 [鼓掌]

    校验提示文案

    提交
  • 求详细教程

    校验提示文案

    提交
  • 支持教程!

    校验提示文案

    提交
  • [棒棒哒] 写得非常好,介绍通俗易懂。

    校验提示文案

    提交
  • 那么那里可以下无损音乐

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
173
扫一下,分享更方便,购买更轻松