1darkice.cfg(5) DarkIce live audio streamer darkice.cfg(5)
2
3
4
6 darkice.cfg - configuration file for darkice
7
9 The configuration file consists of sections, with key = value pairs
10 separated with spaces and/or tabs inside each secion:
11
12 [section1]
13 # this is a whole line comment
14 key = value
15 an ugly key name = long value # this end is a comment too
16
17 [section2]
18 # this is a whole line comment in section 2
19 key = value
20 an ugly key name = long value # this end is a comment too
21
22 A proper DarkIce configuration file contains the following sections:
23 [general]
24 [input]
25 [icecast-0] ... [icecast-7]
26 [icecast2-0] ... [icecast2-7]
27 [shoutcast-0] ... [shoutcast-7]
28 [file-0] ... [file-7]
29
30 The order of the sections is not important. Sections [general] and
31 [input] are required, and at least one of [icecast-x], [icecast2-x],
32 [shoutcast-x] or [file-x] is needed.
33
34 In particular, the following sections and values are recognized:
35
36 [general]
37
38 This section describes general operational parameters (required).
39
40 Required values:
41
42
43 duration
44 Time for DarkIce to run, in seconds. If 0, run forever.
45
46 bufferSecs
47 Data read from the sound card is buffered before sent to the
48 encoder. Each buffer will be able to hold this many seconds of
49 samples.
50
51
52 Optional values:
53
54
55 reconnect
56 Try to reconnect to the server(s) if the connection is broken
57 during streaming, "yes" or "no". (optional parameter, defaults
58 to "yes")
59
60 realtime
61 Use POSIX realtime scheduling, "yes" or "no". (optional parame‐
62 ter, defaults to "yes")
63
64
65
66 [input]
67
68 This section describes the input (required).
69
70 Required values:
71
72
73 device Specify the device to record from, which can be an OSS DSP
74 device, an ALSA source or you can use Jack audio. - OSS DSP
75 audio device to record from (e.g. /dev/dsp) - ALSA DSP device
76 name (e.g. hwplug:0,0) - the string 'jack', to have an uncon‐
77 nected Jack port, or
78 'jack_auto' to automatically make Jack connect to the first
79 source.
80
81 sampleRate
82 The sample rate to record with, samples per second (e.g. 44100
83 for 44.1kHz CD-quality audio, 22050 for 22kHz or 11025 for
84 11kHz)
85
86 bitsPerSample
87 Number of bits to use for each sample (e.g. 8 bits or 16 bits)
88
89 channel
90 Number of channels to record (e.g. 1 for mono, 2 for stereo)
91
92 jackClientName
93 The name of the jack input channel created by darkice if
94 device=jack is specified.
95
96
97 [icecast-x]
98
99 This section describes an output to an IceCast 1.3.x server or Darwin
100 Streaming Server , while encoding with a lame encoder. There may be at
101 most 8 outputs, numbered from 0 ... 7. The number is included in the
102 section name (e.g. [icecast-0] ... [icecast-7]). The stream will be
103 reachable at http://<server>:<port>/<mountPoint>
104
105 Required values:
106
107
108 bitrateMode
109 The bit rate mode of the encoding, either "cbr", "abr" or "vbr",
110 standing for constant bit rate, average bit rate and variable
111 bit respectively. Use the bitrate and/or quality values to spec‐
112 ify details of the appropriate bit rate mode.
113
114 bitrate
115 Bit rate to encode to in kBits / sec (e.g. 96). Only used when
116 cbr or abr bit rate modes are specified.
117
118 quality
119 The quality of encoding a value between 0.0 .. 1.0 (e.g. 0.8),
120 with 1.0 being the highest quality. Use a value greater than
121 0.0. Only used when cbr or vbr bit rate modes are specified.
122
123 server The IceCast server's name (e.g. yp.yourserver.com)
124
125 port The port to connect to the IceCast server (e.g. 8000)
126
127 password
128 The password to use to connect to the IceCast server
129
130 mountPoint
131 Mount point for the stream on the server
132
133
134 Optional values:
135
136
137 sampleRate
138 The sample rate of the encoded mp3 output. If not specified,
139 defaults to the value of the input sample rate.
140
141 channel
142 Number of channels for the mp3 output (e.g. 1 for mono, 2 for
143 stereo). If not specified, defaults to the value of the input
144 sample rate.
145
146 name Name of the stream
147
148 description
149 Description of the stream
150
151 url Url related to the stream
152
153 genre Genre of the stream
154
155 public "yes" or "no", wether the stream is public
156
157 remoteDumpFile
158 The file the IceCast server should dump the contents of this
159 stream on its side.
160
161 localDumpFile
162 Dump the same mp3 data sent to the IceCast server to this local
163 file.
164
165 fileAddDate
166 "yes" or "no" if you want to automaticaly insert a date string
167 in the localDumpFile name before its extension or at the end of
168 file name if no extension present
169
170 fileDateFormat
171 The date format to use for appending the date to the dump file
172 name. Defaults to "[%m-%d-%Y-%H-%M-%S]". All format strings
173 acceptable by strftime() can be used, see the strftime man page
174 for details. Only applicable is fileAddDate is "true".
175
176 lowpass
177 Lowpass filter setting for the lame encoder, in Hz. Frequencies
178 above the specified value will be cut. If not set or set to 0,
179 the encoder's default behaviour is used. If set to -1, the fil‐
180 ter is disabled.
181
182 highpass
183 Highpass filter setting for the lame encoder, in Hz. Frequencies
184 below the specified value will be cut. If not set or set to 0,
185 the encoder's default behaviour is used. If set to -1, the fil‐
186 ter is disabled.
187
188
189 [icecast2-x]
190
191 This section describes an output to an IceCast2 server, while encoding
192 with the ogg vobis encoder. There may be at most 8 outputs, numbered
193 from 0 ... 7. The number is included in the section name (e.g. [ice‐
194 cast2-0] ... [icecast2-7]). The stream will be reachable at
195 http://<server>:<port>/<mountPoint>
196
197 DarkIce supports both fixed bitrate and variable bitrate vorbis
198 streams. When using fixed bitrate, specify the bitrate using the
199 bitrate field. When using variable bitrate, specify the quality of the
200 stream by the quality field, which is a value between 0.0 and 1.0.
201
202 Required values:
203
204
205 format Format of the stream sent to the IceCast2 server. Supported for‐
206 mats are 'vorbis', 'mp3', 'mp2' and 'aac'.
207
208 bitrateMode
209 The bit rate mode of the encoding, either "cbr", "abr" or "vbr",
210 standing for constant bit rate, average bit rate and variable
211 bit respectively. Use the bitrate and/or quality values to spec‐
212 ify details of the appropriate bit rate mode.
213
214 bitrate
215 Bit rate to encode to in kBits / sec (e.g. 96). Only used when
216 cbr or abr bit rate modes are specified.
217
218 quality
219 The quality of encoding a value between 0.0 .. 1.0 (e.g. 0.8),
220 with 1.0 being the highest quality. Use a value greater than
221 0.0. Only used when vbr bit rate mode is specified for Ogg Vor‐
222 bis format, or in vbr and abr modes for mp3 and mp2 format.
223
224 server The IceCast2 server's name (e.g. yp.yourserver.com)
225
226 port The port to connect to the IceCast server (e.g. 8000)
227
228 password
229 The password to use to connect to the IceCast2 server
230
231 mountPoint
232 Mount point for the stream on the server
233
234
235 Optional values:
236
237
238 sampleRate
239 The sample rate of the encoded output. If not specified,
240 defaults to the value of the input sample rate.
241
242 channel
243 Number of channels for the output (e.g. 1 for mono, 2 for
244 stereo). If not specified, defaults to the value of the input
245 sample rate. Different channels for input and output are only
246 supported for mp3, but not for Ogg Vorbis.
247
248 maxBitrate
249 The maximum bitrate of the stream. Only used when in cbr mode
250 and in Ogg Vorbis format.
251
252 name Name of the stream
253
254 description
255 Description of the stream
256
257 url Url related to the stream
258
259 genre Genre of the stream
260
261 public "yes" or "no", wether the stream is public
262
263 localDumpFile
264 Dump the same Ogg Vorbis data sent to the IceCast2 server to
265 this local file.
266
267 fileAddDate
268 "yes" or "no" if you want to automaticaly insert a date string
269 in the localDumpFile name before its extension or at the end of
270 file name if no extension present
271
272 fileDateFormat
273 The date format to use for appending the date to the dump file
274 name. Defaults to "[%m-%d-%Y-%H-%M-%S]". All format strings
275 acceptable by strftime() can be used, see the strftime man page
276 for details. Only applicable is fileAddDate is "true".
277
278 lowpass
279 Lowpass filter setting for the lame encoder, in Hz. Frequencies
280 above the specified value will be cut. If not set or set to 0,
281 the encoder's default behaviour is used. If set to -1, the fil‐
282 ter is disabled. Only has effect if the mp3 or mp2 format is
283 used.
284
285 highpass
286 Highpass filter setting for the lame encoder, in Hz. Frequencies
287 below the specified value will be cut. If not set or set to 0,
288 the encoder's default behaviour is used. If set to -1, the fil‐
289 ter is disabled. Only has effect if the mp3 or mp2 format is
290 used.
291
292
293 [shoutcast-x]
294
295 This section describes an output to a ShoutCast server, while encoding
296 with a lame encoder. There may be at most 8 outputs, numbered from 0
297 ... 7. The number is included in the section name (e.g. [shoutcast-0]
298 ... [shoutcast-7]). The stream will be reachable at
299 http://<server>:<port-1>/
300
301 Required values:
302
303
304 bitrateMode
305 The bit rate mode of the encoding, either "cbr", "abr" or "vbr",
306 standing for constant bit rate, average bit rate and variable
307 bit respectively. Use the bitrate and/or quality values to spec‐
308 ify details of the appropriate bit rate mode.
309
310 bitrate
311 Bit rate to encode to in kBits / sec (e.g. 96). Only used when
312 cbr or abr bit rate modes are specified.
313
314 quality
315 The quality of encoding a value between 0.0 .. 1.0 (e.g. 0.8),
316 with 1.0 being the highest quality. Use a value greater than
317 0.0. Only used when cbr or vbr bit rate modes are specified.
318
319 server The ShoutCast server's name (e.g. yp.yourserver.com)
320
321 port The source port to connect to the ShoutCast server (e.g. 8001)
322
323 password
324 The password to use to connect to the ShoutCast server
325
326
327 Optional values:
328
329
330 mountPoint
331 Mount point for the stream on the server. Only works on Darwin
332 Streaming Server, the original Shoutcast server does not support
333 mount points
334
335 sampleRate
336 The sample rate of the encoded mp3 output. If not specified,
337 defaults to the value of the input sample rate.
338
339 channel
340 Number of channels for the mp3 output (e.g. 1 for mono, 2 for
341 stereo). If not specified, defaults to the value of the input
342 sample rate.
343
344 name Name of the stream
345
346 url Url related to the stream
347
348 genre Genre of the stream
349
350 public "yes" or "no", wether the stream is public
351
352 irc IRC information related to the stream
353
354 aim AIM information related to the stream
355
356 icq ICQ information related to the stream
357
358 lowpass
359 Lowpass filter setting for the lame encoder, in Hz. Frequencies
360 above the specified value will be cut. If not set or set to 0,
361 the encoder's default behaviour is used. If set to -1, the fil‐
362 ter is disabled.
363
364 highpass
365 Highpass filter setting for the lame encoder, in Hz. Frequencies
366 below the specified value will be cut. If not set or set to 0,
367 the encoder's default behaviour is used. If set to -1, the fil‐
368 ter is disabled.
369
370 localDumpFile
371 Dump the same mp3 data sent to the ShoutCast server to this
372 local file.
373
374 fileAddDate
375 "yes" or "no" if you want to automaticaly insert a date string
376 in the localDumpFile name before its extension or at the end of
377 file name if no extension present
378
379 fileDateFormat
380 The date format to use for appending the date to the dump file
381 name. Defaults to "[%m-%d-%Y-%H-%M-%S]". All format strings
382 acceptable by strftime() can be used, see the strftime man page
383 for details. Only applicable is fileAddDate is "true".
384
385 [file-x]
386
387 This section describes an output to a local file in either Ogg Vorbis
388 or mp3 format. There may be at most 8 outputs, numbered from 0 ... 7.
389 The number is included in the section name (e.g. [file-0] ...
390 [file-7]).
391
392 Required values:
393
394
395 format Format to encode in. Must be either 'mp3', 'vorbis' or 'aac'.
396
397 bitrateMode
398 The bit rate mode of the encoding, either "cbr", "abr" or "vbr",
399 standing for constant bit rate, average bit rate and variable
400 bit respectively. Use the bitrate and/or quality values to spec‐
401 ify details of the appropriate bit rate mode.
402
403 bitrate
404 Bit rate to encode to in kBits / sec (e.g. 96). Only used when
405 cbr or abr bit rate modes are specified.
406
407 quality
408 The quality of encoding a value between 0.0 .. 1.0 (e.g. 0.8),
409 with 1.0 being the highest quality. Use a value greater than
410 0.0. Only used when cbr or vbr bit rate modes are specified.
411
412 fileName
413 The name of the local file to save the encoded data into.
414
415
416 Optional values:
417
418
419 sampleRate
420 The sample rate of the encoded mp3 output. If not specified,
421 defaults to the value of the input sample rate. Only used if
422 the output format is mp3.
423
424 lowpass
425 Lowpass filter setting for the lame encoder, in Hz. Frequencies
426 above the specified value will be cut. If not set or set to 0,
427 the encoder's default behaviour is used. If set to -1, the fil‐
428 ter is disabled. Only used if the output format is mp3.
429
430 highpass
431 Highpass filter setting for the lame encoder, in Hz. Frequencies
432 below the specified value will be cut. If not set or set to 0,
433 the encoder's default behaviour is used. If set to -1, the fil‐
434 ter is disabled. Only used if the output format is mp3.
435
436
437 A sample configuration file follows. This file makes DarkIce stream for
438 1 minute (60 seconds) from the audio device /dev/dsp at 22.05kHz, 16
439 bit stereo. It will build up a connection to the IceCast server
440 yp.yourserver.com on port 8000 with the password "hackme". The stream
441 will be encoded to 96 kb/s mp3 with quality 0.8, and will be reachable
442 at http://yp.yourserver.com:8000/live96 to mp3 players. The encoding
443 session will be stored by IceCast in the file /tmp/server-dump.mp3 on
444 the server side, and also by DarkIce in the file /tmp/encoder-dump.mp3
445 on the encoder side.
446
447 [general]
448 duration = 60
449 bufferSecs = 5
450
451 [input]
452 device = /dev/dsp
453 sampleRate = 22050
454 bitsPerSample = 16
455 channel = 2
456
457 [icecast-0]
458 bitrateMode = cbr
459 bitrate = 96
460 quality = 0.8
461 server = yp.yourserver.com
462 port = 8000
463 password = hackme
464 mountPoint = live96
465 name = DarkIce trial
466 description = This is only a trial
467 url = http://www.yourserver.com
468 genre = live
469 public = no
470 remoteDumpFile = /tmp/server-dump.mp3
471 localDumpFile = /tmp/encoder-dump.mp3
472 fileAddDate = no
473
474
475
476 The following sample configuration file simply encodes the 16 bit
477 stereo 44.1 kHz sound card input into Ogg Vorbis at average bit rate 96
478 kb/s for 60 seconds, and saves it in the local file at /tmp/save.ogg.
479
480 [general]
481 duration = 60
482 bufferSecs = 5
483
484 [input]
485 device = /dev/dsp
486 sampleRate = 44100
487 bitsPerSample = 16
488 channel = 2
489
490 [file-0]
491 format = vorbis
492 bitrateMode = abr
493 bitrate = 96
494 fileName = /tmp/save.ogg
495
496
497
498 A bit more complicated sample follows. This one makes DarkIce stream
499 for 1 hour (3600 seconds) from the audio device /dev/dsp at 44.1kHz, 16
500 bit stereo.
501
502 It will build up a connection to an IceCast server yp.your-ice-
503 server.com on port 8000 with the password "ice-hackme". The sound for
504 this stream will be cut at 10500 Hz from above. The stream will be
505 encoded to average bit rate 96 kb/s mp3 and resampled to 22.05kHz and 1
506 channel (mono). The stream will be reachable at http://yp.your-ice-
507 server.com:8000/live96 to mp3 players. The encoding session will be
508 stored by IceCast in the file /tmp/live96.mp3 on the server side.
509
510 It will also connect to a ShoutCast server at yp.your-shout-server.com
511 on port 8001 with the password "shout-hackme" This stream will be
512 encoded to constant bit rate 128 kb/s mp3 with quality 0.8, and will be
513 reachable at http://yp.your-shout-server.com:8000 to mp3 players.
514
515 [general]
516 duration = 3600
517 bufferSecs = 5
518
519 [input]
520 device = /dev/dsp
521 sampleRate = 22050
522 bitsPerSample = 16
523 channel = 2
524
525 [icecast-0]
526 sampleRate = 22050
527 channel = 1
528 bitrateMode = abr
529 bitrate = 96
530 lowpass = 10500
531 server = yp.your-ice-server.com
532 port = 8000
533 password = ice-hackme
534 mountPoint = live96
535 name = DarkIce trial
536 description = This is only a trial
537 url = http://www.yourserver.com
538 genre = live
539 public = yes
540 remoteDumpFile = /tmp/live96.mp3
541
542 [shoutcast-0]
543 bitrateMode = cbr
544 bitrate = 128
545 quality = 0.8
546 server = yp.your-shout-server.com
547 port = 8001
548 password = shout-hackme
549 name = DarkIce trial
550 url = http://www.yourserver.com
551 genre = live
552 public = yes
553 irc = irc.yourserver.com
554 aim = aim here
555 icq = I see you too
556
557
558
560 Lots of bugs.
561
562
563
565 darkice(1)
566
567
568
570 Akos Maroy <darkeye@tyrell.hu>
571
572
573
575 Project homepage: http://darkice.tyrell.hu/
576
577 IceCast homepage: http://www.icecast.org/
578
579 ShoutCast homepage: http://www.shoutcast.com/
580
581 Lame homepage: http://www.mp3dev.org/mp3/
582
583 Ogg Vorbis homepage: http://www.xiph.org/ogg/vorbis/
584
585
586
587DarkIce February 25, 2007 darkice.cfg(5)