news 2026/5/7 12:03:02

在 Radxa SBC 上使用 Shairport-Sync 实现 AirPlay 音频接收

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
在 Radxa SBC 上使用 Shairport-Sync 实现 AirPlay 音频接收

本文介绍如何在 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,0HDMI 音频输出

当使用 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 配置。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/28 20:42:37

Phigros音乐游戏模拟器完全指南:浏览器中的节奏体验

Phigros音乐游戏模拟器完全指南:浏览器中的节奏体验 【免费下载链接】sim-phi Simulation of Phigros display with js/canvas 项目地址: https://gitcode.com/gh_mirrors/si/sim-phi 想要在浏览器中畅玩专业的音乐节奏游戏吗?Phigros模拟器正是你…

作者头像 李华
网站建设 2026/5/5 8:55:45

SDXL VAE FP16修复终极指南:从数值崩溃到稳定推理的完整解决方案

还在为SDXL推理时的黑色噪点而烦恼?显存占用居高不下导致生成效率低下?SDXL-VAE-FP16-Fix项目提供了从底层架构到应用部署的完整数值稳定性解决方案。本文将带你深入理解FP16精度下的数值崩溃机制,并掌握快速部署优化的实战技巧。 【免费下载…

作者头像 李华
网站建设 2026/5/5 22:11:58

专精前端平台 vs. 全能应用平

再见了,Vercel VPS 的割裂部署:这套云原生开发工作流,让我扔掉了本地环境我曾是 Vercel 的铁杆粉丝,代码一推,网站全球上线,那种极致丝滑的体验,让我一度以为自己窥见了未来开发的终极形态。我…

作者头像 李华
网站建设 2026/4/20 3:10:22

为什么舵机的0度在单片机中代表500?180度代表2500?

一、先搞懂舵机的核心控制规则舵机是通过PWM(脉冲宽度调制)信号来控制角度的,行业内主流的 180 度舵机有一个通用标准:舵机需要频率为50Hz的 PWM 信号(也就是信号周期 1/5020ms20000 微秒);脉冲…

作者头像 李华
网站建设 2026/5/6 7:47:30

经典算法题详解之游乐园的迷宫(三)

解决方案平面上有 个点,找到一条访问 个点的路径,使得路径的转角满足给定的转角序列。题解我们保持一个理想的状态:转向时,剩余的点都位于要求方向的一侧(即剩余点都符合当前这次的转向要求)。那么当前这…

作者头像 李华
网站建设 2026/5/3 3:18:36

day 27

浙大疏锦行

作者头像 李华