]> code.delx.au - pulseaudio/blob - src/daemon/default.pa.in
build-sys: remove HAL support, it's obsolete since years
[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 ### Load audio drivers statically
48 ### (it's probably better to not load these drivers manually, but instead
49 ### use module-udev-detect -- see below -- for doing this automatically)
50 ifelse(@HAVE_ALSA@, 1, [dnl
51 #load-module module-alsa-sink
52 #load-module module-alsa-source device=hw:1,0
53 ])dnl
54 ifelse(@HAVE_OSS_OUTPUT@, 1, [dnl
55 #load-module module-oss device="/dev/dsp" sink_name=output source_name=input
56 #load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
57 ])dnl
58 ifelse(@HAVE_WAVEOUT@, 1, [dnl
59 load-module module-waveout sink_name=output source_name=input
60 ])dnl
61 #load-module module-null-sink
62 ifelse(@HAVE_MKFIFO@, 1, [dnl
63 #load-module module-pipe-sink
64 ])dnl
65
66 ### Automatically load driver modules depending on the hardware available
67 ifelse(@HAVE_UDEV@, 1, [dnl
68 .ifexists module-udev-detect@PA_SOEXT@
69 load-module module-udev-detect
70 .else
71 ], [dnl
72 .ifexists module-detect@PA_SOEXT@
73 ])dnl
74 ### Use the static hardware detection module (for systems that lack udev support)
75 load-module module-detect
76 .endif
77
78 ### Automatically connect sink and source if JACK server is present
79 .ifexists module-jackdbus-detect@PA_SOEXT@
80 .nofail
81 load-module module-jackdbus-detect
82 .fail
83 .endif
84
85 ifelse(@HAVE_BLUEZ@, 1, [dnl
86 ### Automatically load driver modules for Bluetooth hardware
87 .ifexists module-bluetooth-discover@PA_SOEXT@
88 load-module module-bluetooth-discover
89 .endif
90 ])dnl
91
92 ifelse(@HAVE_AF_UNIX@, 1, [dnl
93 ### Load several protocols
94 .ifexists module-esound-protocol-unix@PA_SOEXT@
95 load-module module-esound-protocol-unix
96 .endif
97 load-module module-native-protocol-unix
98 ])dnl
99
100 ### Network access (may be configured with paprefs, so leave this commented
101 ### here if you plan to use paprefs)
102 #load-module module-esound-protocol-tcp
103 #load-module module-native-protocol-tcp
104 ifelse(@HAVE_AVAHI@, 1, [dnl
105 #load-module module-zeroconf-publish
106 ])dnl
107
108 ifelse(@OS_IS_WIN32@, 0, [dnl
109 ### Load the RTP receiver module (also configured via paprefs, see above)
110 #load-module module-rtp-recv
111
112 ### Load the RTP sender module (also configured via paprefs, see above)
113 #load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
114 #load-module module-rtp-send source=rtp.monitor
115
116 ### Load additional modules from GConf settings. This can be configured with the paprefs tool.
117 ### Please keep in mind that the modules configured by paprefs might conflict with manually
118 ### loaded modules.
119 .ifexists module-gconf@PA_SOEXT@
120 .nofail
121 load-module module-gconf
122 .fail
123 .endif
124
125 ### Automatically restore the default sink/source when changed by the user
126 ### during runtime
127 ### NOTE: This should be loaded as early as possible so that subsequent modules
128 ### that look up the default sink/source get the right value
129 load-module module-default-device-restore
130
131 ### Automatically move streams to the default sink if the sink they are
132 ### connected to dies, similar for sources
133 load-module module-rescue-streams
134
135 ### Make sure we always have a sink around, even if it is a null sink.
136 load-module module-always-sink
137
138 ### Honour intended role device property
139 load-module module-intended-roles
140
141 ### Automatically suspend sinks/sources that become idle for too long
142 load-module module-suspend-on-idle
143
144 ### If autoexit on idle is enabled we want to make sure we only quit
145 ### when no local session needs us anymore.
146 .ifexists module-console-kit@PA_SOEXT@
147 load-module module-console-kit
148 .endif
149 .ifexists module-systemd-login@PA_SOEXT@
150 load-module module-systemd-login
151 .endif
152
153 ### Enable positioned event sounds
154 load-module module-position-event-sounds
155
156 ### Cork music/video streams when a phone stream is active
157 load-module module-role-cork
158
159 ### Modules to allow autoloading of filters (such as echo cancellation)
160 ### on demand. module-filter-heuristics tries to determine what filters
161 ### make sense, and module-filter-apply does the heavy-lifting of
162 ### loading modules and rerouting streams.
163 load-module module-filter-heuristics
164 load-module module-filter-apply
165 ])dnl
166
167 ifelse(@HAVE_DBUS@, 1, [dnl
168 ### Load DBus protocol
169 .ifexists module-dbus-protocol@PA_SOEXT@
170 load-module module-dbus-protocol
171 .endif
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 load-module module-switch-on-port-available
193
194 ### Make some devices default
195 #set-default-sink output
196 #set-default-source input