]> code.delx.au - pulseaudio/blob - src/daemon/default.pa.in
4e77ae9732c638bd924ff94a4c1818881749d4ad
[pulseaudio] / src / daemon / default.pa.in
1 #!@PA_BINARY@ -nF
2 #
3 # This file is part of PulseAudio.
4 #
5 # PulseAudio is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU Lesser General Public License as published by
7 # the Free Software Foundation; either version 2 of the License, or
8 # (at your option) any later version.
9 #
10 # PulseAudio is distributed in the hope that it will be useful, but
11 # WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 # General Public License for more details.
14 #
15 # You should have received a copy of the GNU Lesser General Public License
16 # along with PulseAudio; if not, write to the Free Software Foundation,
17 # Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
18
19 # This startup script is used only if PulseAudio is started per-user
20 # (i.e. not in system mode)
21 changequote(`[', `]')dnl Set up m4 quoting
22
23 .nofail
24
25 ### Load something into the sample cache
26 ifelse(@OS_IS_WIN32@, 1, [dnl
27 load-sample x11-bell %WINDIR%\Media\ding.wav
28 load-sample-dir-lazy %WINDIR%\Media\*.wav
29 ], [dnl
30 #load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
31 #load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
32 #load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
33 #load-sample-lazy pulse-access /usr/share/sounds/generic.wav
34 ])dnl
35
36 .fail
37
38 ### Automatically restore the volume of streams and devices
39 load-module module-device-restore
40 load-module module-stream-restore
41 load-module module-card-restore
42
43 ### Automatically augment property information from .desktop files
44 ### stored in /usr/share/application
45 load-module module-augment-properties
46
47 ### Should be after module-*-restore but before module-*-detect
48 load-module module-switch-on-port-available
49
50 ### Load audio drivers statically
51 ### (it's probably better to not load these drivers manually, but instead
52 ### use module-udev-detect -- see below -- for doing this automatically)
53 ifelse(@HAVE_ALSA@, 1, [dnl
54 #load-module module-alsa-sink
55 #load-module module-alsa-source device=hw:1,0
56 ])dnl
57 ifelse(@HAVE_OSS_OUTPUT@, 1, [dnl
58 #load-module module-oss device="/dev/dsp" sink_name=output source_name=input
59 #load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
60 ])dnl
61 ifelse(@HAVE_WAVEOUT@, 1, [dnl
62 load-module module-waveout sink_name=output source_name=input
63 ])dnl
64 #load-module module-null-sink
65 ifelse(@HAVE_MKFIFO@, 1, [dnl
66 #load-module module-pipe-sink
67 ])dnl
68
69 ### Automatically load driver modules depending on the hardware available
70 ifelse(@HAVE_UDEV@, 1, [dnl
71 .ifexists module-udev-detect@PA_SOEXT@
72 load-module module-udev-detect
73 .else
74 ], [dnl
75 .ifexists module-detect@PA_SOEXT@
76 ])dnl
77 ### Use the static hardware detection module (for systems that lack udev support)
78 load-module module-detect
79 .endif
80
81 ### Automatically connect sink and source if JACK server is present
82 .ifexists module-jackdbus-detect@PA_SOEXT@
83 .nofail
84 load-module module-jackdbus-detect channels=2
85 .fail
86 .endif
87
88 ifelse(@HAVE_BLUEZ@, 1, [dnl
89 ### Automatically load driver modules for Bluetooth hardware
90 .ifexists module-bluetooth-policy@PA_SOEXT@
91 load-module module-bluetooth-policy
92 .endif
93
94 .ifexists module-bluetooth-discover@PA_SOEXT@
95 load-module module-bluetooth-discover
96 .endif
97 ])dnl
98
99 ifelse(@HAVE_AF_UNIX@, 1, [dnl
100 ### Load several protocols
101 .ifexists module-esound-protocol-unix@PA_SOEXT@
102 load-module module-esound-protocol-unix
103 .endif
104 load-module module-native-protocol-unix
105 ])dnl
106
107 ### Network access (may be configured with paprefs, so leave this commented
108 ### here if you plan to use paprefs)
109 #load-module module-esound-protocol-tcp
110 #load-module module-native-protocol-tcp
111 ifelse(@HAVE_AVAHI@, 1, [dnl
112 #load-module module-zeroconf-publish
113 ])dnl
114
115 ifelse(@OS_IS_WIN32@, 0, [dnl
116 ### Load the RTP receiver module (also configured via paprefs, see above)
117 #load-module module-rtp-recv
118
119 ### Load the RTP sender module (also configured via paprefs, see above)
120 #load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
121 #load-module module-rtp-send source=rtp.monitor
122
123 ### Load additional modules from GConf settings. This can be configured with the paprefs tool.
124 ### Please keep in mind that the modules configured by paprefs might conflict with manually
125 ### loaded modules.
126 .ifexists module-gconf@PA_SOEXT@
127 .nofail
128 load-module module-gconf
129 .fail
130 .endif
131
132 ### Automatically restore the default sink/source when changed by the user
133 ### during runtime
134 ### NOTE: This should be loaded as early as possible so that subsequent modules
135 ### that look up the default sink/source get the right value
136 load-module module-default-device-restore
137
138 ### Automatically move streams to the default sink if the sink they are
139 ### connected to dies, similar for sources
140 load-module module-rescue-streams
141
142 ### Make sure we always have a sink around, even if it is a null sink.
143 load-module module-always-sink
144
145 ### Honour intended role device property
146 load-module module-intended-roles
147
148 ### Automatically suspend sinks/sources that become idle for too long
149 load-module module-suspend-on-idle
150
151 ### If autoexit on idle is enabled we want to make sure we only quit
152 ### when no local session needs us anymore.
153 .ifexists module-console-kit@PA_SOEXT@
154 load-module module-console-kit
155 .endif
156 .ifexists module-systemd-login@PA_SOEXT@
157 load-module module-systemd-login
158 .endif
159
160 ### Enable positioned event sounds
161 load-module module-position-event-sounds
162
163 ### Cork music/video streams when a phone stream is active
164 load-module module-role-cork
165
166 ### Modules to allow autoloading of filters (such as echo cancellation)
167 ### on demand. module-filter-heuristics tries to determine what filters
168 ### make sense, and module-filter-apply does the heavy-lifting of
169 ### loading modules and rerouting streams.
170 load-module module-filter-heuristics
171 load-module module-filter-apply
172 ])dnl
173
174 ifelse(@HAVE_X11@, 1, [dnl
175 # X11 modules should not be started from default.pa so that one daemon
176 # can be shared by multiple sessions.
177
178 ### Load X11 bell module
179 #load-module module-x11-bell sample=bell-windowing-system
180
181 ### Register ourselves in the X11 session manager
182 #load-module module-x11-xsmp
183
184 ### Publish connection data in the X11 root window
185 #.ifexists module-x11-publish@PA_SOEXT@
186 #.nofail
187 #load-module module-x11-publish
188 #.fail
189 #.endif
190 ])dnl
191
192 ### Make some devices default
193 #set-default-sink output
194 #set-default-source input