1 #########################
2 section "General options"
3 #########################
12 Larger values mean less verbose output. Loglevel 1 (debug) gets
13 really noisy; a value of 2 (info) produces still noisy output,
14 but this won't fill up the disk quicky. Messaged logged with
15 loglevel 3 (notice) indicate normal but significant events
16 while level 4 (warning) logs unexpected events that can be
17 handled. Unhandled error conditions are logged with loglevel
18 5 (error) and crititcal errors are logged using loglevel 6
19 (crit). Finally, loglevel 7 (emerg) is reserved for messages
20 that cause para_server to terminate immediately.
26 int typestr="portnumber"
30 para_server listens on this tcp port for incoming connections
31 from clients such as para_client. If the default port is
32 changed, the corresponding option of para_client must be used
33 to connect to para_server.
38 "run as background daemon"
42 Note that para_server refuses to start in daemon mode if no
43 logfile was specified.
48 "run as the given user"
52 para_server does not need any special privileges. If started
53 as root (EUID == 0) this option must be given at the command
54 line (not in the configuration file) so that para_server
55 can drop the root privileges right after parsing the command
56 line options, but before parsing the configuration file. In
57 this case, real/effective/saved UID are all set to the UID
58 of 'name'. As the configuration file is read afterwards,
59 those options that have a default value depending on the UID
60 (e.g. the directory for the configuration file) are computed
61 by using the uid of 'name'. This option has no effect if
62 para_server is started as a non-root user (i.e. EUID != 0)
69 string typestr="group"
72 This option sets the group id according to 'group'. This option
73 is silently ignored if EUID != 0. Otherwise, real/effective
74 GID and the saved set-group ID are all set to the GID given by
75 'group'. Must not be given in the config file.
78 #############################
79 section "Configuration files"
80 #############################
85 "where to write log output"
86 string typestr="filename"
89 If this option is not given, para_server writes the log
93 option "config_file" c
94 #~~~~~~~~~~~~~~~~~~~~~
95 "(default='~/.paraslash/server.conf'"
96 string typestr="filename"
99 para_server reads its config file right after parsing
100 the options that were given at the command line. If an
101 option is given both at the command line and in the
102 config file, the value that was specified at the command line
108 "(default='~/.paraslash/server.users')"
110 string typestr="filename"
114 ##################################
115 section "virtual streaming system"
116 ##################################
121 "start playing on startup"
124 option "autoplay_delay" -
125 #~~~~~~~~~~~~~~~~~~~~~~~~
126 "time to wait before streaming"
132 If para_server is started with the autoplay option, this option
133 may be used to set up a delay before para_server streams its
134 first audio file. This is useful for example if para_server
135 and para_audiod are started during system startup. The delay
136 time should be choosen large enough so that para_audiod is
137 already up when para_server starts to stream. Of course, this
138 option depends on the autoplay option.
140 option "announce_time" A
141 #~~~~~~~~~~~~~~~~~~~~~~~
142 "grace time for clients"
148 Clients such as para_audiod connect to para_server and execute
149 the stat command to find out whether an audio stream is
150 currently available. This sets the delay betweeen announcing
151 the stream via the output of the stat command and sending
152 the first chunk of data.
155 #############################
156 section "audio file selector"
157 #############################
159 option "afs_database_dir" D
160 #~~~~~~~~~~~~~~~~~~~~~~~~~~
161 "location of the database"
162 string typestr="path"
165 Where para_server should look for the osl
166 database of the audio file selector. The default is
167 '~/.paraslash/afs_database'.
170 option "afs_socket" s
171 #~~~~~~~~~~~~~~~~~~~~
172 "Command socket for afs"
173 string typestr="path"
174 default="/var/paraslash/afs_command_socket"
177 For each server command that is handled by the audio file
178 selector, the child process of para_server connects to the
179 audio file selector via a local socket. This option specifies
180 the location of that socket in the file system.
182 option "afs_initial_mode" i
183 #~~~~~~~~~~~~~~~~~~~~~~~~~~
185 "Mood or playlist to load on startup."
186 string typestr="<specifier>/<name>"
190 The argument of this option must be prefixed with either 'p/'
191 or 'm/' to indicate whether a playlist or a mood should be
193 --afs_initial_mode p/foo
194 loads the playlist named 'foo'.
197 #####################
198 section "http sender"
199 #####################
204 "tcp port for http streaming"
205 int typestr="portnumber"
209 The http sender of para_server listens on this port for
210 incoming connections. Clients are expected to send the usual
211 http request message such as 'GET / HTTP/'.
214 option "http_default_deny" -
215 #~~~~~~~~~~~~~~~~~~~~~~~~~~~
216 "make the http ACL a whitelist"
219 The default is to use blacklists instead, i.e. connections
220 to the http sender are allowed unless the connecting host
221 matches a pattern given by a http_access option. This allows
222 to use access control the other way round: Connections are
223 denied from hosts which are not explicitly allowed by one or
224 more http_access options.
227 option "http_access" -
228 #~~~~~~~~~~~~~~~~~~~~~
229 "add an entry to the http ACL"
230 string typestr="a.b.c.d/n"
234 Add given host/network to access control list (whitelist if
235 http_default_deny was given, blacklist otherwise) before
236 opening the tcp port. This option can be given multiple
237 times. Example: '192.168.0.0/24' whitelists/blacklists the
238 256 hosts 192.168.0.x
241 option "http_no_autostart" -
242 #~~~~~~~~~~~~~~~~~~~~~~~~~~~
243 "do not open tcp port on startup"
246 If this option is given, the http sender does not listen on
247 its tcp port. It may be instructed to open this port at a
248 later time by using the sender command.
251 option "http_max_clients" -
252 #~~~~~~~~~~~~~~~~~~~~~~~~~~
253 "maximal number of connections"
258 The http sender will refuse connections if already that number
259 of clients are currently connected. A non-positive value
260 (the default) allows an unlimited number of simultaneous
264 #####################
265 section "dccp sender"
266 #####################
271 "port for dccp streaming"
272 int typestr="portnumber"
276 See http_port for details.
279 option "dccp_default_deny" -
280 #~~~~~~~~~~~~~~~~~~~~~~~~~~~
281 "make the dccp ACL a whitelist"
284 See http_default_deny for details.
287 option "dccp_access" -
288 #~~~~~~~~~~~~~~~~~~~~~
289 "add an entry to the dccp ACL"
290 string typestr="a.b.c.d/n"
294 See http_access for details.
297 option "dccp_max_clients" -
298 #~~~~~~~~~~~~~~~~~~~~~~~~~~
299 "maximal number of connections"
304 See http_max_clients for details.
307 #####################
308 section "ortp sender"
309 #####################
311 option "ortp_target" -
312 #~~~~~~~~~~~~~~~~~~~~~
314 string typestr="a.b.c.d:p"
318 Add given host/port to the list of targets. This option
319 can be given multiple times. Example: '224.0.1.38:1500'
320 instructs the ortp sender to send to udp port 1500 on host
321 224.0.1.38 (unassigned ip in the Local Network Control Block
322 224.0.0/24). This is useful for LAN-streaming.
325 option "ortp_no_autostart" -
326 #~~~~~~~~~~~~~~~~~~~~~~~~~~~
327 "do not start sending"
330 If this option is given, ortp streaming may be activated at
331 a later time by using the sender command.
334 option "ortp_default_port" -
335 #~~~~~~~~~~~~~~~~~~~~~~~~~~~
336 "udp port to send to"
341 option "ortp_header_interval" H
342 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
343 "duration for sending header"
348 As the ortp sender has no idea about connected clients it
349 sends the audio file header periodically if necessary. This
350 option is used to specify the duration of the interval between
351 sending the header. Shorter values decrease the average time
352 clients have to wait before being able to start playback,
353 but this also increases the amount network traffic. Note
354 that this affects only ogg vorbis streams as this is the only
355 audio format that needs an audio file header.
358 option "ortp_jitter_compensation" j
359 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
360 "configure jitter compensation"
365 ortp's adaptive jitter compensation gets activated whenever
366 this value is greater than zero. See the ortp documentation
367 about details on this feature.