From: "andrew cooke" <andrew@...>
Date: Wed, 7 Jun 2006 12:45:28 -0400 (CLT)
Here's a quick summary of what I did to get the stream running at http://acooke.dyndns.org:9000/ - Rip CDs with KAudioCreator The more CD readers the better, preferably with everything on separate controllers. I had 3 readers - one on each IDE controller and one on USB, sending data to a couple of SCSI disks. - Encode to flac Lossless archival. Done by kAudioCreator, which helps keep things simple, but means that you can lose a lot of ripped data if the software crashes due to ripping problems. - Cross-encode to ogg (level 5) High quality for streaming. About 20% the size of flacs. Used vorbis tools wrapped in mt-encode (musictree scripts - http://www.acooke.org/jara/musictree/index.html) - Normalise volume in ogg files Used vorbisgain wrapped in mt-normalise. I think this adds metadata to files which is streamed through to the player (no re-encoding, see below). - Install/configure icecast server - Generate playlist I used fapg (http://royale.zerezo.com/fapg/) and then shuffled with mt-shuffle - Stream to server with ezstream This avoids re-encoding (which ices seems to always do). That's it. The script for starting the broadcast is: #!/bin/bash killall ices killall ezstream killall icecast echo "generating playlist" # find -L ~/projects/personal/ogg -name "*.ogg" | egrep -v "Dialogue" > /home/andrew/projects/personal/pkg/icecast/playlist fapg -r -o /home/andrew/projects/personal/pkg/icecast/playlist.m3u ~/projects/personal/ogg mt-shuffle /home/andrew/projects/personal/pkg/icecast/playlist.m3u echo "starting server" icecast -b -c /home/andrew/projects/personal/pkg/icecast/icecast.xml sleep 10 echo "streaming" #ices /home/andrew/projects/personal/pkg/icecast/ices.xml nohup ezstream -c /home/andrew/projects/personal/pkg/icecast/ezstream.xml > /home/andrew/log/icecast/ezstream.log 2>&1 &