How it works
Documentation
Hopefully I'll have a full description of how the Shoutcast icy protocol works, until then here's the skinny.
Streamripper first connects to the stream in question, this happens over TCP (not UDP). For Shoutcast-style streams it finds the "meta data" or track separation data (defined by a meta-interval), and uses that as a marker for where the track should be separated.
The data is buffered back about 10-30 seconds. When a track has changed, it goes back through its buffer, decodes the mp3 data in that buffer then looks for a silent point of the audio. It uses that silent point as a place to separate the tracks.
|