本文介紹如何在 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 -y
4. 安裝 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 install
4.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 nqptp
5. 確認音頻輸出設備
使用以下命令查看系統識別到的音頻設備:
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-sync
8. 使用與驗證
在 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 配置。