An AirPlay and AirPlay 2 audio player for Linux, FreeBSD, and OpenBSD that streams audio from Apple devices and AirPlay sources.
Shairport Sync is an open-source AirPlay and AirPlay 2 audio player for Linux, FreeBSD, and OpenBSD. It streams audio from Apple devices and AirPlay sources to a computer's sound system, supporting high-quality playback with precise synchronization. The project solves the need for a reliable, self-hosted AirPlay receiver on Unix-like platforms.
Users and developers on Linux, FreeBSD, or OpenBSD who want to stream audio from Apple devices or AirPlay sources to their systems, particularly those using dedicated, low-power hardware like Raspberry Pi.
Developers choose Shairport Sync for its robust support of AirPlay 2, precise audio synchronization, and flexibility in output options and metadata handling, all while being fully open-source and self-hostable.
AirPlay and AirPlay 2 audio player
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports stereo and multichannel formats like 5.1 and 7.1, including lossless 24-bit stereo at 48 kHz, enabling high-fidelity playback from modern Apple devices.
Outputs to ALSA, sndio, PipeWire, PulseAudio, Unix pipes, or STDOUT, allowing integration with diverse sound systems and custom pipelines.
Uses accurate timing from ALSA or sndio to play audio exactly as specified by the source, minimizing drift for multi-room or synchronized setups.
Delivers artist info, album art, and more via pipes, UDP, MQTT, or D-Bus, facilitating home automation and external display applications.
Explicitly does not support AirPlay video or photo streaming, limiting it to audio-only use cases compared to full AirPlay implementations.
Achieving full synchronization requires building from source, configuring ALSA for direct DAC access, and potentially using NQPTP for AirPlay 2, which can be time-consuming.
AirPlay 2 support has documented restrictions and relies on the external NQPTP application for timing, adding dependency and setup overhead.
Release notes warn of potential breaking changes between versions, requiring users to review updates carefully to avoid disruptions.