Version 5.6.3
This update contains bug fixes and enhancements and is recommended for all users.
For more details and acknowledgements, please see here.
Please refer to previous release notes for full updating information.
Bug Fixes
- Register the
libsoxrexit handler before Shairport Sync's own to ensure it runs after the main exit handler on program exit. - Remote Control: Allow
VolumeUp/VolumeDowncommands to be sent overDACPin Classic AirPlay. D-Bus/MPRIS: prevent a data access race by exporting interface objects before the bus name becomes visible to ensure the objects are visible when the bus name appears.- Metadata: Ensure stale connection information is not retained on new connections.
- MPRIS: Set the MPRIS
Rateproperty to1.0. - If frames are skipped at the start of play, use the timing of the first frame that is actually played rather than that of a skipped frame.
tinysvcmdns: set multicast Time-To-Live (TTL) to 255. The default multicast TTL is usually 1, which some access points discard.
Note:tinysvcdnsis still deprecated for security reasons. This bug fix does not change that.D-Bus/MPRIS: when the volume changes, send the new level rather than the previous (stale) value.- Mac/Homebrew: Fix a build error on macOS by removing a stray from
get_info_response.xml.
Enhancements
- Add a "metadata" mDNS backend for apps with their own responder. This new backend sends mDNS information as metadata with the
ssnc/svrgtype and code. - Add an optional D-Bus name tag to enable multiple Shairport Sync instances to have distinguished D-Bus bus names.
Other Changes
- Move mDNS and dns-sd files into a separate subdirectory.