AirConnect项目完整使用指南:让AirPlay音频流传输到所有设备
【免费下载链接】AirConnectUse AirPlay to stream to UPnP/Sonos & Chromecast devices项目地址: https://gitcode.com/gh_mirrors/ai/AirConnect
AirConnect是一个功能强大的开源工具,它能够将AirPlay音频流传输到UPnP/Sonos和Chromecast播放设备上。通过这个工具,用户可以在任何支持AirPlay的设备上播放音频,并将其转发到网络中的各种播放器,实现音频的多房间同步播放。
项目核心功能解析
AirConnect的核心价值在于它的桥接能力。它会在本地网络中自动发现UPnP/Sonos和Chromecast播放器,为每个检测到的播放器创建虚拟的AirPlay设备。这样一来,您的iPhone、iPad、MacBook或其他支持AirPlay的设备就能看到这些虚拟设备,并将音频流发送给它们。
支持的音频格式转换:
- 从ALAC解码后,可以以原始格式发送
- 或者重新编码为MP3、AAC或FLAC格式
- 大多数播放器支持元数据显示(艺术家、标题、专辑、封面等)
快速安装部署步骤
获取预编译二进制文件
项目提供了预编译的二进制文件包,用户可以通过以下方式获取:
wget https://raw.githubusercontent.com/philippe44/AirConnect/master/AirConnect-<版本号>.zip解压后根据您的操作系统和CPU架构选择对应的可执行文件:
- Chromecast设备:使用
aircast-<操作系统>-<CPU>文件 - UPnP/Sonos设备:使用
airupnp-<操作系统>-<CPU>文件
例如,在MacOS Intel CPU上为Chromecast选择aircast-macos-x86_64文件
各系统安装配置
Windows系统:
- 下载对应的可执行文件
- 安装Microsoft VC++运行库
- 将两个DLL文件放在与EXE文件相同的目录中
- 双击运行即可
MacOS系统:
- 下载对应版本的可执行文件
- 在终端中执行权限设置:
chmod +x airupnp-macos - 运行可执行文件
Linux系统:
- 下载对应版本的可执行文件
- 设置执行权限:
chmod +x airupnp-linux-aarch64 - 运行程序
网络端口配置要求
为了确保AirConnect正常工作,需要在防火墙中开放以下端口:
- 端口5353 (UDP):用于监听mDNS消息
- 每个设备永久占用1个端口:用于RTSP连接
- 播放时额外占用4个端口:1个HTTP端口和3个RTP端口
启动运行方法
基础启动方式
双击可执行文件或在命令行中运行:
./airupnp-linux-aarch64对于Sonos和Heos播放器,建议设置延迟参数:
./airupnp-linux-aarch64 -l 1000:2000后台运行配置
在非Windows/MacOS系统上,可以使用-z参数让程序在后台运行:
./airupnp-linux-aarch64 -z系统自动启动设置
Linux系统服务配置
创建系统服务文件/etc/systemd/system/airupnp.service:
[Unit] Description=AirUPnP桥接服务 After=network-online.target Wants=network-online.target [Service] ExecStart=/var/lib/airconnect/airupnp-linux-arm -l 1000:2000 -Z -x /var/lib/airconnect/airupnp.xml Restart=on-failure RestartSec=30 [Install] WantedBy=multi-user.target启用并启动服务:
sudo systemctl enable airupnp.service sudo service airupnp startMacOS自动启动
创建启动代理文件~/Library/LaunchAgents/com.aircast.bridge.plist:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>com.aircast.bridge</string> <key>ProgramArguments</key> <array> <string>/[路径]/aircast-macos</string> <string>-Z</string> <string>-x</string> <string>/[路径]/aircast.xml</string> <string>-f</string> <string>/[路径]/aircast.log</string> </array> <key>RunAtLoad</key> <true/> <key>LaunchOnlyOnce</key> <true/> <key>KeepAlive</key> <true/> </dict> </plist>配置参数详解
命令行常用参数
-h:显示详细的命令行帮助信息-l <rtp延迟>:<http延迟>:设置音频延迟参数-c mp3|aac|flac|wav|pcm:设置音频重新编码格式-Z:禁用交互模式-z:禁用交互模式并自守护进程化
配置文件设置
创建配置文件config.xml,可以设置以下参数:
<common> <latency>1000:2000</latency> <codec>flac</codec> <metadata>1</metadata> </common>关键配置项说明:
latency:缓冲调整,解决音频卡顿或网络不佳问题codec:HTTP音频发送格式,推荐使用FLACmetadata:向播放器发送元数据
常见问题解决方案
设备发现失败
如果播放器经常消失,可能是路由器过滤了多播数据包。检查路由器的多播设置,确保允许mDNS流量通过。
音频延迟问题
当切换音轨或源时出现延迟,这是因为AirPlay和UPnP/Chromecast之间的协议差异导致的。可以通过调整延迟参数来优化。
静态版本使用
项目提供了静态链接版本(文件名包含"-static"),这些版本包含了所有必要的库文件。只有在常规版本无法正常工作时才建议使用静态版本。
高级使用技巧
多房间音频同步
AirConnect支持在多房间中同步播放同一音频源。确保所有设备都在同一网络中,并使用相同的音频编码格式。
音量同步控制
通过AirPlay客户端进行的音量更改会与原生控制应用程序同步。对于Sonos组,每个播放器的音量会相对调整。
特定播放器优化
Sonos播放器:
- 使用UPnP版本
- 组创建时只有主设备会显示为AirPlay播放器
- 使用
-l 1000:2000参数设置延迟
Bose SoundTouch:
- 工作良好,包括同步功能
- 需要使用Bose原生应用程序进行分组/取消分组
编译从源码
如果您需要从源代码编译:
git clone https://gitcode.com/gh_mirrors/ai/AirConnect cd AirConnect git submodule update --init cd airupnp make通过以上完整的配置和使用指南,您可以轻松地将AirConnect部署到您的家庭网络中,享受将AirPlay音频流传输到各种播放设备的便利。
【免费下载链接】AirConnectUse AirPlay to stream to UPnP/Sonos & Chromecast devices项目地址: https://gitcode.com/gh_mirrors/ai/AirConnect
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考