Skip to content

Really Big Update -- AirPlay 2!

Pre-release
Pre-release
Compare
Choose a tag to compare
@mikebrady mikebrady released this 26 Oct 18:58
· 456 commits to master since this release

Version 4.1 brings support for AirPlay 2 operation. It works with iOS, iPadOS, macOS, HomePod mini and Apple TV sources, but not with Windows.

Limited support is available for HomeKit -- Shairport Sync speakers can be added to the Home app, though not all features are working.

AirPlay 2 operation requires a companion program called NQPTP and requires a somewhat more powerful system. Please see AIRPLAY2.md for more.

Note that you can still build Shairport Sync to support "classic" AirPlay (aka "AirPlay 1") as before.

The various guides for building and updating Shairport Sync have been consolidated into BUILD.md.

Here is a brief initial list of the high-level new features and changes:

  • AirPlay 2 operation.
  • Improved libao backend for better compatibility with HomeBrew installations.
  • Improved MQTT and D-Bus facilities.
  • Metadata improvements.
  • Automatically-generated Docker images.

There have been many many bug fixes and enhancements to the core operation of Shairport Sync.

Changes

Changes in 4.1-rc1:

  • Bug fixes: close DAC when SPS goes inactive under the "auto" setting.
  • Fix some minor Makefile issues.
  • Documentation: Improved "Events.md" page.

Changes in 4.1-rc2:

  • Bug fixes: Fix a memory allocation crashing bug. Fix two memory leaks.
  • Start using libgcrypt again to avoid a memory leak in libcrypto.
  • Documentation updates.

IMPORTANT -- the libgcrypt library is now needed (again) for building Shairport Sync -- see the BUILD.md guide.

Changes in 4.1-rc3:

  • Bug fix: Fix an elusive crashing bug when a session key is missing from an AirPlay 2 play request.
  • Enhancement: Add a new information/debugging option --displayConfig or -X.
  • Enhancement: Improve debug messaging with libdaemon.
  • Enhancement: Help message update.
  • Enhancement: The xmltoman library is no longer needed.
  • Enhancement: Improve the use of lightweight git tags used by GitHub to tag releases.
  • Documentation: Update man page.
  • Documentation: Add a page on adjusting synchronization to match other speakers.

Changes in 4.1-rc4:

  • Bug fix: Fix a bug that delayed metadata appearing in the D-Bus, MPRIS and MQTT interfaces.
  • Docker: Additional command line arguments to the docker run command are passed to the shairport-sync application on the AirPlay 2 docker image.
  • Docker: Use the s6-overlay system on the Classic docker image.
  • Enhancement: Clean up the generation of Play/Pause/Stop conditions. Add true Pause for AirPlay 2 Buffered streams.
  • Documentation: Some cleanups and updates.

Changes in 4.1-rc5:

  • Docker: start using latest and rolling tags like Ubuntu and use development tags as well.
  • Enhancement: tidy up the --display_config output to skip empty stanzas and to note if there are not active settings whatever.