chiark / gitweb /
Install disorderd under launchd in Mac OS X.
[disorder] / README.streams
... / ...
CommitLineData
1DisOrder and Republishing Internet Streams
2==========================================
3
4DisOrder doesn't have any built-in support for playing streams but you can make
5it do so. I use the following in my configuration file:
6
7 player /export/radio/*.oggradio shell 'xargs ogg123 -q < "$TRACK"'
8 collection fs iso-8859-1 /export/radio
9
10After setting this up you'll need to re-read the config file and provoke a
11rescan:
12
13 disorder reconfigure rescan /export/radio
14
15/export/radio contains a file for each stream, containing the URL to use:
16
17 lyonesse$ cat /export/radio/CUR1350.oggradio
18 http://cur.chu.cam.ac.uk:8000/cur.ogg
19
20You'll probably want to prevent random play of streams:
21
22 disorder set /export/radio/CUR1350.oggradio pick_at_random 0
23
24You can then queue a stream like any other track. It won't automatically
25interrupt the playing track, you have to scratch it manually. Go back to
26normal play by scratching the stream.
27
28
29Creating A Stream Of DisOrder Output
30====================================
31
32This can be achieved using the speaker_command option and Icecast (see
33http://www.icecast.org/). It will only work if you use the speaker process,
34i.e. execraw for everything.
35
36I used:
37
38 speaker_command "ices2 /etc/disorder/ices.xml"
39
40where ices.xml is:
41
42 <?xml version="1.0"?>
43 <ices>
44 <background>0</background>
45 <logpath>/var/log/ices</logpath>
46 <logfile>disorder.log</logfile>
47 <loglevel>4</loglevel>
48 <consolelog>0</consolelog>
49 <stream>
50 <metadata>
51 <name>lyonesse</name>
52 <genre>Various</genre>
53 <description>lyonesse disorder output</description>
54 </metadata>
55 <input>
56 <module>stdinpcm</module>
57 <param name="rate">44100</param>
58 <param name="channels">2</param>
59 <param name="metadata">1</param>
60 <param name="metadatafilename">/var/disorder/icedata</param>
61 </input>
62 <instance>
63 <hostname>lyonesse.anjou.terraraq.org.uk</hostname>
64 <port>8000</port>
65 <password>SOURCE PASSWORD HERE</password>
66 <mount>/disorder.ogg</mount>
67 <reconnectdelay>2</reconnectdelay>
68 <reconnectattempts>5</reconnectattempts>
69 <maxqueuelength>80</maxqueuelength>
70 <encode>
71 <nominal-bitrate>64000</nominal-bitrate>
72 <samplerate>44100</samplerate>
73 <channels>2</channels>
74 <flush-samples>8820</flush-samples>
75 </encode>
76 </instance>
77
78 </stream>
79 </ices>
80
81This doesn't seem to get on very well with pausing but you're unlikely to want
82to pause a stream in any case. I used IceCast 2.3.1 and Ices 2.0.1. You can
83play the stream with XMMS or whatever. The total setup seems to play rather
84behind the 'current' time, watch this space for a fix (or contribute one!)
85
86Other DisOrder options you can set are sox_generation which you should set to
87if you have a sufficently recent version of sox, due to an incompatile change
88in its command syntax; and sample_format which determines what format is
89supplied to the speaker_command. See disorder_config(5) for further
90information.
91
92
93Local Variables:
94mode:text
95fill-column:79
96End: