Hack 26 Running Your Own Web Radio Station

figs/expert.giffigs/hack26.gif

Create private playlists you can stream 24/7 to almost any web-enabled device, inside or outside the home.

If you've been paying attention to what's happened with the deregulation of the airwaves, you may have noticed that most of the dial is owned by a few media conglomerates that control most of what you hear. Many of us turned to the Internet to find a tasteful alternative to all of the FM noise. And while the future of webcasting is currently tied up in the muck of figuring out fair music licensing fees, there is no doubt in my mind that the Internet is the last bastion for music.

If the idea of having your own radio webcast, for fun or profit, intrigues you, then you've come to the right place. Even if you don't plan on sharing your musical tastes with the world, you can have a lot of fun creating private playlists you can stream 24/7 to almost any web device in your home. Or maybe you just want to be able to tune into your music anywhere, anytime, on any machine. Well, guess what? You've probably got most of what you'll need sitting on your home machine. Moreover, setting up your own station is easy to do and costs nothing to get running.

What you'll need:

  • A DSL or cable connection

  • Music (MP3)

  • QuickTime Streaming Server (free from Apple's web site)

  • Promo music and microphone

  • iMovie

  • iTunes

26.1 Step 1: Calculate Bandwidth

The first thing you need to do is calculate the adequate server bandwidth for your station. If you figure to provide your stream at the same rate to all visitors, the basic calculation for this (via Apple's Knowledge Base) is to multiply the maximum number of users you expect by the bit rate you plan to stream. So, for your own private use, if you plan on serving up to three connections at 128 kbps over the Internet, you need an upload connection speed greater than 384 kbps to keep a stutter-free connection. If you plan to run your station over a LAN connection (streaming playlists to multiple terminals in your home), you could probably sustain as many as 50 to 60 connections on a 10Mbps network (not taking network traffic into consideration). As you can see, if you plan on running a commercial or nonprofit station for the public, you'll need a fat pipe.

A DSL or cable connection isn't fast enough to support a lot of visitors, but it is usually adequate for serving your personal use. Before you start streaming, be sure that it doesn't violate the service agreement with your ISP.

26.2 Step 2: Install/Configure QuickTime Streaming Server

The next thing you need to do is download the QT Streaming Server (QTSS) from Apple's site (http://www.apple.com/quicktime/products/qtss/) and install it. Once the install is complete, you'll find the installer placed an icon in your Applications folder that looks like Figure 3-30.

Figure 3-30. Apple's QTSS icon
figs/xh_0330.gif

Since the server can be configured and controlled through a web browser, this icon will always take you there. Go ahead and configure the server for the first time with the defaults in place. You may need to make some adjustment based on your own network settings or personal preferences. Figures Figure 3-31, Figure 3-32, and Figure 3-33 show various settings being changed in the Setup Assistant.

Figure 3-31. Your admin username and password
figs/xh_0331.gif
Figure 3-32. Setting an administrator password
figs/xh_0332.gif
Figure 3-33. For most people, a SSL connection won't be necessary
figs/xh_0333.gif

The QTSS requires that you use one folder as the main source of your media. Most people use iTunes and the music is located in the Music folder. You may wish to change the default location, because moving all your media (as shown in Figure 3-34) isn't practical. The path to your iTunes folder should resemble this: /Users/yourusername/Music/iTunes/iTunes Music. Figure 3-35 shows a setting that could interfere with Apache or other web servers running on your machine.

Figure 3-34. The location of your music files
figs/xh_0334.gif
Figure 3-35. A setting that could interfere with Apache or other web servers running on your machine
figs/xh_0335.gif

26.3 Step 3: Create a Promotional Spot

Depending on the level of professional spit and polish you want on your station, you may want to put together a promo spot to let people know who you are. There is a really simple way to pull this off using some royalty-free iMovie music, a microphone, and iMovie.

You can use some of the free music Apple provides in your iDisk, but of course you must have a .Mac subscription for that. If you don't belong to .Mac, all you really need is a short piece of music in MP3 format, or you can skip the music portion of your spot completely.

Open iMovie and import your music clip, then head over to the Audio tab of iMovie (shown in Figure 3-36) and record the vocals of your promo spot. Since I don't have any call letters, I settled for, "You're listening to O'Reilly Radio."

Figure 3-36. You'll find the record button in the Audio tab
figs/xh_0336.gif

Drag the music clip into one of the music tracks down below. Your vocal spot should already be waiting for you. Then just move the two tracks so that they fit together in a manner that sounds good to you (see Figure 3-37).

Figure 3-37. Fitting the audio tracks together
figs/xh_0337.gif

Once you're done editing your audio track, export the movie as QuickTime. We need to make some changes to our file as we export it. When you choose to export the file as QuickTime, you'll get an option to alter the format. Select the Expert setting in this menu (see Figure 3-38).

Figure 3-38. Select Expert
figs/xh_0338.gif

Now click Prepare for Internet Quicktime Streaming Server (see Figure 3-39).

Figure 3-39. Prepare for Internet . . .
figs/xh_0339.gif

Finally, change the compression settings to MPEG-4 and export (see Figure 3-40).

Figure 3-40. Exporting as MPEG-4
figs/xh_0340.gif

You now need to convert the movie file from MPEG-4 to MP3 before you can use it with the other music files. This is very easy. First open iTunes and drag the file into your library (see Figure 3-41).

Figure 3-41. Time to edit the promo song information
figs/xh_0341.gif

The next step is to edit the promo spot song information, so that when you convert this file to MP3, it will automatically create a promo folder where we can collect future files. Simply highlight the file and select File Get Info. At the top of the window, type a title for this spot, like Promo Spot 1. Under Artist, type something like My Promotional Spots. In the Album field, name it Promo Spots, and now you have a folder in which to place all future promo files.

To convert the file to MP3, highlight it and select Advanced Convert Selection to MP3. Now you can delete the old file from the library and move on to getting your station up and running.

26.4 Step 4: QTSS General Settings

Open the server and jump on over to General Settings. Here we want to double-check that our media directory matches our iTunes folder. You can set your maximum number of connections and your maximum throughput. Remember to calculate your required bandwidth. When your traffic exceeds the maximum throughput, the server will not allow any more connections. If you want to run the server 24/7, check "Start Server at System Startup," as shown in Figure 3-42.

Figure 3-42. QTSS General Settings
figs/xh_0342.gif

26.5 Step 5: Build a Playlist

You can create playlists using most text editors, but most people will find it easier to create a playlist through the server's web interface. Our main QTSS screen looks like Figure 3-42.

Jump to the Playlists link to the left. At the Playlists screen, click on the button to create a new MP3 playlist, as shown in Figure 3-43.

Figure 3-43. Playlist
figs/xh_0343.gif

Creating the actual playlist (see Figure 3-44) is quite simple, although there are a few quirks:

Figure 3-44. Creating the playlist
figs/xh_0344.gif
Name

Enter the name of your station: whatever name you enter here will be displayed in the client's music player.

Mount Point

Part of the URL location that your users will use to tune into your station. By entering different mount points for different playlists, you could run more than one active playlist for different genres and listeners could listen to different types of music.

Genre

Simply the genre of the music.

Play Mode

The order in which to play the media. You can specify the following options:

Sequential

Plays the media in the order they appear in the playlist. When the last file is done playing, the broadcast stops.

Sequential Looped

Streams media in the order it appears in the playlist file. When the last file is done, the playlist restarts in the same order.

Weighted Random

Streams media in random, using the specified weights to decide how often to play an item. The higher the weight number, the more the item is played. The media plays until you stop it.

Repetition

Sets the number of files that play before a file repeats.

Available Media

Select the tracks you want to appear in your playlist and drag them over to the Playlist column (labeled "6." in Figure 3-44) to the right. You can Shift-click items, but unfortunately you cannot figs/command.gif-click them. You can enter any folder in the media list by double-clicking. Also in this listing you will find the folder with your promo spots in it. After creating your playlist, drag and drop your promo spots wherever you wish for it to play.

Log this playlist's activity

Select if you want to keep a log of this playlists activity.

Save Changes

Save your settings and we're almost ready to tune in.

26.6 Step 6: Finish Up

You have a few small items to finish up before you are ready to go. First, go back to the main Playlists menu using the link to the left. Now, make sure that your QTSS is running by clicking the Start button in the upper-lefthand corner (see Figure 3-45).

Figure 3-45. The QTSS server is running
figs/xh_0345.gif

Next, you need to start the playlist. Click on the Play button in the Playlist window (see Figures Figure 3-46 and Figure 3-47).

Figure 3-46. Just press the button . . .
figs/xh_0346.gif
Figure 3-47. Notice the change in status . . .
figs/xh_0347.gif

26.7 Step 7: Tune In

We've installed our server, created our promos, configured our server, built our playlists, and started our server. Now it is time to test our station by tuning in.

Open up iTunes and select Advanced Open Stream (figs/command.gif-U). Enter your IP address or URL followed by the port number and finally the mount point. It should look something like 192.168.2.9:8000/oreilly (where the IP address or URL is your own). If everything goes well, you should hear some tunes blasting from your speakers.

26.8 Step 8: Administer Remotely

One handy feature of the QTSS is remote administration. You can make changes to the server or your playlist regardless of your location. Access the server by typing your IP address or URL and specifying port 1220.

26.9 Step 9: Getting Help

Apple has an extensive help file associated with QTSS. You can access it via the server's interface, but you can also find it here:

http://helpqt.apple.com/qtssWebAdminHelpR4/qtssWebAdmin.help/English.lproj/QTSSHelp.htm

There are tons of exciting things you can do with the QTSS and Mac OS X. Streaming can be a complicated task, but hopefully this will get you started.

?Alan Graham