本文介绍如何在 Radxa 单板计算机(SBC)上部署 Shairport-Sync,将传统音响系统接入 Apple AirPlay 生态,实现通过 iOS / macOS 设备进行无线音频播放。
文档以 Radxa Cubie A7A(Allwinner A733) 为示例,其它 Radxa SBC 可参考相同步骤。
1. 概述
Shairport-Sync 是一个开源的 AirPlay / AirPlay 2 音频接收器实现,可运行于 Linux 系统。
通过 Shairport-Sync,Radxa SBC 可作为 AirPlay 接收端,将音频输出至模拟音频接口、HDMI 或 USB Audio 设备,为传统音响系统提供无线播放能力。
2. 硬件与软件要求
2.1 硬件要求
Radxa 单板计算机(如 Cubie A7A)
模拟音响系统或功放
3.5 mm 音频线(或 HDMI / USB DAC)
网络连接(以太网或 Wi-Fi)
2.2 软件环境
- RadxaOS(或其他 Debian / Ubuntu 兼容发行版)
- Shairport-Sync
- Avahi(用于 AirPlay 服务发现)
3. 系统准备
3.1 更新系统
sudo apt update && sudo apt upgrade -y4. 安装 Shairport-Sync
4.1 通过软件源安装(可选)
若系统软件源中已提供 shairport-sync,可直接安装:
sudo apt install shairport-sync如需使用 AirPlay 2,建议采用源码编译方式。
4.2 源码编译安装(支持 AirPlay 2)
安装依赖
sudo apt install --no-install-recommends build-essential git autoconf automake libtool \ libpopt-dev libconfig-dev libasound2-dev avahi-daemon libavahi-client-dev \ libssl-dev libsoxr-dev libplist-dev libsodium-dev \ libavutil-dev libavcodec-dev libavformat-dev uuid-dev libgcrypt-dev xxd编译并安装 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 --with-airplay-2 make sudo make install4.3 安装并启用 nqptp(AirPlay 2 必需)
git clone https://github.com/mikebrady/nqptp.git cd nqptp autoreconf -fi ./configure --with-systemd-startup make sudo make install sudo systemctl enable nqptp sudo systemctl start nqptp5. 确认音频输出设备
使用以下命令查看系统识别到的音频设备:
aplay -l示例(Cubie A7A):
card 0: allwinnerac101 [allwinner-ac101], device 0 card 1: allwinnerhdmi [allwinner-hdmi], device 0说明:
| 输出设备 | 说明 |
|---|---|
| hw:0,0 | 板载 AC101 模拟音频(3.5 mm 接口) |
| hw:1,0 | HDMI 音频输出 |
当使用 3.5 mm 模拟音频接口时,应选择 hw:0,0。
6. 配置 Shairport-Sync
编辑配置文件:
sudo nano /etc/shairport-sync.conf示例配置(板载模拟音频)
general = { name = "Radxa Cubie AirPlay"; output_backend = "alsa"; }; alsa = { output_device = "hw:0,0"; output_format = "S16"; };说明:
Shairport-Sync 将直接使用 ALSA 输出设备
在 RadxaOS 默认配置下,无需额外配置 ALSA Mixer
系统已完成基础音频通道与路由初始化
7. 启动服务
sudo systemctl enable shairport-sync sudo systemctl restart shairport-sync8. 使用与验证
在 iOS 或 macOS 设备中:
打开音乐或视频播放应用
选择 AirPlay 输出
选择设备 Radxa Cubie AirPlay
若音频可正常播放,说明部署成功。
9. 故障排查
常见排查方向包括:
ALSA 输出设备选择是否正确
nqptp 服务是否正常运行(AirPlay 2)
系统音频设备是否被占用
10. USB Audio 设备说明(可选)
对于更高音质或更简化的音频输出方案,可使用 USB Audio DAC:
插入 USB DAC
使用 aplay -l 确认设备编号
将 output_device 修改为对应的 hw:x,0
USB Audio 设备通常无需额外音频路由或 Mixer 配置。