\fBname=\f1\fI"service_name"\f1\fB;\f1
Use this \fIservice_name\f1 to identify this player in iTunes, etc. The default name is "Shairport Sync on <hostname>".
.TP
+\fBpassword=\f1\fI"password"\f1\fB;\f1
+Require the password \fIpassword\f1 to connect to the service. If you leave this setting commented out, no password is needed.
+.TP
+\fBinterpolation=\f1\fI"mode"\f1\fB;\f1
+Interpolate, or "stuff", the audio stream using the \fImode\f1. Interpolation here refers to the process of adding or removing frames of audio to or from the stream sent to the output device to keep it exactly in synchrony with the player. The default mode, "basic", is normally almost completely inaudible. The alternative mode, "soxr", is even less obtrusive but requires much more processing power. For this mode, support for libsoxr, the SoX Resampler Library, must be selected when shairport-sync is compiled.
+.TP
+\fBstatistics=\f1\fI"setting"\f1\fB;\f1
+Use this \fIsetting\f1 to enable ("yes") or disable ("no") the output of some statistical information on the console or in the log. The default is to disable statistics.
+.TP
\fBmdns_backend=\f1\fI"backend"\f1\fB;\f1
Shairport Sync has a number of modules of code ("backends") for interacting with the mDNS service to be used to advertise itself. Normally, the first mDNS backend that works is selected. This setting forces the selection of the specific mDNS \fIbackend\f1. The default is "avahi". Perform the command \fBshairport-sync -h\f1 to get a list of available mDNS modules.
.TP
\fBudp_port_range=\f1\fI100\f1\fB;\f1
Use this in conjunction with the prevous setting to specify the range of ports that can be checked for availability. Only three ports are needed. The default is 100, thus 100 ports will be checked from port 6001 upwards until three are found.
.TP
-\fBpassword=\f1\fI"password"\f1\fB;\f1
-Require the password \fIpassword\f1 to connect to the service. If you leave this setting commented out, no password is needed.
-.TP
-\fBinterpolation=\f1\fI"mode"\f1\fB;\f1
-Interpolate, or "stuff", the audio stream using the \fImode\f1. Interpolation here refers to the process of adding or removing frames of audio to or from the stream sent to the output device to keep it exactly in synchrony with the player. The default mode, "basic", is normally almost completely inaudible. The alternative mode, "soxr", is even less obtrusive but requires much more processing power. For this mode, support for libsoxr, the SoX Resampler Library, must be selected when shairport-sync is compiled.
-.TP
-\fBstatistics=\f1\fI"setting"\f1\fB;\f1
-Use this \fIsetting\f1 to enable ("yes") or disable ("no") the output of some statistical information on the console or in the log. The default is to disable statistics.
-.TP
\fBdrift=\f1\fIframes\f1\fB;\f1
-Allow playback to be up to \fIframes\f1 out of exact synchronization before attempting to correct it. The default is 88 frames, i.e. 2 ms. The smaller the tolerance, the more likely it is that overcorrection will occur. Overcorrection is when more corrections (insertions and deletions) are made than are strictly necessary to keep the stream in sync. Use the \fBstatistics\f1 setting to monitor correction levels. Corrections should not greatly exceed net corrections.
+Allow playback to drift up to \fIframes\f1 out of exact synchronization before attempting to correct it. The default is 88 frames, i.e. 2 ms. The smaller the tolerance, the more likely it is that overcorrection will occur. Overcorrection is when more corrections (insertions and deletions) are made than are strictly necessary to keep the stream in sync. Use the \fBstatistics\f1 setting to monitor correction levels. Corrections should not greatly exceed net corrections.
.TP
\fBresync_threshold=\f1\fIthreshold\f1\fB;\f1
Resynchronise if timings differ by more than \fBthreshold\f1 frames. If the output timing differs from the source timing by more than the threshold, output will be muted and a full resynchronisation will occur. The default threshold is 2,205 frames, i.e. 50 milliseconds. Specify 0 to disable resynchronisation.
.TP
\fB"LATENCIES" SETTINGS\f1
There are four default latency settings, chosen automatically. One latency matches the latency used by recent versions of iTunes when playing audio and another matches the latency used by so-called "AirPlay" devices, including iOS devices and iTunes and Quicktime Player when they are playing video. A third latency is used when the audio source is forked-daapd. The fourth latency is the default if no other latency is chosen and is used for older versions of iTunes.
+
+If you want to change latencies to compensate for a delay in the audio output device (which will have the same effect on all sources), instead of changing these individual latencies, consider using the \fBaudio_backend_latency_offset\f1 setting in the \fBalsa\f1 group (or the appropriate other group if you're not outputing through the alsa backend).
.TP
\fBitunes=\f1\fIlatency\f1\fB;\f1
This is the \fIlatency\f1, in frames, used for iTunes 10 or later. Default is 99,400.
This is the \fIlatency\f1, in frames, used when the source is unrecognised. Default is 88,200.
.TP
\fB"METADATA" SETTINGS\f1
-Shairport Sync can process metadata provided by the source, such as Track Number, Album Name, cover art, etc. and can provide additional metadata such as volume level, pause/resume, etc. It provides the metadata to a pipe, by default \fI/tmp/shairport-sync-metadata\f1. To process metadata, Shairport Sync must have been compiled with metadata support included. The \fBmetadata\f1 group of settings allow you to enable metadata handling and to control certain aspects of it. These are the settings available within the \fBmetadata\f1 group:
+Shairport Sync can process metadata provided by the source, such as Track Number, Album Name, cover art, etc. and can provide additional metadata such as volume level, pause/resume, etc. It provides the metadata to a pipe, by default \fI/tmp/shairport-sync-metadata\f1. To process metadata, Shairport Sync must have been compiled with metadata support included. You can check tht this is so by running \fBshairport-sync -V\f1; the identification string will contain the word \fBmetadata\f1.
+
+The \fBmetadata\f1 group of settings allow you to enable metadata handling and to control certain aspects of it:
.TP
\fBenabled=\f1\fI"choice"\f1\fB;\f1
-Comment Here
+Set the \fIchoice\f1 to "yes" to enable Shairport Sync to look for metadata from the audio source and to forward it, along with metadata generated by Shairport Sync itself, to the metadata pipe. The default is "no".
.TP
-\fBinclude_cover_art=\f1\fI"no"\f1\fB;\f1
-Comment Here
+\fBinclude_cover_art=\f1\fI"choice"\f1\fB;\f1
+Set the \fIchoice\f1 to "yes" to enable Shairport Sync to look for cover art from the audio source and to forward it to the metadata pipe. A reason for not enabling cover art is that the images can sometimes be very large and mey delay transmission of subsequent metadata through the pipe. The default is "no".
.TP
-\fBpipe_name=\f1\fI"/tmp/shairport-sync-metadata"\f1\fB;\f1
-Comment Here
+\fBpipe_name=\f1\fI"filepathname"\f1\fB;\f1
+Specify the absolute path name of the pipe through which metadata should be sent The default is \fI/tmp/shairport-sync-metadata\f1".
.TP
\fB"SESSIONCONTROL" SETTINGS\f1
-These are the settings available within the \fBsessioncontrol\f1 group:
+Shairport Sync can run programs just before it starts to play an audio stream and just after it finishes. You specify them using the sessioncontrol group settings run_this_before_play_begins and run_this_after_play_ends.
.TP
\fBrun_this_before_play_begins=\f1\fI"/path/to/application and args"\f1\fB;\f1
-Comment Here
+Here you can specify a program and its arguments that will be run just before a play session begins. Be careful to include the full path to the application. The application must be marked as executable and, if it is a script, its first line must begin with the standard \fI#!/bin/...\f1 as appropriate.
.TP
\fBrun_this_after_play_ends=\f1\fI"/path/to/application and args"\f1\fB;\f1
-Comment Here
+Here you can specify a program and its arguments that will be run just after a play session ends. Be careful to include the full path to the application. The application must be marked as executable and, if it is a script, its first line must begin with the standard \fI#!/bin/...\f1 as appropriate.
.TP
-\fBwait_for_completion=\f1\fI"no"\f1\fB;\f1
-Comment Here
+\fBwait_for_completion=\f1\fI"choice"\f1\fB;\f1
+Set \fIchoice\f1 to "yes" to make Shairport Sync wait until the programs specified in the \fBrun_this_before_play_begins\f1 and \fBrun_this_after_play_ends=\f1 have completed execution before continuing. The default is "no".
.TP
\fBallow_session_interruption=\f1\fI"no"\f1\fB;\f1
Comment Here
The default name is "Shairport Sync on <hostname>".
</optdesc>
</option>
+
+ <option>
+ <p><opt>password=</opt><arg>"password"</arg><opt>;</opt></p>
+ <optdesc>Require the password <arg>password</arg> to connect to the service. If you leave this setting commented out, no password is needed.</optdesc>
+ </option>
+ <option>
+ <p><opt>interpolation=</opt><arg>"mode"</arg><opt>;</opt></p>
+ <optdesc>Interpolate, or "stuff", the audio stream using the <arg>mode</arg>. Interpolation here refers to the
+ process of adding or removing frames of audio to or from the
+ stream sent to the output device to keep it exactly in synchrony
+ with the player.
+ The default mode, "basic", is normally almost completely inaudible.
+ The alternative mode, "soxr", is even less obtrusive but
+ requires much more processing power. For this mode, support for
+ libsoxr, the SoX Resampler Library, must be selected when
+ shairport-sync is compiled.
+ </optdesc>
+ </option>
+
+ <option>
+ <p><opt>statistics=</opt><arg>"setting"</arg><opt>;</opt></p>
+ <optdesc>Use this <arg>setting</arg> to enable ("yes") or disable ("no") the output of some statistical information on the console or in the log. The default is to disable statistics.</optdesc>
+ </option>
<option>
<p><opt>mdns_backend=</opt><arg>"backend"</arg><opt>;</opt></p>
<optdesc>Use this in conjunction with the prevous setting to specify the range of ports that can be checked for availability. Only three ports are needed. The default is 100, thus 100 ports will be checked from port 6001 upwards until three are found.</optdesc>
</option>
<option>
- <p><opt>password=</opt><arg>"password"</arg><opt>;</opt></p>
- <optdesc>Require the password <arg>password</arg> to connect to the service. If you leave this setting commented out, no password is needed.</optdesc>
- </option>
- <option>
- <p><opt>interpolation=</opt><arg>"mode"</arg><opt>;</opt></p>
- <optdesc>Interpolate, or "stuff", the audio stream using the <arg>mode</arg>. Interpolation here refers to the
- process of adding or removing frames of audio to or from the
- stream sent to the output device to keep it exactly in synchrony
- with the player.
- The default mode, "basic", is normally almost completely inaudible.
- The alternative mode, "soxr", is even less obtrusive but
- requires much more processing power. For this mode, support for
- libsoxr, the SoX Resampler Library, must be selected when
- shairport-sync is compiled.
- </optdesc>
- </option>
- <option>
- <p><opt>statistics=</opt><arg>"setting"</arg><opt>;</opt></p>
- <optdesc>Use this <arg>setting</arg> to enable ("yes") or disable ("no") the output of some statistical information on the console or in the log. The default is to disable statistics.</optdesc>
- </option>
- <option>
<p><opt>drift=</opt><arg>frames</arg><opt>;</opt></p>
- <optdesc>Allow playback to be up to <arg>frames</arg> out of exact synchronization before attempting to correct it.
+ <optdesc>Allow playback to drift up to <arg>frames</arg> out of exact synchronization before attempting to correct it.
The default is 88 frames, i.e. 2 ms. The smaller the tolerance, the more likely it is that overcorrection will occur.
Overcorrection is when more corrections (insertions and deletions) are made than are strictly necessary to keep the stream in sync. Use the <opt>statistics</opt> setting to
monitor correction levels. Corrections should not greatly exceed net corrections.
<option><p><opt>"LATENCIES" SETTINGS</opt></p></option>
<p>There are four default latency settings, chosen automatically. One latency matches the latency used by recent versions of iTunes when playing audio and another matches the latency used by so-called "AirPlay" devices, including iOS devices and iTunes and Quicktime Player when they are playing video. A third latency is used when the audio source is forked-daapd. The fourth latency is the default if no other latency is chosen and is used for older versions of iTunes.</p>
+ <p>If you want to change latencies to compensate for a delay in the audio output device (which will have the same effect on all sources), instead of changing these individual latencies, consider using the <opt>audio_backend_latency_offset</opt> setting in the <opt>alsa</opt> group (or the appropriate other group if you're not outputing through the alsa backend).</p>
<option>
</option>
<option><p><opt>"METADATA" SETTINGS</opt></p></option>
- <p>Shairport Sync can process metadata provided by the source, such as Track Number, Album Name, cover art, etc. and can provide additional metadata such as volume level, pause/resume, etc. It provides the metadata to a pipe, by default <file>/tmp/shairport-sync-metadata</file>. To process metadata, Shairport Sync must have been compiled with metadata support included. The <opt>metadata</opt> group of settings allow you to enable metadata handling and to control certain aspects of it. These are the settings available within the <opt>metadata</opt> group:</p>
+ <p>Shairport Sync can process metadata provided by the source, such as Track Number, Album Name, cover art, etc. and can provide additional metadata such as volume level, pause/resume, etc. It provides the metadata to a pipe, by default <file>/tmp/shairport-sync-metadata</file>. To process metadata, Shairport Sync must have been compiled with metadata support included. You can check tht this is so by running <opt>shairport-sync -V</opt>; the identification string will contain the word <opt>metadata</opt>.</p><p>The <opt>metadata</opt> group of settings allow you to enable metadata handling and to control certain aspects of it:</p>
<option>
<p><opt>enabled=</opt><arg>"choice"</arg><opt>;</opt></p>
- <optdesc>Comment Here</optdesc>
+ <optdesc>Set the <arg>choice</arg> to "yes" to enable Shairport Sync to look for metadata from the audio source and to forward it, along with metadata generated by Shairport Sync itself, to the metadata pipe. The default is "no".</optdesc>
</option>
<option>
- <p><opt>include_cover_art=</opt><arg>"no"</arg><opt>;</opt></p>
- <optdesc>Comment Here</optdesc>
+ <p><opt>include_cover_art=</opt><arg>"choice"</arg><opt>;</opt></p>
+ <optdesc>Set the <arg>choice</arg> to "yes" to enable Shairport Sync to look for cover art from the audio source and to forward it to the metadata pipe. A reason for not enabling cover art is that the images can sometimes be very large and mey delay transmission of subsequent metadata through the pipe. The default is "no".</optdesc>
</option>
<option>
- <p><opt>pipe_name=</opt><arg>"/tmp/shairport-sync-metadata"</arg><opt>;</opt></p>
- <optdesc>Comment Here</optdesc>
+ <p><opt>pipe_name=</opt><arg>"filepathname"</arg><opt>;</opt></p>
+ <optdesc>Specify the absolute path name of the pipe through which metadata should be sent The default is <file>/tmp/shairport-sync-metadata</file>".</optdesc>
</option>
<option><p><opt>"SESSIONCONTROL" SETTINGS</opt></p></option>
- These are the settings available within the <opt>sessioncontrol</opt> group:
+ <p>Shairport Sync can run programs just before it starts to play an audio stream and just after it finishes. You specify them using the sessioncontrol group settings run_this_before_play_begins and run_this_after_play_ends. </p>
+
<option>
<p><opt>run_this_before_play_begins=</opt><arg>"/path/to/application and args"</arg><opt>;</opt></p>
- <optdesc>Comment Here</optdesc>
+ <optdesc>Here you can specify a program and its arguments that will be run just before a play session begins. Be careful to include the full path to the application.
+ The application must be marked as executable and, if it is a script, its first line must begin with the standard <file>#!/bin/...</file> as appropriate.</optdesc>
</option>
<option>
<p><opt>run_this_after_play_ends=</opt><arg>"/path/to/application and args"</arg><opt>;</opt></p>
- <optdesc>Comment Here</optdesc>
+ <optdesc>Here you can specify a program and its arguments that will be run just after a play session ends. Be careful to include the full path to the application.
+ The application must be marked as executable and, if it is a script, its first line must begin with the standard <file>#!/bin/...</file> as appropriate.</optdesc>
</option>
<option>
- <p><opt>wait_for_completion=</opt><arg>"no"</arg><opt>;</opt></p>
- <optdesc>Comment Here</optdesc>
+ <p><opt>wait_for_completion=</opt><arg>"choice"</arg><opt>;</opt></p>
+ <optdesc>Set <arg>choice</arg> to "yes" to make Shairport Sync wait until the programs specified in the <opt>run_this_before_play_begins</opt> and <opt>run_this_after_play_ends=</opt> have completed execution before continuing. The default is "no".</optdesc>
</option>
<option>
<p><opt>allow_session_interruption=</opt><arg>"no"</arg><opt>;</opt></p>
The default name is "Shairport Sync on <hostname>".
+
+
+ <p><b>password=</b><em>"password"</em><b>;</b></p>
+ Require the password <em>password</em> to connect to the service. If you leave this setting commented out, no password is needed.
+
+
+ <p><b>interpolation=</b><em>"mode"</em><b>;</b></p>
+ Interpolate, or "stuff", the audio stream using the <em>mode</em>. Interpolation here refers to the
+ process of adding or removing frames of audio to or from the
+ stream sent to the output device to keep it exactly in synchrony
+ with the player.
+ The default mode, "basic", is normally almost completely inaudible.
+ The alternative mode, "soxr", is even less obtrusive but
+ requires much more processing power. For this mode, support for
+ libsoxr, the SoX Resampler Library, must be selected when
+ shairport-sync is compiled.
+
+
+
+
+ <p><b>statistics=</b><em>"setting"</em><b>;</b></p>
+ Use this <em>setting</em> to enable ("yes") or disable ("no") the output of some statistical information on the console or in the log. The default is to disable statistics.
+
<p><b>mdns_backend=</b><em>"backend"</em><b>;</b></p>
Use this in conjunction with the prevous setting to specify the range of ports that can be checked for availability. Only three ports are needed. The default is 100, thus 100 ports will be checked from port 6001 upwards until three are found.
- <p><b>password=</b><em>"password"</em><b>;</b></p>
- Require the password <em>password</em> to connect to the service. If you leave this setting commented out, no password is needed.
-
-
- <p><b>interpolation=</b><em>"mode"</em><b>;</b></p>
- Interpolate, or "stuff", the audio stream using the <em>mode</em>. Interpolation here refers to the
- process of adding or removing frames of audio to or from the
- stream sent to the output device to keep it exactly in synchrony
- with the player.
- The default mode, "basic", is normally almost completely inaudible.
- The alternative mode, "soxr", is even less obtrusive but
- requires much more processing power. For this mode, support for
- libsoxr, the SoX Resampler Library, must be selected when
- shairport-sync is compiled.
-
-
-
- <p><b>statistics=</b><em>"setting"</em><b>;</b></p>
- Use this <em>setting</em> to enable ("yes") or disable ("no") the output of some statistical information on the console or in the log. The default is to disable statistics.
-
-
<p><b>drift=</b><em>frames</em><b>;</b></p>
- Allow playback to be up to <em>frames</em> out of exact synchronization before attempting to correct it.
+ Allow playback to drift up to <em>frames</em> out of exact synchronization before attempting to correct it.
The default is 88 frames, i.e. 2 ms. The smaller the tolerance, the more likely it is that overcorrection will occur.
Overcorrection is when more corrections (insertions and deletions) are made than are strictly necessary to keep the stream in sync. Use the <b>statistics</b> setting to
monitor correction levels. Corrections should not greatly exceed net corrections.
<p><b>"LATENCIES" SETTINGS</b></p>
<p>There are four default latency settings, chosen automatically. One latency matches the latency used by recent versions of iTunes when playing audio and another matches the latency used by so-called "AirPlay" devices, including iOS devices and iTunes and Quicktime Player when they are playing video. A third latency is used when the audio source is forked-daapd. The fourth latency is the default if no other latency is chosen and is used for older versions of iTunes.</p>
+ <p>If you want to change latencies to compensate for a delay in the audio output device (which will have the same effect on all sources), instead of changing these individual latencies, consider using the <b>audio_backend_latency_offset</b> setting in the <b>alsa</b> group (or the appropriate other group if you're not outputing through the alsa backend).</p>
<p><b>"METADATA" SETTINGS</b></p>
- <p>Shairport Sync can process metadata provided by the source, such as Track Number, Album Name, cover art, etc. and can provide additional metadata such as volume level, pause/resume, etc. It provides the metadata to a pipe, by default <em>/tmp/shairport-sync-metadata</em>. To process metadata, Shairport Sync must have been compiled with metadata support included. The <b>metadata</b> group of settings allow you to enable metadata handling and to control certain aspects of it. These are the settings available within the <b>metadata</b> group:</p>
+ <p>Shairport Sync can process metadata provided by the source, such as Track Number, Album Name, cover art, etc. and can provide additional metadata such as volume level, pause/resume, etc. It provides the metadata to a pipe, by default <em>/tmp/shairport-sync-metadata</em>. To process metadata, Shairport Sync must have been compiled with metadata support included. You can check tht this is so by running <b>shairport-sync -V</b>; the identification string will contain the word <b>metadata</b>.</p><p>The <b>metadata</b> group of settings allow you to enable metadata handling and to control certain aspects of it:</p>
<p><b>enabled=</b><em>"choice"</em><b>;</b></p>
- Comment Here
+ Set the <em>choice</em> to "yes" to enable Shairport Sync to look for metadata from the audio source and to forward it, along with metadata generated by Shairport Sync itself, to the metadata pipe. The default is "no".
- <p><b>include_cover_art=</b><em>"no"</em><b>;</b></p>
- Comment Here
+ <p><b>include_cover_art=</b><em>"choice"</em><b>;</b></p>
+ Set the <em>choice</em> to "yes" to enable Shairport Sync to look for cover art from the audio source and to forward it to the metadata pipe. A reason for not enabling cover art is that the images can sometimes be very large and mey delay transmission of subsequent metadata through the pipe. The default is "no".
- <p><b>pipe_name=</b><em>"/tmp/shairport-sync-metadata"</em><b>;</b></p>
- Comment Here
+ <p><b>pipe_name=</b><em>"filepathname"</em><b>;</b></p>
+ Specify the absolute path name of the pipe through which metadata should be sent The default is <em>/tmp/shairport-sync-metadata</em>".
<p><b>"SESSIONCONTROL" SETTINGS</b></p>
- These are the settings available within the <b>sessioncontrol</b> group:
+ <p>Shairport Sync can run programs just before it starts to play an audio stream and just after it finishes. You specify them using the sessioncontrol group settings run_this_before_play_begins and run_this_after_play_ends. </p>
+
<p><b>run_this_before_play_begins=</b><em>"/path/to/application and args"</em><b>;</b></p>
- Comment Here
+ Here you can specify a program and its arguments that will be run just before a play session begins. Be careful to include the full path to the application.
+ The application must be marked as executable and, if it is a script, its first line must begin with the standard <em>#!/bin/...</em> as appropriate.
<p><b>run_this_after_play_ends=</b><em>"/path/to/application and args"</em><b>;</b></p>
- Comment Here
+ Here you can specify a program and its arguments that will be run just after a play session ends. Be careful to include the full path to the application.
+ The application must be marked as executable and, if it is a script, its first line must begin with the standard <em>#!/bin/...</em> as appropriate.
- <p><b>wait_for_completion=</b><em>"no"</em><b>;</b></p>
- Comment Here
+ <p><b>wait_for_completion=</b><em>"choice"</em><b>;</b></p>
+ Set <em>choice</em> to "yes" to make Shairport Sync wait until the programs specified in the <b>run_this_before_play_begins</b> and <b>run_this_after_play_ends=</b> have completed execution before continuing. The default is "no".
<p><b>allow_session_interruption=</b><em>"no"</em><b>;</b></p>