Some more aacdec cleanups
[paraslash.git] / server.ggo
1 section "General options"
2 #~~~~~~~~~~~~~~~~~~~~~~~~
3
4 option "loglevel" l
5 #~~~~~~~~~~~~~~~~~~
6
7 "set loglevel (0-6)"
8
9 int typestr="level"
10 default="4"
11 optional
12
13 option "port" p
14 #~~~~~~~~~~~~~~
15
16 "listening port"
17
18 int typestr="portnumber"
19 default="2990"
20 optional
21
22 option "daemon" d
23 #~~~~~~~~~~~~~~~~
24
25 "run as background daemon"
26
27 flag off
28
29 option "user" u
30 #~~~~~~~~~~~~~~
31
32 "run as user 'name'. para_server does not
33 need any special privileges. If started as
34 root (EUID == 0) this option must be given at
35 the command line (not in the configuration
36 file) so that para_server can drop the root
37 privileges right after parsing the command
38 line options, but before parsing the
39 configuration file. In this case,
40 real/effective/saved UID are all set to the
41 UID of 'username'. As the configuration file
42 is read afterwards, those options that have a
43 default value depending on the UID (e.g. the
44 directory for the configuration file) are
45 computed by using the uid of 'username'.
46 This option has no effect if para_server is
47 started as a non-root user (i.e. EUID != 0)"
48
49 string typestr="name"
50 optional
51
52
53 option "group" g
54 #~~~~~~~~~~~~~~~
55
56 "set group id to according to 'group'. This
57 option is silently ignored if EUID != 0.
58 Otherwise, real/effective GID and the saved
59 set-group ID are all set to the GID given by
60 'group'. Must not be given in the config file."
61
62 string typestr="groupname"
63 optional
64
65
66
67 section "Configuration files"
68 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~
69
70
71 option "logfile" L
72 #~~~~~~~~~~~~~~~~~
73
74 "(default=stdout/stderr)"
75
76 string typestr="filename"
77 optional
78
79 option "config_file" c
80 #~~~~~~~~~~~~~~~~~~~~~
81
82 "(default='~/.paraslash/server.conf'"
83
84 string typestr="filename"
85 optional
86
87 option "user_list" -
88 #~~~~~~~~~~~~~~~~~~~
89
90 "(default='~/.paraslash/server.users')"
91
92 string typestr="filename"
93 optional
94
95
96
97 section "audio file sender"
98 #~~~~~~~~~~~~~~~~~~~~~~~~~~
99
100
101 option "autoplay" a
102 #~~~~~~~~~~~~~~~~~~
103
104 "start playing on startup"
105
106 flag off
107
108 option "announce_time" A
109 #~~~~~~~~~~~~~~~~~~~~~~~
110
111 "Delay betweeen announcing the stream and sending data"
112
113 int typestr="milliseconds"
114 default="300"
115 optional
116
117
118 option "selector" S
119 #~~~~~~~~~~~~~~~~~~
120
121 "(default=random)"
122
123 string typestr="name"
124 optional
125
126
127
128 section "mysql selector:"
129 #~~~~~~~~~~~~~~~~~~~~~~~~
130
131
132 option "mysql_host" -
133 #~~~~~~~~~~~~~~~~~~~~
134
135 "mysql server"
136
137 string typestr="ip or hostname"
138 default="localhost"
139 optional
140
141 option "mysql_port" -
142 #~~~~~~~~~~~~~~~~~~~~
143
144 "where mysql is listening"
145
146 int typestr="portnumber"
147 default="3306"
148 optional
149
150
151 option "mysql_user" -
152 #~~~~~~~~~~~~~~~~~~~~
153
154 "default value: username from /etc/passwd"
155
156 string typestr="username"
157 optional
158
159 option "mysql_passwd" -
160 #~~~~~~~~~~~~~~~~~~~~~~
161
162 "(required)"
163
164 string
165 optional
166
167 option "mysql_database" -
168 #~~~~~~~~~~~~~~~~~~~~~~~~
169
170 "name of mysql database"
171
172 string
173 default="paraslash"
174 optional
175
176 option "mysql_audio_file_dir" -
177 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
178
179 "dir to search for audio files (required)"
180
181 string typestr="dirname"
182 optional
183
184 option "mysql_default_score" -
185 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
186
187 "scoring rule to use if stream definition
188 does not contain explicit score definition"
189
190 string
191 default="(LASTPLAYED() / 1440 - 1000 / (LASTPLAYED() + 1) - sqrt(NUMPLAYED()))"
192 optional
193
194
195
196
197 section "random selector"
198 #~~~~~~~~~~~~~~~~~~~~~~~~
199
200
201 option "random_dir" -
202 #~~~~~~~~~~~~~~~~~~~~
203
204 "dir to search for audio files"
205 string typestr="dirname"
206 default="/home/music"
207 optional
208
209
210
211
212 section "http sender"
213 #~~~~~~~~~~~~~~~~~~~~
214
215
216 option "http_port" -
217 #~~~~~~~~~~~~~~~~~~~
218
219 "tcp port for http streaming"
220
221 int typestr="portnumber"
222 default="8000"
223 optional
224
225 option "http_default_deny" -
226 #~~~~~~~~~~~~~~~~~~~~~~~~~~~
227
228 "deny connections from hosts which are not
229 explicitly allowed"
230
231 flag off
232
233 option "http_access" -
234 #~~~~~~~~~~~~~~~~~~~~~
235
236 "Add given host/network to access control
237 list (whitelist if http_default_deny was
238 given, blacklist otherwise) before opening
239 the tcp port. This option can be given
240 multiple times. Example: '192.168.0.0/24'
241 whitelists/blacklists the 256 hosts
242 192.168.0.x"
243
244 string typestr="a.b.c.d/n"
245 optional
246 multiple
247
248 option "http_no_autostart" -
249 #~~~~~~~~~~~~~~~~~~~~~~~~~~~
250
251 "do not open tcp port on server startup"
252
253 flag off
254
255 option "http_max_clients" -
256 #~~~~~~~~~~~~~~~~~~~~~~~~~~
257
258 "maximal simultaneous connections,
259 non-positive value means unlimited"
260
261 int typestr="number"
262 default="-1"
263 optional
264
265
266
267
268 section "dccp sender"
269 #~~~~~~~~~~~~~~~~~~~~
270
271
272 option "dccp_port" -
273 #~~~~~~~~~~~~~~~~~~~
274
275 "port for dccp streaming"
276
277 int typestr="portnumber"
278 default="5001"
279 optional
280
281
282
283
284 section "ortp sender"
285 #~~~~~~~~~~~~~~~~~~~~
286
287 option "ortp_target" -
288 #~~~~~~~~~~~~~~~~~~~~~
289
290 "Add given host/port to the list of targets.
291 This option can be given multiple times.
292 Example: '224.0.1.38:1500' instructs the ortp
293 sender to send to udp port 1500 on host
294 224.0.1.38 (unassigned ip in the Local
295 Network Control Block 224.0.0/24). This is
296 useful for LAN-streaming."
297
298 string typestr="a.b.c.d:p"
299 optional
300 multiple
301
302 option "ortp_no_autostart" -
303 #~~~~~~~~~~~~~~~~~~~~~~~~~~~
304
305 "do not start to send automatically"
306
307 flag off
308
309 option "ortp_default_port" -
310 #~~~~~~~~~~~~~~~~~~~~~~~~~~~
311
312 "default udp port if not specified"
313
314 int typestr="portnumber"
315 default="1500"
316 optional
317
318 option "ortp_header_interval" H
319 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
320
321 "time between extra header sends"
322
323 int typestr="milliseconds"
324 default="2000"
325 optional
326
327 option "ortp_jitter_compensation" j
328 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
329
330 "non-zero values enable ortp's adaptive
331 jitter compensation"
332
333 int typestr="milliseconds"
334 default="400"
335 optional