Releases: mikebrady/shairport-sync
Releases · mikebrady/shairport-sync
Version 2.3.3.1 – Development
- Enhancement: Enclose metadata items with
<item>...</item>
to make it easier to parse with genuine XML tools.
(This is what 2.3.2 was supposed to be, but it was inadvertently based off the master branch.)
[Edit] This didn't work properly. Please go to 2.3.5 for working <item>
delimiters.
This is wrong.
Fuggettaboutit
Version 2.3.2 – Development (Unstable)
- Enhancement: Enclose metadata items with
<item>...</item>
to make it easier to parse with genuine XML tools.
[Edit] This didn't work. Please go to 2.3.5 for <item>...</item>
delimiters that work properly.
Version 2.3.1 – Development (Unstable)
Pretty Big Changes:
- Support for raw output to
stdout
or to a named pipe. - Support for configuration file at
/etc/shairport-sync.conf
.
Smaller Changes:
- Option to ignore volume control.
- General clean-up of flow and control of audio.
- Tidied up source using
clang-format
.
Feedback welcome!
Version 2.2.4 – Stable Version. Bugfixes.
- Fix an out-of-stack-space error that can occur in certain cases (thanks to https://github.com/joerg-krause).
- Fix a couple of compiler warnings (thanks to https://github.com/joerg-krause).
Version 2.3.0 – The initscript is optional; metadata feed added; bug fixes
Note
This is a release in the development (i.e. unstable) branch. For the stable version, follow the 2.2 branch and the 2.2.x releases.
Enhancement
- Adding the System V startup script (the "initscript") is now a configuration option. The default is to include it, so if you want to omit the installation of the initscript, add the configuration option
--without-initscript
. - Metadata support is now a compile-time option:
--with-metadata
. - A metadata feed has been added. Use the option
-M <pipe-directory>
, e.g.-M /tmp
. Shairport Sync will provide metadata in a pipe called<pipe-directory>/shairport-sync-metadata
. There's a sample metadata reader at https://github.com/mikebrady/shairport-sync-metadata-reader. The format of the metadata is a mixture of XML-style tags, 4-character codes and base64 data. Please look atrtsp.c
andplayer.c
for examples. Please note that the format of the metadata may change.
Beware: there appears to be a serious bug in iTunes, such that it may stall for a long period when sending large (more than a few hundred kilobytes) coverart images.
Bugfixes
- Fix a bug when compiling for Arch Linux on Raspberry Pi 2 (thanks to https://github.com/joaodriessen).
- Fix a bug whereby if the ANNOUNCE and/or SETUP method fails, the play_lock mutex is never unlocked, thus blocking other clients from connecting. This can affect all types of users, but particularly Pulseaudio users. (Thanks to https://github.com/jclehner.)
- Modify the init script to start after all services are ready. Add in a commented-out sleep command if users find it necessary (thanks to https://github.com/BNoiZe).
- Two memory leaks fixed (thanks to https://github.com/pdgendt).
- An error handling time specifications for flushes was causing an audible glitch when pausing and resuming some tracks. This has been fixed (thanks to https://github.com/Hamster128).
Version 2.2.3 – Bug Fixes
NOTE
This branch – 2.2 – is henceforward the "stable" branch, getting bug fixes and minor enhancements only. Branch 2.3 is now the development (unstable) branch.
All the metadata stuff has been moved to branch 2.3 -- the development branch.
Bugfixes
- Fix a bug when compiling for Arch Linux on Raspberry Pi 2 (thanks to https://github.com/joaodriessen).
- Fix a compiler warning (thanks to https://github.com/sdigit).
- Modify the init script to start after all services are ready. Add in a commented-out sleep command if users find it necessary (thanks to https://github.com/BNoiZe).
- Two memory leaks fixed (thanks to https://github.com/pdgendt).
- An error handling time specifications for flushes was causing an audible glitch when pausing and resuming some tracks. This has been fixed (thanks to https://github.com/Hamster128).
Version 2.2.2 – add a latency setting for forked-daapd sources
- An extra latency setting for forked-daapd sources – 99,400 frames by default – is
settable via a new option:--forkedDaapdLatency
.
Version 2.2.1 – password option, new "tolerance" option, bug fix, more...
Version 2.2.1
Bugfixes:
- If certain kinds of malformed RTSP packets were received, Shairport Sync would stop streaming. Now, it generally ignores faulty RTSP packets.
- The
--with-pulseaudio
compile option wasn't including a required library. This is fixed. Note that the PulseAudio back end doesn't work properly and is just included in the application because it was there in the original shairport. Play with it for experimentation only. - Fix typo in
init.d
script: "Headphones" -> "Headphone".
Extra documentation
- A brief note on how to compile libsoxr from source is included for the Raspberry Pi.
Version 2.2
Enhancements:
- New password option:
--password=SECRET
- New tolerance option:
--tolerance=FRAMES
. Use this option to specify the largest synchronisation error to allow before making corrections. The default is 88 frames, i.e. 2 milliseconds. The default tolerance is fine for streaming over wired ethernet; however, if some of the stream's path is via WiFi, or if the source is a third-party product, it may lead to much overcorrection -- i.e. the difference between "corrections" and "net correction" in the--statistics
option. Increasing the tolerence may reduce the amount of overcorrection.
2.1.15 Adjust latency better for different sources
- The default latency for iTunes is now 99,400 frames for iTunes 10 or later and 88,200 for earlier versions.
- Latencies are adjusted differently now, to adjust better to various sources:
- The default latency is now 88,200 frames, exactly 2 seconds. It was 99,400 frames. As before, the
-L
option allows you to set the default latency. - The
-L
option is no longer deprecated. - The
-L
option no longer overrides the-A
or-i
options. - The
-i
or--iTunesLatency
option only applies to iTunes 10 or later sources.
- The default latency is now 88,200 frames, exactly 2 seconds. It was 99,400 frames. As before, the