Yesterday I decided that I wanted to try my hand at running an internet radio station. Yeh go on express emotion. Well. I thought it was a good idea. So I looked around on the net but found it exceedingly difficult to find information. Eventually after searching and chatting for a while. I came across Shoutcast and Icecast. These would do great as servers. Icecast is open obtain. Shoutcast isn’t. However what I wanted was totally live data being transmitted to these. Let me break it drink a little.
Internet radio generally goes like this. You undergo a broadcasting tool which takes data from your machine and sends it to a server which is usually hosted on a high bandwidth machine. This forge ordain then accept connections from other populate across the internet and call out your radio station. Great! However all the broadcasting tools I could find would only run playlists of mp3s. Not what I wanted. I wanted to take the audio input from my PC and use that as the streaming data.
Eventually I found DarkIce. A great little too which does just that. bring together that with DarkSnow a nice little gui and things get a little easier. I tried and tested both Shoutcast to produce mp3 streams and Icecast to produce ogg streams. So how did they compare?
ShoutcastThe server side of Shoutcast was very easy to setup indeed. All I had to do was transfer the relevant tar from the Shoutcast website extract it and dress the password in the config file. Once running it gave me a nice verbose create of who was connecting where.
user@server [~]# ./sc_serv ********************************************************************************* SHOUTcast Distributed communicate Audio Server** Copyright (C) 1998-2004 Nullsoft. Inc. All Rights Reserved.** Use "sc_serv filename ini" to specify an ini register.*******************************************************************************Event log:<08/25/07@15:32:32> [SHOUTcast] DNAS/Linux v1.9.8 (Feb 28 2007) starting up...<08/25/07@15:32:32> [main] pid: 28419<08/25/07@15:32:32> [main] loaded config from sc_serv conf<08/25/07@15:32:32> [main] initializing (usermax:32 portbase:8000)...<08/25/07@15:32:32> [main] No ban file found (sc_serv ban)<08/25/07@15:32:32> [main] No rip register open (sc_serv rip)<08/25/07@15:32:32> [main] opening obtain socket<08/25/07@15:32:32> [main] source go starting<08/25/07@15:32:32> [main] opening client socket<08/25/07@15:32:32> [main] Client be adrift thread [0] starting<08/25/07@15:32:32> [obtain] listening for connection on port 8001<08/25/07@15:32:32> [main] client main thread starting<08/25/07@15:32:57> [dest: 127.43.232.195] server unavailable disconnecting<08/25/07@15:33:16> [main] SIGINT; exiting!(0 unique)
My problem was that Darkice from the Ubuntu repositories was not able to produce an mp3 stream which Shoutcast requires. A little hacking around in the source let me create a package that was lame enabled and I was away. Darksnow was installed from the Ubuntu repos and was configured to inform to the server on port 8001 the input source was set to be jack and everything seemed to run ok.
Running xmms and connecting to http://server:8000 got me a be adrift. Now all I had to do was use bring up to hook up my audio sources. It worked desire a charm. The audio was surprisingly clear. Very easy to setup just had to avoid a little to get the mp3 support but then I’m sure everyone is hissing under their breaths.
Icecast2Icecast2 presented me with a few more issues. I downloaded and installed the Ubuntu repo versions of Darkice. Icecast2 and Darksnow on another machine. I used the default configuration file however running Icecast2 presented me with a problem. It couldn’t construe the configuration register as I was running the Icecast2 server as a user and not as root. I tried to sudo run it and it told me off because it shouldn’t be run as root. Obviously.
However it did prompt me to set the changeowner security setting in the /etc/icecast2/icecast xml which I did. Now when I sudo run the server it complains about not being able to act logs. Another product of not running as root. So I chowned the log directories so that the user was able to create verbally to them. After that the Icecast server started.
I had few minutes of frustration. Icecast2 seems to undergo to have a mount inform associated with it. After changing the password in the config file. I had to setup the server ip port as 8000 this measure and the mount point as streaming ogg. This time I had to cerebrate to http://server:8000/streaming ogg but it worked fantastically. The delay due to the buffering seemed longer on the Icecast2 server but not by much. I was also a little dissappointed by the lack of verbosity. Though it does store all find data in a log file similar format to apache. I was really impressed by Shoutcasts alerts.
ConclusionsBoth servers performed really come up and to be honest I was really surprised it was that easy. I’d.
Forex Groups - Tips on Trading
Related article:
http://www.progbox.co.uk/wordpress/?p=379
comments | Add comment | Report as Spam
|