About Icecast, what is it?
An Icecast (http://www.icecast.org) server is capable of streaming content as Vorbis over standard HTTP, Theora over HTTP, MP3 over the protocol used by SHOUTcast, AAC, and NSV over the SHOUTcast protocol. Thus, installing an icecast server enables one to broadcast audio and/or video streams on the internet.
The Icecast server actually distributes your streaming content on the worldwideweb. It does not create the streaming content (or soucre audio or video) itself. For the latter purpose Icecast uses external programs, so-called "source clients", to originate the streams, e.g. the Icecast project includes a source client program known as IceS. Another example of a source client is IDJC (see below).
The source runs typically in the place where the audio is generated (e. g. a studio) and the Icecast server in a place where a lot of bandwidth is available (e. g., a colocation). However as a Pardus Linux user one can easily setup an Icecast server at home, just like other servers such as the Apache webserver. In case a lot of upload bandwidth is available at home (e.g. glass-fiber internet connection) multiple listeners can listen to your broadcasted stream by visiting your home based Icecast server using standard media players. Alternatively, when upload bandwidth capacity is limited, one can choose to distribute the icecast stream (still hosted on your private PC) to a broader audience via p2p solutions, in which a listener sends the signal forward to other listeners and maximum number of simultaneous listeners is theoretically unlimited. The disadvantage is that listeners then have to download and install a p2p software package to be able to listen to your stream.
The maximum capacity of your private Icecast server in terms of simultaneuos listeners depends on the upload bandwith of your internetc onnection and the quality of your broadcasted stream (bitrate), a higher quality of your stream consumes more of your availeble bandwidth. There are calculation examples on the web if you Google for this. Roughly the upload bandwidth needs to be at least number of listeners (N) * stream bitrate (Kbps), there is protocol overhead on top of that (say 10% to be safe). For example, an aaverage ADSL internet connection (with limited upload capacity as compared to download capacity) will enable a maximum of only 10 to 15 simultaneous listeners when you broadcast audio with normal quality (say 64 Kbps) if the ADSL upload bandwidth is about 1 MB/s. Remember that the upload capacity on the server side (this is your side) is the downlaod/downstream capacity on the listeners side. The more listeners that extract your audio stream from your server, the less upload bandwith from your side of view remains!
Icecast has similar functionality to the proprietary media server program SHOUTcast, by Nullsoft.
Installing the Icecast streaming server in Pardus Linux
The installation of an Icecast streaming server in your Pardus Linux system is made very easy since it has been packaged as a PISI package upon request by a Pardus user (yes that was me). All it takes is installing the icecast pisi package from the Package Manager graphical user interface or if you prefer from the command-line just like installing any other pisi package.
When all goes right the system will -if necessary- also update the baselayout pisi package that is by default already installed in your Pardus system. (If your system lacks a version of baselayout that is recent enough it will prompt you to install it when you try to run Icecast). The updated baselayout pisi package takes care of adding a group and user for the Icecast service that is to be implemented in your Pardus system.
You can download the needed pisi packages from within the Package Manager or here:
Using Icecast, how to start streaming?
Although icecast can be started from the command-line in the Konsole (e.g. with service icecast start/stop) it is easier and reccommended to start and stop your freshly installed Icecast streaming server by means of TASMA, the graphical user interface for configuring your Pardus system.
Upon installation icecast can be used as a service that can be turned on and off. An entry for Icecast will have appeared in Tasma > Service Manager. Here you can start or stop the service and configure whether this service should be started upon booting your Pardus system or not.
However you are not really on air yet once you have started the service.
You will have to provide the Icecast server with content, i.e. a stream to be broadcasted by the service. Once your source-client starts to send data to the Icecast server, it will start broadcasting, and now you are on air! You can check this by opening your webbrowser and entering the following URL in the address-bar: http://localhost:8000 (alternatively instead of localhost, 127.0.0.1 can often be used) See the next section for more on source clients.
Icecast source-clients available in the Pardus repositories
Currently the Icecast source-clients Darkice, Muse and IDJC (recommended) are available as pisi packages in the Pardus repositories. Other source-clients like Ices may be installed from source if you like.
http://web.bethere.co.uk/idjc/), is a graphical shoutcast and icecast client that runs under GTK+ and the JACK audio connection kit. In short, it's an Internet radio application for making a live radio show.
Main features: two main media players with a crossfader, microphone signal processing, IRC track announcements with X-Chat, automatic stream shut-off timer, MP3 or Ogg streaming at various bit rates, record your live show for playback afterwards, optional Skype integration.
IDJC can easily be installed using the IDJC pisi package available in the repositories. From within the preferences window of IDJC you can specify your locally installed icecast server as address to send your radio-stream to for broadcasting.
--Michiel 23:59, 24 March 2009 (EET)