]> git.ipfire.org Git - thirdparty/shairport-sync.git/commitdiff
Update RELEASENOTES.md
authorMike Brady <mikebrady@eircom.net>
Tue, 12 Feb 2019 16:22:02 +0000 (16:22 +0000)
committerGitHub <noreply@github.com>
Tue, 12 Feb 2019 16:22:02 +0000 (16:22 +0000)
RELEASENOTES.md

index 9a424de775c4121fea3b38232c1e61efe2724b26..ef07d12e1c8a917a7c1f178dfb179f434120f258 100644 (file)
@@ -1,15 +1,31 @@
+Version 3.3d52 to Version 3.3d40
+====
+**New Features**
+* Two new external program/script hooks – `run_this_before_entering_active_state` and `run_this_after_exiting_active_state` are provided for when the system becomes active and when it becomes inactive. Background: Many users use the `run_this_before_play_begins` program hook to turn on an amplifier and the `run_this_after_play_ends` hook to turn it off. A big problem is when another play session starts immediately afterwards. This happens, for example, when a YouTube clip ends and the next one begins, and the time interval can be very short. All this switching can stress electronics and speakers. To get around this, the concept of an *active state* covering a sequence of play sessions is introduced. An active state begins when a play session starts. When the play session ends, the system stays in the active state for a period called the `active_state_timeout`, 10 seconds by default. If another play session starts before that timeout elapses, the system remains in the active state; otherwise the system leaves the active state.
+* The new `alsa`-only Disable Standby feature, intended to reduce audible pops by preventing the DAC entering standby mode, can be set with the `alsa` group setting `disable_standby_mode` to `always`, `while_active` or `never`. The `always` setting is recommended for systems where the output device is dedicated to Shairport Sync. The "Disable Standby" mode can be set or cleared via the D-Bus interface `DisableStandby` property.
+
+**Enhancements**
+* The volume-control software has been completely rewritten. From a user's point of view, the result should be a much smoother response to volume contol changes, free from artefacts. It is now also possible to combine the hardware mixer and the software attenuator in two ways -- giving priority to the software mixer of giving priority to the hardware mixer.
+* The muting/unmuting code has been rewritten to be simpler and more consistent.
+* In the `alsa` backend, new `play()` and `delay()` functions minimise the use of `snd_pcm_recover()` to prevent unnecessary resets of the output DACs.
+* In the `alsa` backend driver, hardware isn't accessed until the first time it is needed. That is, when Shairport Sync starts up, it no longer needs to access the device momentarily. instead, it waits for the first use.
+* The `libdaemon` library is now an optional build. It is not necessary for `systemd` systems and van be omitted. Use the `--without-libdaemon` configuration option to leave it out.
+**Bug Fixes**
+* The `mdns-external` method used to advertise the Shairport Sync AirPlay service on ZeroConf is now an optional build and is omitted by default. Hitherto, it was included with `--with-avahi` and could not be included on its own.
+* A number of memory leaks associated with the use of OpenSSL have been fixed.
+
 Version 3.3d39 to Version 3.3d38
 ====
 
 **New Feature**
 
-This important new feature helps with removing some annoying clicking / popping noises. It is really pretty impressive, especially combined with the fixes to the dithering code described below. If you can enable 24- or 32-bit audio output to your output device, you can get even better results.
+A new feature called *Disable Standby* keeps the output DAC in the play state all the time and helps to remove some annoying clicking / popping noises. It is really pretty impressive, especially combined with the fixes to the dithering code described below. If you can enable 24- or 32-bit audio output to your output device, you can get even better results.
 
 This is an ALSA-specific attempt to remove the annoying low-level clicking sounds that some output devices make just when they start processing audio and sometimes when they stop. Typically a faint click might be heard just before a play session starts or just before audio resumes after a pause. Similarly, a faint click can sometimes be heard just after a play session ends.
 
 It is extremely difficult to remove these clicks completely from the hardware, so this new feature ensures that — once Shairport Sync has started — the output device avoids situations where these clicks might be generated by *always* playing audio. To accomplish this, if Shairport Sync isn't actually playing anything, audio frames consisting of silence are sent to the output device. Apart from the initial startup transition, the output device never stops playing, avoiding both starting and stopping transitions.
 
-To enable this feature, a new `alsa` group setting with the name `disable_standby_mode` is available. (If you do a full `$ sudo make install`, a new sample configuration file with this setting in it is installed at `/etc/shairport-sync.conf.sample` or `/usr/local/etc/shairport-sync.conf.sample`.) The default for the setting is `"no"`.
+To enable this feature, a new `alsa` group setting with the name `disable_standby_mode` is available. (If you do a full `$ sudo make install`, a new sample configuration file with this setting in it is installed at `/etc/shairport-sync.conf.sample` or `/usr/local/etc/shairport-sync.conf.sample`.) The default for the setting is `"no"`. *(Note -- this was changed subsequently; please see above.)*
 
 A downside to this feature is that the output device totally dedicated to Shairport Sync. For this reason, this new feature is disabled by default. 
 
@@ -17,9 +33,7 @@ Note -- this setting is likely to change. It will probably be necessary to modif
 
 **Enhancements and Bug Fixes**
 
-At present, Shairport Sync adds dither to the audio if (a) the built-in software-based volume control is used, (b) if the audio is mixed to mono or (3) if there is a change in sample size, say from 16- to 24-bit. The code for generating dither has been much improved. Due to a poor pseudo-random number arrangement, the dither noise didn't sound like white noise -- now it does.
-
-In addition, if dither is to be added, it is also added to the silence inserted just prior to the start of play, and is also added to the silent frames used to prevent the output device from going into standby mode, if selected.
+* At present, Shairport Sync adds dither to the audio if (a) the built-in software-based volume control is used, (b) if the audio is mixed to mono or (3) if there is a change in sample size, say from 16- to 24-bit. The code for generating dither has been much improved. Due to a poor pseudo-random number arrangement, the dither noise didn't sound like white noise -- now it does. In addition, if dither is to be added, it is also added to the silence inserted just prior to the start of play, and is also added to the silent frames used to prevent the output device from going into standby mode, if selected.
 
 Version 3.3d37 to Version 3.3d22
 ====