当前位置:
文章详情

花30元实现你的平价sonos——音响升级DLAN和Airplay,附上平价音响推荐

2023-05-11 18:47:56 62点赞 318收藏 114评论

1 引言

这篇文章的一切,要从什么值得买的金币说起。前一阵发现什么值得买的金币跟京东云无线宝给的京豆已经攒了很多很多了,就套现了一波,顺手买了一个音响,就是很普通的一个音响,漫步者

关注
品牌
粉丝:

  • 商品百科

  • 好价

  • 社区文章

的R201BT。

漫步者(EDIFIER)R201BT2.1声道电脑音响蓝牙音箱桌面游戏音响台式机笔记本音响黑色239元京东去购买

 虽然是一个蓝牙音响把,但是关于听歌这种事情,就是蛮随性的,有时候用着电脑(音响是接在电脑上的),有时候又是手机或者平板。有时候就是很想让这个音响成为某种意义上的“共享音响”,即随时随地都可以享受音乐(瞎听加木耳,没必要跟我说加钱什么的,这个音响对我来说已经足够使用了)。

在这个立意下,在猫店狗店进行了一番深入的学习,市面上主流的协议就是两种,即苹果的airplay和安卓等设备使用的dlan(当然还有qq音乐自己搞出来的qplay,因为确实用得少就不在我的考虑范围了),按照我的理解归纳为以下几种:

一种就是实体音响,自带各种协议的,这里比较常见的就是苹果的HomePod和Sonos这种音响,但是相对而言价格较高,而且某种意义上是封闭的。当然了,某哈曼卡顿

关注
品牌
粉丝:

  • 商品百科

  • 好价

  • 社区文章

的R1音响当年还是有一定性价比的,但是现在价格被炒上去了就瞬间不香了。还有一种就是在传统的音响上面进行升级,即所谓的无线音频接收器。

作为实体音响来说,主要存在两点,一点就是相对封闭,比如苹果的HomePod对苹果设备支持较好,但是对其他设备支持欠缺,Sonos在我看来设置过于麻烦。最重要的一点,就是价格普遍偏高,这种东西在自己有限的购买力范围内能够给自己带来快乐就行,本身产生不了其他的价格,因此对于我个人而言是不愿意花大价钱去买音响的。

而无线音频接收器而言,我觉得没有啥缺点,唯一的缺点就是贵,以下粘贴几个,可以感受一下:

WiFi无线音频接收器音箱airplayDLNAQPLAY音乐盒子音响一对多188元天猫精选去购买绿联airplay2无线音频接收器适配器wifi连接老式功放音箱播放器599元天猫精选去购买

 身为垃圾佬,看着手头捡的这些垃圾,故萌生了自己做一个的想法。单纯做一个这样的音频接收器,需要的只是一个linux设备,性能根本不需要太多。手头的设备,之前发过的荣品rk3399(这个后面开文另外再说新用途)、sw799(一款rk3399的板子,但是接口跟资料确实是太少,不是很符合我的需求),还有一个rk3588的orangepi5(性能单纯拿来做一个这个属实浪费)。只试了一下荣品的设备,确实满足需求,但是rk3399的芯片拿来做这个确实大材小用了。

根据立意,这款设备我定下的标准就是:性能够用,处理器要支持64位的,ubuntu的版本一定要能支持到比较新的版本(个人的习惯),然后支持wifi(省去拖网线的烦恼),有音频接口。因此对应的只能是一些开发板啥的,但是新的开发板哪怕是全志h3芯片的价格都要100多,捡垃圾的话,支持系统都会或多或少的存在一些问题,有的就是纯粹移植一个系统,能够启动就算完事了,至于板子上的硬件能不能驱动起来,并不在考虑范围之内。

在小黄鱼浪迹了几天之后,终于是发现了这款30块钱的设备,正好能够契合我的需求,暂且给它起一个名字,就叫rk3118-box。

花30元实现你的平价sonos——音响升级DLAN和Airplay,附上平价音响推荐

