自从我获得了罗技现已过时的 Squeezebox Touch 以来,我就一直是 Squeezebox 的粉丝,我的家人仍在使用它。
Squeezebox Touch 提供了一个家庭友好的界面来访问我们的音乐库,可以直接在设备上访问,也可以通过一系列移动应用程序访问。 罗技在 2012 年停止了它的开发,但我很高兴,因为他们将 Squeezebox 的服务器软件开源为 Logitech Media Server,并提供了物理 Squeezebox 设备上使用的开源代码。

SqueezeBox Touch, Steve Ellis, CC BY-SA 4.0
大约一年前,我决定为我的家庭办公室配备一些不错的音响,并想重新使用旧的 Raspberry Pi 1 Model B 作为音源。 理想情况下,我想要一些与我们现有的 Squeezebox 生态系统兼容的东西,并寻找了选择。 Logitech Media Server 很快成为我的选择。 用于管理音频库的 Logitech Media Server 软件由社区更新,包含许多增强功能和错误修复(有关最新版本的更多信息,请访问 Slimdevices 论坛 及其 Wiki)。
以下是我创建接近发烧友体验的三个步骤,您几乎可以在任何 Raspberry Pi 上使用它们。
第一阶段:概念验证
虽然 Raspberry Pi Model B 配备了标准的 3.5 毫米立体声音频插孔,但它的频率响应有限,并且容易受到很多干扰。 后来的型号并没有真正改进这一点,但它绝对足以测试 Pi 作为 SqueezeBox 客户端。

Steve Ellis under CC BY-SA 4.0
基线硬件和软件
- 带外壳的 Raspberry Pi 1 Model B
- 128MB SD 卡
- 能够输出 1A 的 USB 充电器
- 3.5 毫米立体声音频线
- 网线
- 旧的笔记本电脑扬声器
- piCorePlayer 软件

Steve Ellis under CC BY-SA 4.0
PoC 阶段的一个关键目标是重新使用旧的备用设备 - 我猜我使用的 Altec Lansing 桌面扬声器大约有 20 年的历史了,而 128MB SD 卡是我能找到的最小的备用卡。(后来我换成了 1GB SD 卡,因为 128MB 卡的可靠性存在问题。)我还选择了一根物理网线,因为该设备将以无头模式运行(没有屏幕),并且通过物理以太网电缆进行 DHCP 易于实施和测试。 另一个常见问题是 USB 电源质量差或不可靠,因此使用了 1 安培的电源。
我非常喜欢尽可能采用以设备为中心的方法,并且 piCorePlayer 提供了一个 TinyCore-based Linux 的精简版本,其中集成了用于 Logitech Media Server 的 Squeezelite 软件客户端,可以轻松安装。 在底层,它是运行在 RAM 中的 TinyCore-based Linux,仅在备份配置更改时才挂载存储。 这使其对断电非常具有弹性。 对于音频输出,它支持 3.5 毫米立体声音频插孔、HDMI 音频和一系列 USB 数模转换器 (DAC)。 此外,还有各种 I2C DAC,如果您想要获得更发烧友的体验,它们可以直接插入 Raspberry Pi。
我下载了 最新版本的 piCorePlayer 并将其安装到 SD 卡上;请注意,对于更现代的 Pi,您需要使用 microSD 卡。 此外,Raspberry Pi 不支持从 USB 设备启动。 我使用 dd 通过 Linux 笔记本电脑上的读卡器将 SD 卡镜像。
sudo dd if=piCorePlayer3.20.img of=/dev/mmcblk0 bs=16M
或者,某些发行版现在附带像 Fedora Media Writer 这样的镜像刻录工具。

Steve Ellis under CC BY-SA 4.0
启动后,Pi 通过 DHCP 找到了一个 IP 地址,我可以通过浏览器连接来完成配置。
在 Squeezelite 的设置下,我将音频输出设置为模拟音频,然后单击保存。 然后我为我的播放器指定了一个名称,该名称被 SqueezeCenter 服务器软件检测到,然后再次单击保存。

初始 PiCorePlayer 配置,Steve Ellis, CC BY-SA 4.0
使用我的 Squeezer Android 移动客户端,我现在可以在我的网络上看到两个 Squeezebox 客户端,旧的 Squeezebox Touch 和我的家庭办公室 piCorePlayer,我可以从我的图书馆中选择和播放音频。 这是一个快速而简单的测试,但我确实遇到了一些音频问题。 如果我敲击或移动 Pi,偶尔会通过扬声器听到嗡嗡声,而且音质并不令人印象深刻。

Steve Ellis under CC BY-SA 4.0
第二阶段:USB音频适配器
因为在第二阶段我仍然试图重新使用现有的硬件,所以我拿了一个罗技耳机附带的旧 USB 音频适配器,希望这能提供比板载 3.5 毫米插孔更可靠的音频体验。

Steve Ellis under CC BY-SA 4.0
该 USB 适配器被 Pi 自动检测到。 通过浏览器,我只需要将音频输出更改为 USB,并将输出设置更改为 front:CARD=Headset,DEV=0。 单击保存后,我通过 USB 适配器从我用了 20 年的扬声器中获得了更可靠的音频。
在 piCorePlayer 站点上有一个 关于各种 USB 设备的优秀指南;我已经更新了它,包括罗技适配器的 USB ID。
第三阶段:发烧友音质?

Steve Ellis under CC BY-SA 4.0
我有一些备用的书架式扬声器,它们比笔记本电脑扬声器好得多,但没有电源来驱动它们。 在这个阶段,我可以使用支持 HDMI 的小型放大器,并避免使用 USB 和 3.5 毫米输出,但我听说过带有内置 USB DAC 的小型放大器,并决定探索这条路线。
在阅读了大量正面评价后,我从当地供应商处购买了一个 Topping VX1 放大器。 这是一个华丽的设备,具有足够的功率,适合小型家庭办公室环境。 现代 Linux 内核会自动检测到 USB DAC,并且与 piCorePlayer 配合良好。

Steve Ellis under CC BY-SA 4.0

Steve Ellis under CC BY-SA 4.0
下一步:有第四阶段吗?
您可能想知道如果我从头开始,我是否会再次以同样的方式进行。
大多数情况下是这样的。 如果我要购买硬件,我会考虑使用像 Pi Zero 这样的设备。 此设备有一些很棒的发烧友附加组件,而且它的体积非常小。
对于放大器 DAC,我希望使用类似于我的老朋友 Bdale Garbee 正在开发的设备。这些小型设备将 PCM2705C USB DAC 与 TPA3118D2 D 类音频放大器结合在一起,可以提供一个简单、低成本且更加开放的解决方案,作为 Topping VX1 放大器的替代方案。 有关 Bdale 解决方案的更多信息,请参见他在 linux.conf.au 2016 中的 演示 或访问他的 项目网站。
如果我还没有成为 Squeezebox 用户,我可能会考虑基于音乐播放器守护进程 (MPD) 的解决方案,可能使用像 Mopidity 这样的东西。
我正在考虑购买一个触摸屏,以提供更完整的类似 Squeezebox Touch 的体验。 有一个完全开源的 Squeezebox UI 实现,它与 Pi 的触摸屏兼容。 此外,我的女儿很快就会超过她现在的立体声音响,这可能会提供一个机会来玩 Pi Zero,以构建另一个与 Squeezebox 兼容的前端。
但是现在,我正忙于享受家庭办公室中的卓越音质,同时为 Opensource.com 撰写本文,无法考虑下一步做什么。
5 条评论