diff --git a/man/shairport-sync.html b/man/shairport-sync.html
index 16629683..364c365f 100644
--- a/man/shairport-sync.html
+++ b/man/shairport-sync.html
@@ -10,6 +10,7 @@
[-a name]
[-A latency]
[-B command]
+ [-c configurationfile]
[-E command]
[--forkedDaapdLatency=latency]
[--get-cover-art]
@@ -54,8 +55,212 @@
This allows multiple devices play the same source without getting out of phase with one another,
enabling, for example, simultaneous multi-room operation.
+
+ Settings can be made using the configuration file (recommended for all new installations) or the by using command-line options.
+
+
+ Configuration File Settings
+
+ You should use the configuration file for setting up shairport-sync.
+ This file is normally /etc/shairport-sync.conf.
+ You may need to have root privileges to modify it.
+
+ Settings are organised into groups, for example, there is a "general" group of
+ standard settings, and there is an "alsa" group with settings that pertain to the ALSA
+ back end.
+
+ Most of the settings have sensible default values, so most users will only need to set (1) the service name, (2) a password (if desired) and
+ (3) the output device. If the output device has a hardware mixer that can be used for volume control, then (4) the fact that the output mixer is hardware and (5) the output device mixer's volume-control name should be specificed. It is highly desirable to use the hardware mixer for volume control, if available -- response time is reduced to zero and the processor load is reduced.
+
+ A sample configuration file, with all settings commented out and with some usage notes,
+ is installed at /etc/shairport-sync.conf.sample.
+
+ To retain backwards compatability with previous versions of shairport-sync
+ you can use still use command line options, but any new features, etc. will
+ be available only via configuration file settings.
+
+ The configuration file is processed using the libconfig library
+ -- see http://www.hyperrealm.com/libconfig/libconfig_manual.html.
+
+ "GENERAL" SETTINGS
+ These are the settings available within the general group:
+
+
+ name="service_name";
+
+ Use this service_name to identify this player in iTunes, etc.
+ The default name is "Shairport Sync on <hostname>".
+
+
+
+
+ mdns_backend="avahi";
+ Not used, not tested
+
+
+ output_backend="alsa";
+ Default is "alsa"; other possibilities are "stdout", "pulse", "dummy". Only alsa supports synchronisation.
+
+
+ port=5000;
+ This is the port on which Shairport Sync listens for service requests.
+
+
+ udp_port_base=6001;
+ Allocation of UDP ports starts from this port number.
+
+
+ udp_port_range=100;
+ Look for free ports in this number of places, starting at the UDP port base. Only three ports are needed.
+
+
+ password="secret";
+ The default is that no password is needed.
+
+
+ interpolation="basic";
+ Interpolation method, also known as the "stuffing" method. The default is "basic", alternative is "soxr".
+
+
+ statistics="no";
+ Log statistics from time to time.
+
+
+ drift=88;
+ Allow synchronisation to drift by this number of frames before trying to correct it.
+
+
+ resync_threshold=2205;
+ A synchronisation error greater than this will cause audio to be muted while Shairport Sync attempts to resynchrone with the audio feed; 0 disables it.
+
+
+ log_verbosity=0;
+ "0" means no verbosity, "3" is most verbose.
+
+
+ ignore_volume_control="no";
+ Set this to "yes" if you want the volume to be at 100% no matter what the source's volume control is set to.
+
+
+ "LATENCIES" SETTINGS
+ These are the settings available within the latencies group:
+
+
+
+ default=88200;
+ Comment Here
+
+
+ itunes=99400;
+ Comment Here
+
+
+ airplay=88200;
+ Comment Here
+
+
+ forkedDaapd=99400;
+ Comment Here
+
+ "METADATA" SETTINGS
+ These are the settings available within the metadata group:
+
+
+
+ enabled="no";
+ Comment Here
+
+
+ include_cover_art="no";
+ Comment Here
+
+
+ pipe_name="/tmp/shairport-sync-metadata";
+ Comment Here
+
+
+ "SESSIONCONTROL" SETTINGS
+ These are the settings available within the sessioncontrol group:
+
+
+ run_this_before_play_begins="/path/to/application and args";
+ Comment Here
+
+
+ run_this_after_play_ends="/path/to/application and args";
+ Comment Here
+
+
+ wait_for_completion="no";
+ Comment Here
+
+
+ allow_session_interruption="no";
+ Comment Here
+
+
+ session_timeout=120;
+ Comment Here
+
+
+ "ALSA" SETTINGS
+ These are the settings available within the alsa group:
+
+
+ output_device="default";
+ Comment Here
+
+
+ mixer_type="software";
+ "software" or "hardware"
+
+
+ mixer_device="default";
+ actually, the mixer default is whatever the output_device is. Normally you wouldn't have to use this.
+
+
+ mixer_control_name="PCM";
+ the name of the mixer to use -- there is no default.
+
+
+ audio_backend_latency_offset=0;
+ Set this offset to compensate for a fixed delay in the audio back end. E.g. if the output device delays by 100 ms, set this to -4410.
+
+
+ audio_backend_buffer_desired_length=6615;
+ If set too small, buffer underflow occurs on low-powered machines. Too long and the response times with software mixer become annoying.
+
+
+ "PIPE" SETTINGS
+ These are the settings available within the pipe group:
+
+
+ audio_backend_latency_offset=0;
+ Set this offset to compensate for a fixed delay in the audio back end. E.g. if the output device delays by 100 ms, set this to -4410.
+
+
+ audio_backend_buffer_desired_length=44100;
+ Comment Here
+
+
+ name="/path/to/pipe";
+ there is no default pipe name for the output
+
+
+ "STDOUT" SETTINGS
+ These are the settings available within the stdout group:
+
+
+ audio_backend_latency_offset=0;
+ Set this offset to compensate for a fixed delay in the audio back end. E.g. if the output device delays by 100 ms, set this to -4410.
+
+
+ audio_backend_buffer_desired_length=44100;
+ Comment Here
+
+
Options
@@ -107,6 +312,13 @@
+ -c filename | --configfile=filename
+
+ Read configuration settings from filename. The default is to read them from /etc/shairport-sync.conf. For information about configuration settings, see the "Configuration File Settings" section above.
+
+
+
+
-D | --disconnectFromOutput
Disconnect the shairport-sync daemon from the output device and
@@ -198,7 +410,7 @@
Listen for metadata coming from the source and send it, along with metadata from
shairport-sync itself, to a pipe called shairport-sync-metadata
in the directory you specify. If you add the --get-cover-art then
- cover art will be sent through the pipe too. See https://github.com/mikebrady/shairport-sync-metadata-reader
+ cover art will be sent through the pipe too. See https://github.com/mikebrady/shairport-sync-metadata-reader
for a sample metadata reader.