man: document log related daemon.conf options
[platform/upstream/pulseaudio.git] / man / pulse-daemon.conf.5.xml.in
1 <?xml version="1.0"?><!--*-nxml-*-->
2 <!DOCTYPE manpage SYSTEM "xmltoman.dtd">
3 <?xml-stylesheet type="text/xsl" href="xmltoman.xsl" ?>
4
5 <!--
6 This file is part of PulseAudio.
7
8 PulseAudio is free software; you can redistribute it and/or modify it
9 under the terms of the GNU Lesser General Public License as
10 published by the Free Software Foundation; either version 2.1 of the
11 License, or (at your option) any later version.
12
13 PulseAudio is distributed in the hope that it will be useful, but WITHOUT
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
15 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
16 Public License for more details.
17
18 You should have received a copy of the GNU Lesser General Public
19 License along with PulseAudio; if not, write to the Free Software
20 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
21 USA.
22 -->
23
24 <manpage name="pulse-daemon.conf" section="5" desc="PulseAudio daemon configuration file">
25
26   <synopsis>
27     <p><file>~/.pulse/daemon.conf</file></p>
28
29     <p><file>@pulseconfdir@/daemon.conf</file></p>
30   </synopsis>
31
32   <description>
33     <p>The PulseAudio sound server reads configuration directives from
34     a file <file>~/.pulse/daemon.conf</file> on startup and when that
35     file doesn't exist from
36     <file>@pulseconfdir@/daemon.conf</file>. Please note that the
37     server also reads a configuration script on startup
38     <file>default.pa</file> which also contains runtime configuration
39     directives.</p>
40
41     <p>The configuration file is a simple collection of variable
42     declarations. If the configuration file parser encounters either ;
43     or # it ignores the rest of the line until its end.</p>
44
45     <p>For the settings that take a boolean argument the values
46     <opt>true</opt>, <opt>yes</opt>, <opt>on</opt> and <opt>1</opt>
47     are equivalent, resp. <opt>false</opt>, <opt>no</opt>,
48     <opt>off</opt>, <opt>0</opt>.</p>
49
50   </description>
51
52   <section name="General Directives">
53
54     <option>
55       <p><opt>daemonize= </opt> Daemonize after startup. Takes a
56       boolean value, defaults to "no". The <opt>--daemonize</opt>
57       command line option takes precedence.</p>
58     </option>
59
60     <option>
61       <p><opt>fail=</opt> Fail to start up if any of the directives
62       in the configuration script <file>default.pa</file>
63       fail. Takes a boolean argument, defaults to "yes". The <opt>--fail</opt> command line
64       option takes precedence.</p>
65     </option>
66
67     <option>
68       <p><opt>disallow-module-loading=</opt> Disallow module loading
69       after startup. This is a security feature that makes sure that
70       no further modules may be loaded into the PulseAudio server
71       after startup completed. It is recommended to enable this when
72       <opt>system-instance</opt> is enabled. Please note that certain
73       features like automatic hot-plug support will not work if this
74       option is enabled. Takes a boolean argument, defaults to
75       <opt>no</opt>. The <opt>--disallow-module-loading</opt> command line
76       option takes precedence.</p>
77     </option>
78
79     <option>
80       <p><opt>disallow-exit=</opt> Disallow exit on user
81       request. Defaults to <opt>no</opt>.</p>
82     </option>
83
84     <option>
85       <p><opt>resample-method=</opt> The resampling algorithm to
86       use. Use one of <opt>src-sinc-best-quality</opt>,
87       <opt>src-sinc-medium-quality</opt>, <opt>src-sinc-fastest</opt>,
88       <opt>src-zero-order-hold</opt>, <opt>src-linear</opt>,
89       <opt>trivial</opt>, <opt>speex-float-N</opt>,
90       <opt>speex-fixed-N</opt>, <opt>ffmpeg</opt>. See the
91       documentation of libsamplerate for an explanation for the
92       different src- methods. The method <opt>trivial</opt> is the most basic
93       algorithm implemented. If you're tight on CPU consider using
94       this. On the other hand it has the worst quality of them
95       all. The Speex resamplers take an integer quality setting in the
96       range 0..9 (bad...good). They exist in two flavours: <opt>fixed</opt> and
97       <opt>float</opt>. The former uses fixed point numbers, the latter relies on
98       floating point numbers. On most desktop CPUs the float point
99       resmampler is a lot faster, and it also offers slightly better
100       quality. See the output of <opt>dump-resample-methods</opt> for
101       a complete list of all available resamplers. Defaults to
102       <opt>speex-float-3</opt>. The <opt>--resample-method</opt>
103       command line option takes precedence. Note that some modules
104       overwrite or allow overwriting of the resampler to use.</p>
105     </option>
106
107     <option>
108       <p><opt>disable-remixing=</opt> Never upmix or downmix channels
109       to different channel maps. Instead, do a simple name-based
110       matching only.</p>
111     </option>
112
113     <option>
114       <p><opt>disable-lfe-remixing=</opt> When upmixing or downmixing
115       ignore LFE channels. When this option is on the output LFE
116       channel will only get a signal when an input LFE channel is
117       available as well. If no input LFE channel is available the
118       output LFE channel will always be 0. If no output LFE channel is
119       available the signal on the input LFE channel will be
120       ignored. Defaults to "on".</p>
121     </option>
122
123     <option>
124       <p><opt>use-pid-file=</opt> Create a PID file in
125       <file>/tmp/pulse-$USER/pid</file>. Of this is enabled you may
126       use commands like <opt>--kill</opt> or <opt>--check</opt>. If
127       you are planning to start more than one PulseAudio process per
128       user, you better disable this option since it effectively
129       disables multiple instances. Takes a boolean argument, defaults
130       to <opt>yes</opt>. The <opt>--no-cpu-limit</opt> command line
131       option takes precedence.</p>
132     </option>
133
134     <option>
135       <p><opt>no-cpu-limit=</opt> Do not install the CPU load limiter,
136       even on platforms where it is supported. This option is useful
137       when debugging/profiling PulseAudio to disable disturbing
138       SIGXCPU signals. Takes a boolean argument, defaults to <opt>no</opt>. The
139       <opt>--no-cpu-limit</opt> command line argument takes
140       precedence.</p>
141     </option>
142
143     <option>
144       <p><opt>system-instance=</opt> Run the daemon as system-wide
145       instance, requires root priviliges. Takes a boolean argument,
146       defaults to <opt>no</opt>. The <opt>--system</opt> command line
147       argument takes precedence.</p>
148     </option>
149
150     <option>
151       <p><opt>disable-shm=</opt> Disable data transfer via POSIX
152       shared memory. Takes a boolean argument, defaults to
153       <opt>no</opt>. The <opt>--disable-shm</opt> command line
154       argument takes precedence.</p>
155     </option>
156
157     <option>
158       <p><opt>shm-size-bytes=</opt> Sets the shared memory segment
159       size for the daemon, in bytes. If left unspecified or is set to 0
160       it will default to some system-specific default, usually 64
161       MiB. Please note that usually there is no need to change this
162       value, unless you are running an OS kernel that does not do
163       memory overcommit.</p>
164     </option>
165
166     <option>
167       <p><opt>lock-memory=</opt> Locks the entire PulseAudio process
168       into memory. While this might increase drop-out safety when used
169       in conjunction with real-time scheduling this takes away a lot
170       of memory from other processes and might hence considerably slow
171       down your system. Defaults to <opt>no</opt>.</p>
172     </option>
173
174     <option>
175       <p><opt>flat-volumes=</opt> Enable 'flat' volumes, i.e. where
176       possible let the sink volume equal the maximum of the volumes of
177       the inputs connected to it. Takes a boolean argument, defaults
178       to <opt>yes</opt>.</p>
179     </option>
180
181   </section>
182
183   <section name="Scheduling">
184
185     <option>
186       <p><opt>high-priority=</opt> Renice the daemon after startup to
187       become a high-priority process. This a good idea if you
188       experience drop-outs during playback. However, this is a certain
189       security issue, since it works when called SUID root only, or
190       RLIMIT_NICE is used. root is dropped immediately after gaining
191       the nice level on startup, thus it is presumably safe. See
192       <manref section="1" name="pulseaudio"/> for more
193       information. Takes a boolean argument, defaults to "yes". The <opt>--high-priority</opt>
194       command line option takes precedence.</p>
195     </option>
196
197     <option>
198       <p><opt>realtime-scheduling=</opt> Try to acquire SCHED_FIFO
199       scheduling for the IO threads. The same security concerns as
200       mentioned above apply. However, if PA enters an endless loop,
201       realtime scheduling causes a system lockup. Thus, realtime
202       scheduling should only be enabled on trusted machines for
203       now. Please not that only the IO threads of PulseAudio are made
204       real-time. The controlling thread is left a normally scheduled
205       thread. Thus enabling the high-priority option is orthogonal.
206       See <manref section="1" name="pulseaudio"/> for more
207       information. Takes a boolean argument, defaults to "no". The
208       <opt>--realtime</opt> command line option takes precedence.</p>
209     </option>
210
211     <option>
212       <p><opt>realtime-priority=</opt> The realtime priority to
213       acquire, if <opt>realtime-scheduling</opt> is enabled. Note: JACK uses 10
214       by default, 9 for clients. Thus it is recommended to choose the
215       PulseAudio real-time priorities lower. Some PulseAudio threads
216       might choose a priority a little lower or higher than the
217       specified value. Defaults to "5".</p>
218     </option>
219
220     <option>
221       <p><opt>nice-level=</opt> The nice level to acquire for the
222       daemon, if <opt>high-priority</opt> is enabled. Note: on some
223       distributions X11 uses -10 by default. Defaults to -11.</p>
224     </option>
225
226   </section>
227
228   <section name="Idle Times">
229
230     <option>
231       <p><opt>exit-idle-time=</opt> Terminate the daemon after the
232       last client quit and this time in seconds passed. Use a negative value to
233       disable this feature. Defaults to -1. The
234       <opt>--exit-idle-time</opt> command line option takes
235       precedence.</p>
236     </option>
237
238     <option>
239       <p><opt>scache-idle-time=</opt> Unload autoloaded sample cache
240       entries after being idle for this time in seconds. Defaults to
241       20. The <opt>--scache-idle-time</opt> command line option takes
242       precedence.</p>
243     </option>
244
245   </section>
246
247   <section name="Paths">
248
249     <option>
250       <p><opt>dl-search-path=</opt> The path were to look for dynamic
251       shared objects (DSOs/plugins). You may specify more than one
252       path seperated by colons. The default path depends on compile
253       time settings. The <opt>--dl-search-path</opt> command line
254       option takes precedence. </p>
255     </option>
256
257     <option>
258       <p><opt>default-script-file=</opt> The default configuration
259       script file to load. Specify an empty string for not loading a
260       default script file. The default behaviour is to load
261       <file>~/.pulse/default.pa</file>, and if that file does not
262       exist fall back to the system wide installed version
263       <file>@pulseconfdir@/default.pa</file>. If run in system-wide
264       mode the file <file>@pulseconfdir@/system.pa</file> is used
265       instead. If <opt>-n</opt> is passed on the command line
266       or <opt>default-script-file=</opt> is disabled the default
267       configuration script is ignored.</p>
268     </option>
269
270     <option>
271       <p><opt>load-default-script-file=</opt> Load the default
272       configuration script file as specified
273       in <opt>default-script-file=</opt>. Defaults to <opt>yes</opt>.</p>
274     </option>
275
276   </section>
277
278   <section name="Logging">
279
280     <option>
281       <p><opt>log-target=</opt> The default log target. Use either
282       <opt>stderr</opt>, <opt>syslog</opt> or <opt>auto</opt>. The
283       latter is equivalent to <opt>sylog</opt> in case
284       <opt>daemonize</opt> is enabled, otherwise to
285       <opt>stderr</opt>. Defaults to <opt>auto</opt>. The
286       <opt>--log-target</opt> command line option takes
287       precedence.</p>
288     </option>
289
290     <option>
291       <p><opt>log-level=</opt> Log level, one of <opt>debug</opt>,
292       <opt>info</opt>, <opt>notice</opt>, <opt>warning</opt>,
293       <opt>error</opt>. Log messages with a lower log level than
294       specified here are not logged. Defaults to
295       <opt>notice</opt>. The <opt>--log-level</opt> command line
296       option takes precedence. The <opt>-v</opt> command line option
297       might alter this setting.</p>
298     </option>
299
300     <option>
301       <p><opt>log-meta=</opt> With each logged message log the code
302       location the message was generated from. Defaults to
303       <opt>no</opt>.</p>
304     </option>
305
306     <option>
307       <p><opt>log-time=</opt> With each logged messages log the
308       relative time since startup. Defaults to <opt>no</opt>.</p>
309     </option>
310
311     <option>
312       <p><opt>log-backtrace=</opt> When greater than 0, with each
313       logged message log a code stack trace up the the specified
314       number of stack frames. Defaults to <opt>0</opt>.</p>
315     </option>
316
317   </section>
318
319   <section name="Resource Limits">
320
321     <p>See <manref name="getrlimit" section="2"/> for
322     more information. Set to -1 if PulseAudio shall not touch the resource
323     limit. Not all resource limits are available on all operating
324     systems.</p>
325
326     <option>
327       <p><opt>rlimit-as</opt> Defaults to -1.</p>
328     </option>
329     <option>
330       <p><opt>rlimit-rss</opt> Defaults to -1.</p>
331     </option>
332     <option>
333       <p><opt>rlimit-core</opt> Defaults to -1.</p>
334     </option>
335     <option>
336       <p><opt>rlimit-data</opt> Defaults to -1.</p>
337     </option>
338     <option>
339       <p><opt>rlimit-fsize</opt> Defaults to -1.</p>
340     </option>
341     <option>
342       <p><opt>rlimit-nofile</opt> Defaults to 256.</p>
343     </option>
344     <option>
345       <p><opt>rlimit-stack</opt> Defaults to -1.</p>
346     </option>
347     <option>
348       <p><opt>rlimit-nproc</opt> Defaults to -1.</p>
349     </option>
350     <option>
351       <p><opt>rlimit-locks</opt> Defaults to -1.</p>
352     </option>
353     <option>
354       <p><opt>rlimit-sigpending</opt> Defaults to -1.</p>
355     </option>
356     <option>
357       <p><opt>rlimit-msgqueue</opt> Defaults to -1.</p>
358     </option>
359     <option>
360       <p><opt>rlimit-memlock</opt> Defaults to 16 KiB. Please note
361       that the JACK client libraries may require more locked
362       memory.</p>
363     </option>
364     <option>
365       <p><opt>rlimit-nice</opt> Defaults to 31. Please make sure that
366       the default nice level as configured with <opt>nice-level</opt>
367       fits in this resource limit, if <opt>high-priority</opt> is
368       enabled.</p>
369     </option>
370     <option>
371       <p><opt>rlimit-rtprio</opt> Defaults to 9. Please make sure that
372       the default real-time priority level as configured with
373       <opt>realtime-priority=</opt> fits in this resource limit, if
374       <opt>realtime-scheduling</opt> is enabled. The JACK client
375       libraries require a real-time prority of 9 by default. </p>
376     </option>
377     <option>
378       <p><opt>rlimit-rttime</opt> Defaults to 1000000.</p>
379     </option>
380
381   </section>
382
383   <section name="Default Device Settings">
384
385     <p>Most drivers try to open the audio device with these settings
386     and then fall back to lower settings. The default settings are CD
387     quality: 16bit native endian, 2 channels, 44100 Hz sampling.</p>
388
389     <option>
390       <p><opt>default-sample-format=</opt> The default sampling
391       format. Specify one of <opt>u8</opt>, <opt>s16le</opt>,
392       <opt>s16be</opt>, <opt>s32le</opt>,
393       <opt>s32be</opt>, <opt>float32le</opt>, <opt>float32be</opt>,
394       <opt>ulaw</opt>, <opt>alaw</opt>. Depending on the endianess of
395       the CPU the
396       formats <opt>s16ne</opt>, <opt>s16re</opt>, <opt>s32ne</opt>, <opt>s32re</opt>,
397       <opt>float32ne</opt>, <opt>float32re</opt> (for native,
398       resp. reverse endian) are available as aliases.</p>
399     </option>
400
401     <option>
402       <p><opt>default-sample-rate=</opt> The default sample frequency.</p>
403     </option>
404
405     <option>
406       <p><opt>default-sample-channels</opt> The default number of channels.</p>
407     </option>
408
409     <option>
410       <p><opt>default-channel-map</opt> The default channel map.</p>
411     </option>
412
413   </section>
414
415   <section name="Default Fragment Settings">
416
417     <p>Some hardware drivers require the hardware playback buffer to
418     be subdivided into several fragments. It is possible to change
419     these buffer metrics for machines with high scheduling
420     latencies. Not all possible values that may be configured here are
421     available in all hardware. The driver will to find the nearest
422     setting supported.</p>
423
424     <option>
425       <p><opt>default-fragments=</opt> The default number of
426       fragments. Defaults to 4.</p>
427     </option>
428     <option>
429       <p><opt>default-fragment-size-msec=</opt>The duration of a
430       single fragment. Defaults to 25ms (i.e. the total buffer is thus
431       100ms long).</p>
432     </option>
433
434   </section>
435
436   <section name="Authors">
437     <p>The PulseAudio Developers &lt;@PACKAGE_BUGREPORT@&gt;; PulseAudio is available from <url href="@PACKAGE_URL@"/></p>
438   </section>
439
440   <section name="See also">
441     <p>
442       <manref name="pulse-client.conf" section="5"/>, <manref name="default.pa" section="5"/>, <manref name="pulseaudio" section="1"/>, <manref name="pacmd" section="1"/>
443     </p>
444   </section>
445
446 </manpage>