news 2026/9/2 20:09:52

在 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/9/2 18:43:25

Linux pipe匿名管道进程间通信

extern int pipe (int __pipedes[2])上面是函数原型 传入一个字符数组&#xff0c;创建两个文件描述符&#xff0c;[0]为读端[1]为写端下面给一个代码案例&#xff0c;一步步解析过程#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include &…

作者头像 李华
网站建设 2026/9/2 23:51:14

DBeaver数据导出终极指南:轻松导出各种数据库格式

DBeaver数据导出终极指南&#xff1a;轻松导出各种数据库格式 【免费下载链接】dbeaver 项目地址: https://gitcode.com/gh_mirrors/dbe/dbeaver DBeaver作为一款功能强大的开源数据库管理工具&#xff0c;其数据导出功能能够帮助用户快速、准确地将数据库中的数据导出…

作者头像 李华
网站建设 2026/9/1 12:13:25

38、Linux系统安全与备份全解析

Linux系统安全与备份全解析 一、系统安全配置 1.1 账户与密码安全设置 为了增强账户和密码的安全性,我们可以进行以下配置: - 密码长度 :将密码的最小长度设置为6 - 8个字符。 - 密码轮换 :设置密码轮换机制,要求用户定期更改密码,建议设置为90 - 180天。 - 账…

作者头像 李华
网站建设 2026/9/2 23:04:23

41、Linux 系统故障排除与维护指南

Linux 系统故障排除与维护指南 1. 日志文件工具 在 Linux 系统中,检查大量日志文件可能非常耗时。当你需要快速获取信息时,使用文本编辑器(如 vi )浏览大型日志文件是一项艰巨的任务。不过,有许多命令行工具可以帮助你更轻松地处理日志文件。 cat 命令 :用于查看日志…

作者头像 李华
网站建设 2026/9/2 22:38:30

48、Linux系统硬件安装与维护指南

Linux系统硬件安装与维护指南 一、Linux下特定设备安装注意事项 1.1 显卡 在Linux系统中,若仅使用简单文本模式,所有显卡均可正常工作。若不需要X - windows功能,尤其是将Linux作为服务器运行时,无需安装X服务器,因为X - windows会占用大量内存,且需确保有可用的显卡驱…

作者头像 李华