]> code.delx.au - pulseaudio/blob - man/pulse-daemon.conf.5.xml.in
9d77abf07f7231399c14cf7bee6907937cbcede0
[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 # for 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>resample-method=</opt> The resampling algorithm to
81 use. Use one of <opt>src-sinc-best-quality</opt>,
82 <opt>src-sinc-medium-quality</opt>, <opt>src-sinc-fastest</opt>,
83 <opt>src-zero-order-hold</opt>, <opt>src-linear</opt>,
84 <opt>trivial</opt>, <opt>speex-float-N</opt>,
85 <opt>speex-fixed-N</opt>, <opt>ffmpeg</opt>. See the
86 documentation of libsamplerate for an explanation for the
87 different src- methods. The method <opt>trivial</opt> is the most basic
88 algorithm implemented. If you're tight on CPU consider using
89 this. On the other hand it has the worst quality of them
90 all. The Speex resamplers take an integer quality setting in the
91 range 0..9 (bad...good). They exist in two flavours: <opt>fixed</opt> and
92 <opt>float</opt>. The former uses fixed point numbers, the latter relies on
93 floating point numbers. On most desktop CPUs the float point
94 resmampler is a lot faster, and it also offers slightly better
95 quality. See the output of <opt>dump-resample-methods</opt> for
96 a complete list of all available resamplers. Defaults to
97 <opt>speex-float-3</opt>. The <opt>--resample-method</opt>
98 command line option takes precedence. Note that some modules
99 overwrite or allow overwriting of the resampler to use.</p>
100 </option>
101
102 <option>
103 <p><opt>disable-remixing=</opt> Never upmix or downmix channels
104 to different channel maps. Instead, do a simple name-based
105 matching only.</p>
106 </option>
107
108 <option>
109 <p><opt>disable-lfe-remixing=</opt> When upmixing or downmixing
110 ignore LFE channels. When this option is on the output LFE
111 channel will only get a signal when an input LFE channel is
112 available as well. If no input LFE channel is available the
113 output LFE channel will always be 0. If no output LFE channel is
114 available the signal on the input LFE channel will be
115 ignored.</p>
116 </option>
117
118 <option>
119 <p><opt>use-pid-file=</opt> Create a PID file in
120 <file>/tmp/pulse-$USER/pid</file>. Of this is enabled you may
121 use commands like <opt>--kill</opt> or <opt>--check</opt>. If
122 you are planning to start more than one PulseAudio process per
123 user, you better disable this option since it effectively
124 disables multiple instances. Takes a boolean argument, defaults
125 to <opt>yes</opt>. The <opt>--no-cpu-limit</opt> command line
126 option takes precedence.</p>
127 </option>
128
129 <option>
130 <p><opt>no-cpu-limit=</opt> Do not install the CPU load limiter,
131 even on platforms where it is supported. This option is useful
132 when debugging/profiling PulseAudio to disable disturbing
133 SIGXCPU signals. Takes a boolean argument, defaults to <opt>no</opt>. The
134 <opt>--no-cpu-limit</opt> command line argument takes
135 precedence.</p>
136 </option>
137
138
139 <option>
140 <p><opt>system-instance=</opt> Run the daemon as system-wide
141 instance, requires root priviliges. Takes a boolean argument,
142 defaults to <opt>no</opt>. The <opt>--system</opt> command line
143 argument takes precedence.</p>
144 </option>
145
146
147 <option>
148 <p><opt>disable-shm=</opt> Disable data transfer via POSIX
149 shared memory. Takes a boolean argument, defaults to
150 <opt>no</opt>. The <opt>--disable-shm</opt> command line
151 argument takes precedence.</p>
152 </option>
153
154 <option>
155 <p><opt>shm-size-bytes=</opt> Sets the shared memory segment
156 size for the daemon, in bytes. If left unspecified or is set to 0
157 it will default to some system-specific default, usually 64
158 MiB. Please note that usually there is no need to change this
159 value, unless you are running an OS kernel that does not do
160 memory overcommit.</p>
161 </option>
162
163 </section>
164
165 <section name="Scheduling">
166
167 <option>
168 <p><opt>high-priority=</opt> Renice the daemon after startup to
169 become a high-priority process. This a good idea if you
170 experience drop-outs during playback. However, this is a certain
171 security issue, since it works when called SUID root only, or
172 RLIMIT_NICE is used. root is dropped immediately after gaining
173 the nice level on startup, thus it is presumably safe. See
174 <manref section="1" name="pulseaudio"/> for more
175 information. Takes a boolean argument, defaults to "yes". The <opt>--high-priority</opt>
176 command line option takes precedence.</p>
177 </option>
178
179 <option>
180 <p><opt>realtime-scheduling=</opt> Try to acquire SCHED_FIFO
181 scheduling for the IO threads. The same security concerns as
182 mentioned above apply. However, if PA enters an endless loop,
183 realtime scheduling causes a system lockup. Thus, realtime
184 scheduling should only be enabled on trusted machines for
185 now. Please not that only the IO threads of PulseAudio are made
186 real-time. The controlling thread is left a normally scheduled
187 thread. Thus enabling the high-priority option is orthogonal.
188 See <manref section="1" name="pulseaudio"/> for more
189 information. Takes a boolean argument, defaults to "no". The
190 <opt>--realtime</opt> command line option takes precedence.</p>
191 </option>
192
193 <option>
194 <p><opt>realtime-priority=</opt> The realtime priority to
195 acquire, if <opt>realtime-scheduling</opt> is enabled. Note: JACK uses 10
196 by default, 9 for clients. Thus it is recommended to choose the
197 PulseAudio real-time priorities lower. Some PulseAudio threads
198 might choose a priority a little lower or higher than the
199 specified value. Defaults to "5".</p>
200 </option>
201
202 <option>
203 <p><opt>nice-level=</opt> The nice level to acquire for the
204 daemon, if <opt>high-priority</opt> is enabled. Note: on some
205 distributions X11 uses -10 by default. Defaults to -11.</p>
206 </option>
207
208 </section>
209
210 <section name="Idle Times">
211
212 <option>
213 <p><opt>exit-idle-time=</opt> Terminate the daemon after the
214 last client quit and this time in seconds passed. Use a negative value to
215 disable this feature. Defaults to -1. The
216 <opt>--exit-idle-time</opt> command line option takes
217 precedence.</p>
218 </option>
219
220 <option>
221 <p><opt>module-idle-time=</opt> Unload autoloaded modules after
222 being idle for this time in seconds. Defaults to 20. The
223 <opt>--module-idle-time</opt> command line option takes
224 precedence.</p>
225 </option>
226
227 <option>
228 <p><opt>scache-idle-time=</opt> Unload autoloaded sample cache
229 entries after being idle for this time in seconds. Defaults to
230 20. The <opt>--scache-idle-time</opt> command line option takes
231 precedence.</p>
232 </option>
233
234 </section>
235
236 <section name="Paths">
237
238 <option>
239 <p><opt>dl-search-path=</opt> The path were to look for dynamic
240 shared objects (DSOs/plugins). You may specify more than one
241 path seperated by colons. The default path depends on compile
242 time settings. The <opt>--dl-search-path</opt> command line
243 option takes precedence. </p>
244 </option>
245
246 <option>
247 <p><opt>default-script-file=</opt> The default configuration
248 script file to load. Specify an empty string for not loading a
249 default script file. The default behaviour is to load
250 <file>~/.pulse/default.pa</file>, and if that file does not
251 exist fall back to the system wide installed version
252 <file>@pulseconfdir@/default.pa</file>. If <opt>-n</opt> is
253 passed on the command line the default configuration script is
254 ignored.</p>
255 </option>
256
257 </section>
258
259 <section name="Logging">
260
261 <option>
262 <p><opt>log-target=</opt> The default log target. Use either
263 <opt>stderr</opt>, <opt>syslog</opt> or <opt>auto</opt>. The
264 latter is equivalent to <opt>sylog</opt> in case
265 <opt>daemonize</opt> is enabled, otherwise to
266 <opt>stderr</opt>. Defaults to <opt>auto</opt>. The
267 <opt>--log-target</opt> command line option takes
268 precedence.</p>
269 </option>
270
271 <option>
272 <p><opt>log-level=</opt> Log level, one of <opt>debug</opt>,
273 <opt>info</opt>, <opt>notice</opt>, <opt>warning</opt>,
274 <opt>error</opt>. Log messages with a lower log level than
275 specified here are not logged. Defaults to
276 <opt>notice</opt>. The <opt>--log-level</opt> command line
277 option takes precedence. The <opt>-v</opt> command line option
278 might alter this setting.</p>
279 </option>
280
281 </section>
282
283 <section name="Resource Limits">
284
285 <p>See <manref name="getrlimit" section="2"/> for
286 more information. Set to -1 if PulseAudio shall not touch the resource
287 limit. Not all resource limits are available on all operating
288 systems.</p>
289
290 <option>
291 <p><opt>rlimit-as</opt> Defaults to -1.</p>
292 </option>
293 <option>
294 <p><opt>rlimit-core</opt> Defaults to -1.</p>
295 </option>
296 <option>
297 <p><opt>rlimit-data</opt> Defaults to -1.</p>
298 </option>
299 <option>
300 <p><opt>rlimit-fsize</opt> Defaults to -1.</p>
301 </option>
302 <option>
303 <p><opt>rlimit-nofile</opt> Defaults to 256.</p>
304 </option>
305 <option>
306 <p><opt>rlimit-stack</opt> Defaults to -1.</p>
307 </option>
308 <option>
309 <p><opt>rlimit-nproc</opt> Defaults to -1.</p>
310 </option>
311 <option>
312 <p><opt>rlimit-memlock</opt> Defaults to 16 KiB. Please note
313 that the JACK client libraries may require more locked
314 memory.</p>
315 </option>
316 <option>
317 <p><opt>rlimit-nice</opt> Defaults to 31. Please make sure that
318 the default nice level as configured with <opt>nice-level</opt>
319 fits in this resource limit, if <opt>high-priority</opt> is
320 enabled.</p>
321 </option>
322 <option>
323 <p><opt>rlimit-rtprio</opt> Defaults to 9. Please make sure that
324 the default real-time priority level as configured with
325 <opt>realtime-priority=</opt> fits in this resource limit, if
326 <opt>realtime-scheduling</opt> is enabled. The JACK client
327 libraries require a real-time prority of 9 by default. </p>
328 </option>
329
330 </section>
331
332 <section name="Default Device Settings">
333
334 <p>Most drivers try to open the audio device with these settings
335 and then fall back to lower settings. The default settings are CD
336 quality: 16bit native endian, 2 channels, 44100 Hz sampling.</p>
337
338 <option>
339 <p><opt>default-sample-format=</opt> The default sampling
340 format. Specify one of <opt>u8</opt>, <opt>s16le</opt>,
341 <opt>s16be</opt>, <opt>s32le</opt>,
342 <opt>s32be</opt>, <opt>float32le</opt>, <opt>float32be</opt>,
343 <opt>ulaw</opt>, <opt>alaw</opt>. Depending on the endianess of
344 the CPU the
345 formats <opt>s16ne</opt>, <opt>s16re</opt>, <opt>s32ne</opt>, <opt>s32re</opt>,
346 <opt>float32ne</opt>, <opt>float32re</opt> (for native,
347 resp. reverse endian) are available as aliases.</p>
348 </option>
349
350 <option>
351 <p><opt>default-sample-rate=</opt> The default sample frequency.</p>
352 </option>
353
354 <option>
355 <p><opt>default-sample-channels</opt> The default number of channels.</p>
356 </option>
357
358 </section>
359
360 <section name="Default Fragment Settings">
361
362 <p>Some hardware drivers require the hardware playback buffer to
363 be subdivided into several fragments. It is possible to change
364 these buffer metrics for machines with high scheduling
365 latencies. Not all possible values that may be configured here are
366 available in all hardware. The driver will to find the nearest
367 setting supported.</p>
368
369 <option>
370 <p><opt>default-fragments=</opt> The default number of
371 fragments. Defaults to 4.</p>
372 </option>
373 <option>
374 <p><opt>default-fragment-size-msec=</opt>The duration of a
375 single fragment. Defaults to 25ms (i.e. the total buffer is thus
376 100ms long).</p>
377 </option>
378
379 </section>
380
381 <section name="Authors">
382 <p>The PulseAudio Developers &lt;@PACKAGE_BUGREPORT@&gt;; PulseAudio is available from <url href="@PACKAGE_URL@"/></p>
383 </section>
384
385 <section name="See also">
386 <p>
387 <manref name="pulse-client.conf" section="5"/>, <manref name="default.pa" section="5"/>, <manref name="pulseaudio" section="1"/>, <manref name="pacmd" section="1"/>
388 </p>
389 </section>
390
391 </manpage>