[Icecast-dev] hi

Michael Smith msmith at xiph.org
Sun Nov 28 20:17:55 PST 2004

On Monday 29 November 2004 15:09, chetan dubey wrote:
> Dear All,
> Hii, I am student working on a project called Network Radio modelled on the
> icecast project. Could u plz give me the design of Icecast project>>so that
> i can model my project accordingly viz by threads or sockets??

Broadly, icecast runs as a set of threads: one waits for incoming socket 
connections, and passes each connection off immediately to a thread from a 
connection thread pool. That thread then deals with the individual connection 
- sometimes directly, and sometimes passing off to another thread.

Each stream runs within a single thread - it handles incoming data, and 
writing it (using non-blocking sockets) to many listeners. The incoming 
connections for listeners are passed to the appropriate source handler thread 
(after that thread has dealt with connection issues, like password 
authentication, etc.), which then solely deals with them.

If you have more specific questions about the design of individual parts of 
icecast, we can probably help you with them.

> Plzz help me.
> Also could u telll me where i can get the source code for icecast in c++ or
> java.

Since icecast is not written in C++ or Java, such source code doesn't exist. 
Icecast is written in C, and the source can be downloaded from 


More information about the Icecast-dev mailing list