DoogPlayer (written in C):
- loads one file, spits out metadata and raw PCM data in chunks on stdout
- needs BASSMOD, mp3, ogg, wav
- could be replaced with a suitable command-line media player if it exists...
DoogRadio (written in Python):
- logs into shoutcast
- keeps track of the playlist
- creates temporary announcement wav files
- launches DoogPlayer with the music, jingle, or announcement file
- receives output from DoogPlayer in chunks which are passed to libshout
- listens for skip song/regen playlist/list playlist content/shutdown on HTTP
- needs libshout and cepstral
DoogAdmin (written in Python):
- listens on HTTP to provide nice web interface to DoogRadio