基本上该有的接口也都有了,比一些广告机拆下来的设备乱七八糟不知道咋用的接口,看起来观感好上很多。rk3118就是一款普普通通的64位芯片,但是神奇的是卖家竟然给刷上了ubuntu22.04。主要的几个接口如hdmi、音频接口、有线网口(好像是百兆的)、还有sd卡槽跟usb口,基本上该有的也都有了,不该有的一个都没有。个人感觉应该就是从某个机顶盒上面拆下来的板子,但是能够支持完整的ubuntu就比cm311这种只支持armbian的要好上不少了。


2 效果展示

以下分别展示以下airplay和dlan播放的效果,会分别列出一些存在的问题。

Airplay:

airplay播放测试


DLAN:

dlan播放测试

综合来说,这里支持的Airplay是通过AirPlay2实现的,存在的问题主要就是有一定的延迟,但是对于我来说还属于可以接受的范围。而DLAN的表现就比较稳定,但是也会存在一点点小bug,就是有时候快速点一首歌的时候会没有反应,但是切换一下也就好了。


3 部署

到手当然是先升级一下系统,SSH的密码是armbian还是root,自己试一下就好的。

sudo apt update

sudo apt upgrade

然后就进入部署阶段。

3.1 Airplay

这里使用的shairport-sync去实现AirPlay的功能。这个项目同时支持AirPlay的一代和二代。

官方项目地址里面指明了两种部署方式,一种是本地部署,还有一种是通过Docker部署。经过实测,Docker总会出现一些奇怪的问题,因此还是用最基本的方式部署。当然,大家也可以尝试一下,有跑通的记得艾特我一下,我这出现的问题就是使用都没有声音。

3.1.1 部署

1 安装必要的依赖项

sudo apt-get install build-essential git xmltoman autoconf automake libtool libdaemon-dev libpopt-dev libconfig-dev libavahi-client-dev libssl-dev libasound2-dev libsoxr-dev avahi-daemon

2 克隆shairport-sync的源代码并编译

git clone https://github.com/mikebrady/shairport-sync.git

cd shairport-sync

autoreconf -i -f

./configure --sysconfdir=/etc --with-alsa --with-soxr --with-avahi --with-ssl=openssl --with-systemd

make

3 安装shairport-sync

sudo make install

4 启动shairport-sync

shairport-sync

到这一步应该可以在Apple设备上看到一个名为“Shairport Sync”的AirPlay输出。试着播放一些音乐,看看是否能听到声音,如果可以听到,就证明部署成功了。如果没有的话,就进入下一步。

3.1.2 配置shairport-sync


 1.以root身份打开 /etc/shairport-sync.conf 文件。使用以下命令:

sudo nano /etc/shairport-sync.conf

2.找到 [alsa] 部分,并取消 output_device 设置的注释,然后将其值设置为您的音频设备名称。这里的设备是“ANALO

关注
品牌
粉丝:

  • 商品百科

  • 好价

  • 社区文章

G”。所以,需要将其设置为:

output_device = "hw:ANALOG";

当然,也可以设置成hw:0,0 ,表示您要使用的是卡0(ANALOG)的设备0。

具体示例如下:

alsa =

{

      output_device = "hw:0,0"; // the name of the alsa output device. Use "shairport-sync -h" to discover the names of ALSA hardware devices. Use "alsamixer" or "aplay" to find out the names of devices, mixers, etc.

//      mixer_control_name = "PCM"; // the name of the mixer to use to adjust output volume. No default. If not specified, no mixer is used and volume in adjusted in software.

//      mixer_control_index = 0; // the index of the mixer to use to adjust output volume. Default is 0. The mixer is fully identified by the combination of the mixer_control_name and the mixer_control_index, e.g. "PCM",0 would be such a specification.

//      mixer_device = "default"; // the mixer_device default is whatever the output_device is. Normally you wouldn't have to use this.

//      ...

};

3.保存文件并退出编辑器。

4.重启shairport-sync服务:

