diff options
Diffstat (limited to '')
-rw-r--r-- | doc/user.xml | 544 |
1 files changed, 372 insertions, 172 deletions
diff --git a/doc/user.xml b/doc/user.xml index d1c7ff595..7a60b04d6 100644 --- a/doc/user.xml +++ b/doc/user.xml @@ -573,7 +573,7 @@ systemctl start mpd.socket</programlisting> <row> <entry> <varname>mixer_type</varname> - <parameter>hardware|software|none</parameter> + <parameter>hardware|software|null|none</parameter> </entry> <entry> Specifies which mixer should be used for this audio @@ -581,7 +581,9 @@ systemctl start mpd.socket</programlisting> linkend="alsa_output">ALSA</link>, <link linkend="oss_output">OSS</link> and <link linkend="pulse_output">PulseAudio</link>), the - software mixer or no mixer + software mixer, the "null" mixer + (<parameter>null</parameter>; allows setting the + volume, but with no effect) or no mixer (<parameter>none</parameter>). By default, the hardware mixer is used for devices which support it, and none for the others. @@ -767,177 +769,10 @@ systemctl start mpd.socket</programlisting> </para> <para> - The following resamplers are available (if enabled at - compile time): + Check the <link linkend="resampler_plugins">resampler plugin + reference</link> for a list of resamplers and how to + configure them. </para> - - <itemizedlist> - <listitem> - <para> - <ulink - url="http://www.mega-nerd.com/SRC/"><application>libsamplerate</application></ulink> - a.k.a. Secret Rabbit Code (SRC). - </para> - </listitem> - - <listitem> - <para> - <ulink - url="http://sourceforge.net/projects/soxr/"><application>libsoxr</application></ulink>, - the SoX Resampler library - </para> - </listitem> - - <listitem> - <para> - internal: low CPU usage, but very poor quality. This is - the fallback if <application>MPD</application> was - compiled without an external resampler. - </para> - </listitem> - </itemizedlist> - - <para> - The setting <varname>samplerate_converter</varname> controls - how <application>MPD</application> shall resample music. - Possible values: - </para> - - <informaltable> - <tgroup cols="2"> - <thead> - <row> - <entry> - Value - </entry> - <entry> - Description - </entry> - </row> - </thead> - <tbody> - <row> - <entry> - "<parameter>internal</parameter>" - </entry> - <entry> - The internal resampler. Low CPU usage, but very - poor quality. - </entry> - </row> - - <row> - <entry> - "<parameter>soxr very high</parameter>" - </entry> - <entry> - Use <application>libsoxr</application> with "Very - High Quality" setting. - </entry> - </row> - - <row> - <entry> - "<parameter>soxr high</parameter>" or - "<parameter>soxr</parameter>" - </entry> - <entry> - Use <application>libsoxr</application> with "High - Quality" setting. - </entry> - </row> - - <row> - <entry> - "<parameter>soxr medium</parameter>" - </entry> - <entry> - Use <application>libsoxr</application> with "Medium - Quality" setting. - </entry> - </row> - - <row> - <entry> - "<parameter>soxr low</parameter>" - </entry> - <entry> - Use <application>libsoxr</application> with "Low - Quality" setting. - </entry> - </row> - - <row> - <entry> - "<parameter>soxr quick</parameter>" - </entry> - <entry> - Use <application>libsoxr</application> with "Quick" - setting. - </entry> - </row> - - <row> - <entry> - "<parameter>Best Sinc Interpolator</parameter>" or - "<parameter>0</parameter>" - </entry> - <entry> - <application>libsamplerate</application>: Band - limited sinc interpolation, best quality, 97dB SNR, - 96% BW. - </entry> - </row> - - <row> - <entry> - "<parameter>Medium Sinc Interpolator</parameter>" or - "<parameter>1</parameter>" - </entry> - <entry> - <application>libsamplerate</application>: Band - limited sinc interpolation, medium quality, 97dB - SNR, 90% BW. - </entry> - </row> - - <row> - <entry> - "<parameter>Fastest Sinc Interpolator</parameter>" or - "<parameter>2</parameter>" - </entry> - <entry> - <application>libsamplerate</application>: Band - limited sinc interpolation, fastest, 97dB SNR, 80% - BW. - </entry> - </row> - - <row> - <entry> - "<parameter>ZOH Sinc Interpolator</parameter>" or - "<parameter>3</parameter>" - </entry> - <entry> - <application>libsamplerate</application>: Zero order - hold interpolator, very fast, very poor quality with - audible distortions. - </entry> - </row> - - <row> - <entry> - "<parameter>Linear Interpolator</parameter>" or - "<parameter>4</parameter>" - </entry> - <entry> - <application>libsamplerate</application>: Linear - interpolator, very fast, poor quality. - </entry> - </row> - </tbody> - </tgroup> - </informaltable> </section> </section> @@ -1527,6 +1362,19 @@ buffer_size: 16384</programlisting> <application>MPD</application> instance. </entry> </row> + <row> + <entry> + <varname>keepalive</varname> + <parameter>yes|no</parameter> + </entry> + <entry> + Send TCP keepalive packets to the "master" + <application>MPD</application> instance? This option can + help avoid certain firewalls dropping inactive + connections, at the expensive of a very small amount of + additional network traffic. Disabled by default. + </entry> + </row> </tbody> </tgroup> </informaltable> @@ -1956,6 +1804,64 @@ buffer_size: 16384</programlisting> </informaltable> </section> + <section id="sidplay_decoder"> + <title><varname>sidplay</varname></title> + + <para> + C64 SID decoder based on + <application>libsidplay</application>. + </para> + + <informaltable> + <tgroup cols="2"> + <thead> + <row> + <entry>Setting</entry> + <entry>Description</entry> + </row> + </thead> + <tbody> + <row> + <entry> + <varname>songlength_database</varname> + <parameter>PATH</parameter> + </entry> + <entry> + Location of your songlengths file, as distributed + with the HVSC. The <varname>sidplay</varname> + plugin checks this for matching MD5 fingerprints. + See <ulink + url="http://www.c64.org/HVSC/DOCUMENTS/Songlengths.faq">http://www.c64.org/HVSC/DOCUMENTS/Songlengths.faq</ulink>. + </entry> + </row> + + <row> + <entry> + <varname>default_songlength</varname> + <parameter>SECONDS</parameter> + </entry> + <entry> + This is the default playing time in seconds for + songs not in the songlength database, or in case + you're not using a database. A value of 0 means + play indefinitely. + </entry> + </row> + + <row> + <entry> + <varname>filter</varname> + <parameter>yes|no</parameter> + </entry> + <entry> + Turns the SID filter emulation on or off. + </entry> + </row> + </tbody> + </tgroup> + </informaltable> + </section> + <section> <title><varname>wildmidi</varname></title> @@ -2197,6 +2103,251 @@ buffer_size: 16384</programlisting> </section> </section> + <section id="resampler_plugins"> + <title>Resampler plugins</title> + + <para> + The resampler can be configured in a block named + <varname>resampler</varname>, for example: + </para> + + <programlisting>resampler { + plugin "soxr" + quality "very high" +}</programlisting> + + <para> + The following table lists the <varname>resampler</varname> + options valid for all plugins: + </para> + + <informaltable> + <tgroup cols="2"> + <thead> + <row> + <entry> + Name + </entry> + <entry> + Description + </entry> + </row> + </thead> + <tbody> + <row> + <entry> + <varname>plugin</varname> + </entry> + <entry> + The name of the plugin. + </entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <section id="internal_resampler"> + <title><varname>internal</varname></title> + + <para> + A resampler built into <application>MPD</application>. Its + quality is very poor, but its CPU usage is low. This is the + fallback if <application>MPD</application> was compiled + without an external resampler. + </para> + </section> + + <section id="libsamplerate_resampler"> + <title><varname>libsamplerate</varname></title> + + <para> + A resampler using <ulink + url="http://www.mega-nerd.com/SRC/"><application>libsamplerate</application></ulink> + a.k.a. Secret Rabbit Code (SRC). + </para> + + <informaltable> + <tgroup cols="2"> + <thead> + <row> + <entry> + Name + </entry> + <entry> + Description + </entry> + </row> + </thead> + <tbody> + <row> + <entry> + <varname>type</varname> + </entry> + <entry> + The interpolator type. See below for a list of + known types. + </entry> + </row> + </tbody> + </tgroup> + </informaltable> + + <para> + The following converter types are provided by + <application>libsamplerate</application>: + </para> + + <informaltable> + <tgroup cols="2"> + <thead> + <row> + <entry> + Type + </entry> + <entry> + Description + </entry> + </row> + </thead> + <tbody> + <row> + <entry> + "<parameter>Best Sinc Interpolator</parameter>" or + "<parameter>0</parameter>" + </entry> + <entry> + Band limited sinc interpolation, best quality, 97dB + SNR, 96% BW. + </entry> + </row> + + <row> + <entry> + "<parameter>Medium Sinc Interpolator</parameter>" or + "<parameter>1</parameter>" + </entry> + <entry> + Band limited sinc interpolation, medium quality, + 97dB SNR, 90% BW. + </entry> + </row> + + <row> + <entry> + "<parameter>Fastest Sinc Interpolator</parameter>" or + "<parameter>2</parameter>" + </entry> + <entry> + Band limited sinc interpolation, fastest, 97dB SNR, + 80% BW. + </entry> + </row> + + <row> + <entry> + "<parameter>ZOH Sinc Interpolator</parameter>" or + "<parameter>3</parameter>" + </entry> + <entry> + Zero order hold interpolator, very fast, very poor + quality with audible distortions. + </entry> + </row> + + <row> + <entry> + "<parameter>Linear Interpolator</parameter>" or + "<parameter>4</parameter>" + </entry> + <entry> + Linear interpolator, very fast, poor quality. + </entry> + </row> + </tbody> + </tgroup> + </informaltable> + </section> + + <section id="soxr_resampler"> + <title><varname>soxr</varname></title> + + <para> + A resampler using <ulink + url="http://sourceforge.net/projects/soxr/"><application>libsoxr</application></ulink>, + the SoX Resampler library + </para> + + <informaltable> + <tgroup cols="2"> + <thead> + <row> + <entry> + Name + </entry> + <entry> + Description + </entry> + </row> + </thead> + <tbody> + <row> + <entry> + <varname>quality</varname> + </entry> + <entry> + The <application>libsoxr</application> quality + setting. Valid values are: + + <itemizedlist> + <listitem> + <para> + "<parameter>very high</parameter>" + </para> + </listitem> + + <listitem> + <para> + "<parameter>high</parameter>" (the default) + </para> + </listitem> + + <listitem> + <para> + "<parameter>medium</parameter>" + </para> + </listitem> + + <listitem> + <para> + "<parameter>low</parameter>" + </para> + </listitem> + + <listitem> + <para> + "<parameter>quick</parameter>" + </para> + </listitem> + </itemizedlist> + </entry> + </row> + + <row> + <entry> + <varname>threads</varname> + </entry> + <entry> + The number of <application>libsoxr</application> + threads. "0" means "automatic". The default is "1" + which disables multi-threading. + </entry> + </row> + </tbody> + </tgroup> + </informaltable> + </section> + </section> + <section id="output_plugins"> <title>Output plugins</title> @@ -2970,6 +3121,55 @@ buffer_size: 16384</programlisting> Write to this file. </entry> </row> + + <row> + <entry> + <varname>format_path</varname> + <parameter>P</parameter> + </entry> + <entry> + <para> + An alternative to <varname>path</varname> which + provides a format string referring to tag values. + + The special tag <varname>iso8601</varname> emits + the current date and time in <ulink + url="https://en.wikipedia.org/wiki/ISO_8601">ISO8601</ulink> + format (UTC). + Every time a new song starts or a new tag gets + received from a radio station, a new file is + opened. If the format does not render a file + name, nothing is recorded. + </para> + + <para> + A tag name enclosed in percent signs ('%') is + replaced with the tag value. Example: + <parameter>~/.mpd/recorder/%artist% - + %title%.ogg</parameter> + </para> + + <para> + Square brackets can be used to group a substring. + If none of the tags referred in the group can be + found, the whole group is omitted. Example: + <parameter>[~/.mpd/recorder/[%artist% - + ]%title%.ogg]</parameter> (this omits the dash + when no artist tag exists; if title also doesn't + exist, no file is written) + </para> + + <para> + The operators "|" (logical "or") and "&" + (logical "and") can be used to select portions of + the format string depending on the existing tag + values. Example: + <parameter>~/.mpd/recorder/[%title|%name%].ogg</parameter> + (use the "name" tag if no title exists) + </para> + </entry> + </row> + <row> <entry> <varname>encoder</varname> |