]> code.delx.au - pulseaudio/blob - man/pulse-daemon.conf.5.xml.in
Merge commit 'origin/master-tx' into master-tx
[pulseaudio] / 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
144 <option>
145 <p><opt>system-instance=</opt> Run the daemon as system-wide
146 instance, requires root priviliges. Takes a boolean argument,
147 defaults to <opt>no</opt>. The <opt>--system</opt> command line
148 argument takes precedence.</p>
149 </option>
150
151
152 <option>
153 <p><opt>disable-shm=</opt> Disable data transfer via POSIX
154 shared memory. Takes a boolean argument, defaults to
155 <opt>no</opt>. The <opt>--disable-shm</opt> command line
156 argument takes precedence.</p>
157 </option>
158
159 <option>
160 <p><opt>shm-size-bytes=</opt> Sets the shared memory segment
161 size for the daemon, in bytes. If left unspecified or is set to 0
162 it will default to some system-specific default, usually 64
163 MiB. Please note that usually there is no need to change this
164 value, unless you are running an OS kernel that does not do
165 memory overcommit.</p>
166 </option>
167
168 </section>
169
170 <section name="Scheduling">
171
172 <option>
173 <p><opt>high-priority=</opt> Renice the daemon after startup to
174 become a high-priority process. This a good idea if you
175 experience drop-outs during playback. However, this is a certain
176 security issue, since it works when called SUID root only, or
177 RLIMIT_NICE is used. root is dropped immediately after gaining
178 the nice level on startup, thus it is presumably safe. See
179 <manref section="1" name="pulseaudio"/> for more
180 information. Takes a boolean argument, defaults to "yes". The <opt>--high-priority</opt>
181 command line option takes precedence.</p>
182 </option>
183
184 <option>
185 <p><opt>realtime-scheduling=</opt> Try to acquire SCHED_FIFO
186 scheduling for the IO threads. The same security concerns as
187 mentioned above apply. However, if PA enters an endless loop,
188 realtime scheduling causes a system lockup. Thus, realtime
189 scheduling should only be enabled on trusted machines for
190 now. Please not that only the IO threads of PulseAudio are made
191 real-time. The controlling thread is left a normally scheduled
192 thread. Thus enabling the high-priority option is orthogonal.
193 See <manref section="1" name="pulseaudio"/> for more
194 information. Takes a boolean argument, defaults to "no". The
195 <opt>--realtime</opt> command line option takes precedence.</p>
196 </option>
197
198 <option>
199 <p><opt>realtime-priority=</opt> The realtime priority to
200 acquire, if <opt>realtime-scheduling</opt> is enabled. Note: JACK uses 10
201 by default, 9 for clients. Thus it is recommended to choose the
202 PulseAudio real-time priorities lower. Some PulseAudio threads
203 might choose a priority a little lower or higher than the
204 specified value. Defaults to "5".</p>
205 </option>
206
207 <option>
208 <p><opt>nice-level=</opt> The nice level to acquire for the
209 daemon, if <opt>high-priority</opt> is enabled. Note: on some
210 distributions X11 uses -10 by default. Defaults to -11.</p>
211 </option>
212
213 </section>
214
215 <section name="Idle Times">
216
217 <option>
218 <p><opt>exit-idle-time=</opt> Terminate the daemon after the
219 last client quit and this time in seconds passed. Use a negative value to
220 disable this feature. Defaults to -1. The
221 <opt>--exit-idle-time</opt> command line option takes
222 precedence.</p>
223 </option>
224
225 <option>
226 <p><opt>module-idle-time=</opt> Unload autoloaded modules after
227 being idle for this time in seconds. Defaults to 20. The
228 <opt>--module-idle-time</opt> command line option takes
229 precedence.</p>
230 </option>
231
232 <option>
233 <p><opt>scache-idle-time=</opt> Unload autoloaded sample cache
234 entries after being idle for this time in seconds. Defaults to
235 20. The <opt>--scache-idle-time</opt> command line option takes
236 precedence.</p>
237 </option>
238
239 </section>
240
241 <section name="Paths">
242
243 <option>
244 <p><opt>dl-search-path=</opt> The path were to look for dynamic
245 shared objects (DSOs/plugins). You may specify more than one
246 path seperated by colons. The default path depends on compile
247 time settings. The <opt>--dl-search-path</opt> command line
248 option takes precedence. </p>
249 </option>
250
251 <option>
252 <p><opt>default-script-file=</opt> The default configuration
253 script file to load. Specify an empty string for not loading a
254 default script file. The default behaviour is to load
255 <file>~/.pulse/default.pa</file>, and if that file does not
256 exist fall back to the system wide installed version
257 <file>@pulseconfdir@/default.pa</file>. If run in system-wide
258 mode the file <file>@pulseconfdir@/system.pa</file> is used
259 instead. If <opt>-n</opt> is passed on the command line
260 or <opt>default-script-file=</opt> is disabled the default
261 configuration script is ignored.</p>
262 </option>
263
264 <option>
265 <p><opt>default-script-file=</opt> Load the default
266 configuration script file as specified
267 in <opt>default-script-file=</opt>. Defaults to "yes".</p>
268 </option>
269
270 </section>
271
272 <section name="Logging">
273
274 <option>
275 <p><opt>log-target=</opt> The default log target. Use either
276 <opt>stderr</opt>, <opt>syslog</opt> or <opt>auto</opt>. The
277 latter is equivalent to <opt>sylog</opt> in case
278 <opt>daemonize</opt> is enabled, otherwise to
279 <opt>stderr</opt>. Defaults to <opt>auto</opt>. The
280 <opt>--log-target</opt> command line option takes
281 precedence.</p>
282 </option>
283
284 <option>
285 <p><opt>log-level=</opt> Log level, one of <opt>debug</opt>,
286 <opt>info</opt>, <opt>notice</opt>, <opt>warning</opt>,
287 <opt>error</opt>. Log messages with a lower log level than
288 specified here are not logged. Defaults to
289 <opt>notice</opt>. The <opt>--log-level</opt> command line
290 option takes precedence. The <opt>-v</opt> command line option
291 might alter this setting.</p>
292 </option>
293
294 </section>
295
296 <section name="Resource Limits">
297
298 <p>See <manref name="getrlimit" section="2"/> for
299 more information. Set to -1 if PulseAudio shall not touch the resource
300 limit. Not all resource limits are available on all operating
301 systems.</p>
302
303 <option>
304 <p><opt>rlimit-as</opt> Defaults to -1.</p>
305 </option>
306 <option>
307 <p><opt>rlimit-rss</opt> Defaults to -1.</p>
308 </option>
309 <option>
310 <p><opt>rlimit-core</opt> Defaults to -1.</p>
311 </option>
312 <option>
313 <p><opt>rlimit-data</opt> Defaults to -1.</p>
314 </option>
315 <option>
316 <p><opt>rlimit-fsize</opt> Defaults to -1.</p>
317 </option>
318 <option>
319 <p><opt>rlimit-nofile</opt> Defaults to 256.</p>
320 </option>
321 <option>
322 <p><opt>rlimit-stack</opt> Defaults to -1.</p>
323 </option>
324 <option>
325 <p><opt>rlimit-nproc</opt> Defaults to -1.</p>
326 </option>
327 <option>
328 <p><opt>rlimit-locks</opt> Defaults to -1.</p>
329 </option>
330 <option>
331 <p><opt>rlimit-sigpending</opt> Defaults to -1.</p>
332 </option>
333 <option>
334 <p><opt>rlimit-msgqueue</opt> Defaults to -1.</p>
335 </option>
336 <option>
337 <p><opt>rlimit-memlock</opt> Defaults to 16 KiB. Please note
338 that the JACK client libraries may require more locked
339 memory.</p>
340 </option>
341 <option>
342 <p><opt>rlimit-nice</opt> Defaults to 31. Please make sure that
343 the default nice level as configured with <opt>nice-level</opt>
344 fits in this resource limit, if <opt>high-priority</opt> is
345 enabled.</p>
346 </option>
347 <option>
348 <p><opt>rlimit-rtprio</opt> Defaults to 9. Please make sure that
349 the default real-time priority level as configured with
350 <opt>realtime-priority=</opt> fits in this resource limit, if
351 <opt>realtime-scheduling</opt> is enabled. The JACK client
352 libraries require a real-time prority of 9 by default. </p>
353 </option>
354 <option>
355 <p><opt>rlimit-rttime</opt> Defaults to 1000000.</p>
356 </option>
357
358 </section>
359
360 <section name="Default Device Settings">
361
362 <p>Most drivers try to open the audio device with these settings
363 and then fall back to lower settings. The default settings are CD
364 quality: 16bit native endian, 2 channels, 44100 Hz sampling.</p>
365
366 <option>
367 <p><opt>default-sample-format=</opt> The default sampling
368 format. Specify one of <opt>u8</opt>, <opt>s16le</opt>,
369 <opt>s16be</opt>, <opt>s32le</opt>,
370 <opt>s32be</opt>, <opt>float32le</opt>, <opt>float32be</opt>,
371 <opt>ulaw</opt>, <opt>alaw</opt>. Depending on the endianess of
372 the CPU the
373 formats <opt>s16ne</opt>, <opt>s16re</opt>, <opt>s32ne</opt>, <opt>s32re</opt>,
374 <opt>float32ne</opt>, <opt>float32re</opt> (for native,
375 resp. reverse endian) are available as aliases.</p>
376 </option>
377
378 <option>
379 <p><opt>default-sample-rate=</opt> The default sample frequency.</p>
380 </option>
381
382 <option>
383 <p><opt>default-sample-channels</opt> The default number of channels.</p>
384 </option>
385
386 </section>
387
388 <section name="Default Fragment Settings">
389
390 <p>Some hardware drivers require the hardware playback buffer to
391 be subdivided into several fragments. It is possible to change
392 these buffer metrics for machines with high scheduling
393 latencies. Not all possible values that may be configured here are
394 available in all hardware. The driver will to find the nearest
395 setting supported.</p>
396
397 <option>
398 <p><opt>default-fragments=</opt> The default number of
399 fragments. Defaults to 4.</p>
400 </option>
401 <option>
402 <p><opt>default-fragment-size-msec=</opt>The duration of a
403 single fragment. Defaults to 25ms (i.e. the total buffer is thus
404 100ms long).</p>
405 </option>
406
407 </section>
408
409 <section name="Authors">
410 <p>The PulseAudio Developers &lt;@PACKAGE_BUGREPORT@&gt;; PulseAudio is available from <url href="@PACKAGE_URL@"/></p>
411 </section>
412
413 <section name="See also">
414 <p>
415 <manref name="pulse-client.conf" section="5"/>, <manref name="default.pa" section="5"/>, <manref name="pulseaudio" section="1"/>, <manref name="pacmd" section="1"/>
416 </p>
417 </section>
418
419 </manpage>