sudo systemctl restart shairport-sync

到这里就Airplay已经部署完成了,关于设置开机启动,可以参考一下下面的内容。

sudo systemctl enable shairport-sync

sudo systemctl start shairport-sync

3.2 DLAN

 DLAN是通过Gmrender来实现的,以下仅给出步骤:

3.2.1 安装依赖

sudo apt-get install libupnp-dev libgstreamer1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-alsa autoconf

3.2.2 安装 Gmrender

1、定位到home文件夹并克隆程序源码

cd ../home/
git clone <https://github.com/hzeller/gmrender-resurrect.git>

2、转到刚刚克隆的gmrender-resurrect文件夹并安装

cd gmrender-resurrect
./autogen.sh
./configure
sudo make
sudo make install

3、设置开机自启动

因为是通过源码编译安装的 gmediarender,那么我们需要手动创建一个 Systemd 服务文件。请按照以下步骤操作:

创建一个新的 Systemd 服务文件:

sudo nano /etc/systemd/system/gmediarender.service

将以下内容粘贴到编辑器中:

[Unit]

Description=GMRender-Resurrect (DLNA Media Renderer)

After=network.target

[Service]

User=root

Group=root

ExecStart=/usr/local/bin/gmediarender -f YOUR_RENDERER_NAME --gstout-audiosink=alsasink --gstout-audiodevice=sysdefault --logfile=/var/log/gmediarender.log

[Install]

WantedBy=multi-user.target

注意:将 YOUR_RENDERER_NAME 替换为您希望显示在 DLNA 控制器应用中的渲染器名称。

保存并退出编辑器 (在 nano 编辑器中,按 Ctrl + X,然后按 Y 确认保存,再按 Enter 键)。

重新加载 Systemd 配置:

sudo systemctl daemon-reload

启动 gmediarender 服务:

sudo systemctl start gmediarender.service

检查 gmediarender 服务的状态:

sudo systemctl status gmediarender.service

如果服务正在运行,设置为开机启动:

sudo systemctl enable gmediarender.service

完成这些步骤后,gmediarender 应该在后台运行,并且Android 设备应该能够找到它。确保 Android 设备和运行 gmediarender 的设备位于同一局域网上。


4 结语

教程到这里差不多就算结束了。捡垃圾嘛,最终的目的就是花小钱办大事,并且享受折腾的乐趣。这个小设备呢,确实比较便宜,30块钱就可以实现很多很多的功能,基本上大家平日里说的docker、homeassitant也是都可以部署的,我这里只是切片去讲一下如何将这种设备落地,即大家在生活中可以切实的感受到这个设备。64位的完整ubuntu系统(不要拿一些设备刷了armbian的来跟我这叨叨,armbian是精简版的Debian,很多东西都是缺失的)加上wifi,这种设备捡垃圾的时候确实难找,而且体积相对也是适中的。

关于音响的部分,除了开头就提到的漫步者,当时考虑的还有另外一款:

JBLPS3500蓝牙音箱2.0台式电脑多媒体电视音响桌面笔记本音箱低音炮环绕EQ风潮音染纪念75周年典藏款白色499元京东去购买

 音响的选择嘛,其实说白了够用就行的。毕竟也不是每个人都是发烧友,也没必要搞一些加钱或者鄙视链啥的,只要花钱能够满足自己的需求,让自己能够开心就好的。疫情刚刚结束,大多数人的日子都不好过,所以花小钱办大事,或者说花一点小钱给自己买来一点快乐这才是至关重要的。

后面准备拿之前的荣品那个板子,捣鼓一个支持gpt的智能音响出来,弄好了再发文把。






文章很值,打赏犒劳作者一下

打赏
2人已打赏

漫步者(EDIFIER)R201BT2.1声道电脑音响蓝牙音箱桌面游戏音响台式机笔记本音响黑色

漫步者(EDIFIER)R201BT2.1声道电脑音响蓝牙音箱桌面游戏音响台式机笔记本音响黑色

暂无报价 去购买

WiFi无线音频接收器音箱airplayDLNAQPLAY音乐盒子音响一对多

WiFi无线音频接收器音箱airplayDLNAQPLAY音乐盒子音响一对多

暂无报价 去购买

绿联airplay2无线音频接收器适配器wifi连接老式功放音箱播放器

绿联airplay2无线音频接收器适配器wifi连接老式功放音箱播放器

暂无报价 去购买

JBLPS3500蓝牙音箱2.0台式电脑多媒体电视音响桌面笔记本音箱低音炮环绕EQ风潮音染纪念75周年典藏款白色

JBLPS3500蓝牙音箱2.0台式电脑多媒体电视音响桌面笔记本音箱低音炮环绕EQ风潮音染纪念75周年典藏款白色

暂无报价 去购买
114评论

  • 精彩
  • 最新
  • 确实牛,不过涉及到代码层面,一般人就不太搞的定了

    校验提示文案

    提交
    但是这个东西还是非常简单的,能用ssh工具,抄作业就好了的,复制粘贴运行一路下去就ok了

    校验提示文案

    提交
    收起所有回复
  • n1装个moode然后usb转音频效果也可以,没必要搞这种

    校验提示文案

    提交
    第一,n1多少钱了现在?100多了吧。第二,你说的这个我看了一下,是纯粹的因为系统,跟我说的不是一个东西。你可以喜欢各种别的方案,但你没有资格否认别人的选择

    校验提示文案

    提交
    n1 80多就能收到而且带电源,蓝牙,wifi,网线都能使用,你30也就是单板,加外壳电源成本和收台n1大差,并不是否定什么,从易用性来说比你这个高多了

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • Airplay只支持16位,airplay2支持24位,板载aux就没见过没有底噪的,相比之下还是苹果的a1392路由器拿来做airplay接收端最好,且只能用光纤口到解码器,哪怕是百元级别解码器都可以解决底噪问题,a1392最新固件官方支持airplay2

    校验提示文案

    提交
    底噪这个其实还行吧,并没有太多的感觉。如果加上光纤口,可能就不是这个价格了

    校验提示文案

    提交
    所以说,还是1392性价比最高

    校验提示文案

    提交
    收起所有回复
  • 关键字是什么?小黄鱼搜不到

    校验提示文案

    提交
    rk3318 box

    校验提示文案

    提交
    找不到啊

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 苹果自家那个带3.5光纤的路由器比较好一点吧。不知道现在捡垃圾多少钱了。还有一个品胜的盒子应该也不错。不知道还有没有。

    校验提示文案

    提交
    但是怎么说呢,苹果那个只支持一代的airplay,而且光纤口本身就是个麻烦事。这个方案我觉得相对音响的支持会好很多。品胜那个,其实大概率也都是通过这些开源的方案去实现的

    校验提示文案

    提交
    苹果的基站是3.5和光纤两用的。改车载,改同轴很多玩家折腾。协议老不是问题,音质还是比较OK的。只是对安卓不友好。
    品胜那个数码之家卖过一批裸板,才几块钱我买了但是没用。不知道扔哪里了。
    现在感觉还是用个旧手机比较好一点,还可以加解码线加内存卡。网播,基站,服务器都可以胜任。
    树莓派开发版之类的方案,胜在折腾和学习。

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 之前300买了个二手的zipp mini解决问题,懒得折腾了

    校验提示文案

    提交
    搜了一下好像真的不知道是啥

    校验提示文案

    提交
    自带dlna和airplay2的音响

    校验提示文案

    提交
    收起所有回复
  • 蓝牙用来放B站,dlan放网易云,还有一个本地nas放无损。
    三个需求,一路走来,我用了三个设备 [喜极而泣]

    校验提示文案

    提交
    有点6的

    校验提示文案

    提交
    收起所有回复
  • Apple用户直接买tv3才100多,或者直接买个dac解码器,都带蓝牙

    校验提示文案

    提交
    100多跟30多还是差了不少的吧

    校验提示文案

    提交
    收起所有回复
  • 这么一提醒能刷op的n1之类机顶盒都可以搞,还稍微简单一点

    校验提示文案

    提交
    理论上其实都可以,但是两点注意一下嘛。一个还是价格,另外一个就是这个是通过auc直连音响的

    校验提示文案

    提交
    现在把音响通过usb声卡连在主路由r2s上用着还可以 [高兴]

    校验提示文案

    提交
    收起所有回复
  • 简单一点,插安卓盒子+乐播投屏

    校验提示文案

    提交
    加起来肯定超过30了吧

    校验提示文案

    提交
    收起所有回复
  • 评论区都忽略了这个方案最大的优点,便宜 [高兴]

    校验提示文案

    提交
    但凡不差钱的话,那些音响随便买不就好了嘛。这个主要享受个动手的乐趣

    校验提示文案

    提交
    是的

    校验提示文案

    提交
    收起所有回复
  • 看不懂,但是大受震撼。膜拜大佬

    校验提示文案

    提交
    还是可以动手实操一下,很有趣的。弄个ssh工具就行

    校验提示文案

    提交
    收起所有回复
  • 其实还是armbian 交叉编译了ubuntu

    校验提示文案

    提交
    ubuntu好像有arm版本的吧,但是这个不清楚了

    校验提示文案

    提交
    收起所有回复
  • 不包邮……伤心……不知道能不能改大内存

    校验提示文案

    提交
    改内存估计够呛吧。。。

    校验提示文案

    提交
    收起所有回复
  • 这种盒子都有蓝牙,能不能把蓝牙功能也开发出来

    校验提示文案

    提交
    最简单的不就连上蓝牙音箱就可以了

    校验提示文案

    提交
    收起所有回复
  • 楼主还有mtk7688推荐

    校验提示文案

    提交
    这个是路由器的芯片了吧?

    校验提示文案

    提交
    收起所有回复
  • 严谨一点就好了,DLNA

    校验提示文案

    提交
    检查了一下,好像没有哪里有笔误哇

    校验提示文案

    提交
    写成dlan了

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 如何能装安卓的话,个人认为安卓下装个投屏软件,可以投视频和音频,比这个更实用,我用RK3288的板子测试了下,ubuntu投音频,底噪非常的大,应该是驱动不完善,在安卓下投屏,则声音非常的好,几乎听不到底噪。这块3318-ubuntu板子,用于安装CUPS打印服务器,alist,open-v-p-n,服务端,更有价值。

    校验提示文案

    提交
    这个只是探索一个解决方案嘛。具体底噪的问题,你可以看一下我的这个视频,我个人觉得是可以接受的,也并没有太多的感觉。其实cups嘛,我也探索过,不过单位用的是东芝的设备,所以没有驱动比较麻烦

    校验提示文案

    提交
    认同您的看法,底噪问题应该是我手上的板子ubuntu驱动层有问题,ubuntu可以顺便再安装个alist,一物多用。 [赞]

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 这玩意不就是电视盒子么

    校验提示文案

    提交
    我也说了我理解就是电视盒子拆出来的。但是刷好ubuntu就省的刷机,而且比armbian相对还是好一点

    校验提示文案

    提交
    收起所有回复
  • 你这个操作提醒了我,突然明白了我的群晖为啥会有这么个airplay插件,原来是干这个的,按照这个思路只要但凡刷了op的带耳机口的软路由和机顶盒,其实都可以干这活了

    校验提示文案

    提交
    是这样的。群晖有个专门airplay的套件,但是我试过延迟很高

    校验提示文案

    提交
    airplay没试过,我有时候用智能音响的dlna也卡

    校验提示文案

    提交
    还有4条回复
    收起所有回复
提示信息

取消
确认
评论举报

天猫超级红包
距结束17:27:17
现金红包天天领,最高8888元
红包按钮
最新文章 热门文章
318
扫一下,分享更方便,购买更轻松

举报成功

该举报信息「小小值」会优先核实并处理哦!