Radio station prototype on Debian

Ryan Weal

July 23, 2006

Dreaming in Linux. Just prior to making the switch from the Macintosh to Linux as my primary operating system you could find me in the Sonic Research Studio editing tapes and doing other fun stuff with audio. This had been going on for a couple years during my time spent in the Communication School at SFU.

After spending countless hours copying files back and forth from disks to tapes and back again I started to think there could be a better way of doing all of this. Networking has advanced a lot since sound research has been going on, but distribution has been lacking. I'm sure something could be said about the RIAA and it's tactics but let's leave that one alone for now.

Differing approaches to online media distribution

Currently sound is delivered to users through a number of methods. One methodology is through file transfer, where users connect either by http, ftp, or p2p networks to exchange files with one another. Instant messaging works similarly by acting as a p2p framework where users can send files right off the desktop without having to "repackage" the media into different forms. Since it is just a copy little new creative work is put into the transfer.

The other emerging framework is that of push technology, the technology buzzword of yesteryear. In this camp you have two common offerings: streaming media and podcast-style downloadable shows. Both of these share a common thread in that they require some kind of "programming" (not in the technical sense) to go on prior to the music being put into production. This usually involves some kind of radio announcer and/or DJ to coordinate the pieces that make up the "show". These technologies cross the line into composition where much more creativity is possible.

Configuration steps required to get running

Having a personal webserver at my disposal I decided to make an attempt at constructing my very own Internet radio station. Over the course of an evening I was able to setup a prototype site, streaming some media over my home network to my Linux laptop without ever copying a single file. The most important thing I learned was the division of responsibility for the programs that run the station. You need to run something like a web server, which is fed the streams by a streaming server (there are a few out there), and finally you need some kind of playlist-generating script to load up the content.

After the initial configuration was setup I had a chance to review my work. The low bitrates were a little disappointing at first, and the sound quality cannot compare to an original file since the compression takes a lot of the fun away. What really excited me about this setup is that with LiveIce I was able to perform some light mixing tasks as the files are being encoded. The two-channel mixer has speed, volume and source file commands that will excite any novice that is new to mixing. When I'm done playing with this program I will likely switch to "shout", a streaming program that I hear may have some additional options for playlist controls.

Looking for more information on how to setup your own server? Be sure to check out the MP3 Howto for a general overview of the configuration steps.