Manual

How to use this manual

This manual covers the basics of internet radio, as well as many specific recommendations for getting a radio station online. Before using the Key to Internet Radio wizard, we recommend making sure you are familiar with everything in sections 1 through 5 of the manual.

The rest of the manual covers details on different options for computers, software, servers, etc. Unless you have an overwhelming curiosity about everything streaming-related, there's no need to read all of this. We recommend using the Wizard to narrow down your options, and then returning to specific sections of the manual for details on the options that are most viable for you.

Note: When describing specific options, we use the following icons as a shorthand:

Cost
Amount of work required
Amount of technical expertise required

For example, a minimal or no cost option has no dollar sign, a medium cost option has , and a high-cost option has .

Table of Contents

Next: , Table of contents

1 What is streaming?

Internet streaming, also known as webcasting, is a method of sending content across a network. If you stream a music file from your computer to a friend's computer, your friend can listen to the music as it's being downloaded.

Streaming is different from podcasting, in which your friend would download an entire file and then play back the file from their computer's hard drive. In streaming, your friend only ever stores a short bit of music on their computer at a time. You can think of the difference between streaming and podcasting like you would the difference between a shower (where the water washes over you and then goes down the drain) and a bath (where you collect all the water at the beginning and keep it in the tub for as long as you want).

Streaming is not just for music. You can stream audio, video, or any other type of content. YouTube and Hulu are both popular video services that stream. However, this manual will focus specifically on audio streaming because that's the most common type of streaming used by radio stations. Most radio stations that stream offer a "Live Stream". The station streams the same audio that is going out on the air, and listeners can hear it in almost real time. It's also possible to offer archived programming or additional content for "on-demand" streaming. There are some specific laws about what content you can play in an on-demand stream, so if you decide to stream on demand, be sure to check out the "Digital Millennium Copyright Act" section below.

Previous: What is streaming?, Next: , Table of contents

2 Why stream?

Streaming is a great way to reach people outside of your on-air broadcast range. It's also a good way to reach people who get most of their media through computers or mobile devices, which often offer internet connections but can't receive FM radio. While an on-air broadcast (generally) restricts you to sending a single signal at a time, you can provide as many streams as you like (given enough bandwidth) with widely varying content. This may be a good option for getting new people involved at a station if you have more programmers than you can fit into a single schedule.

There are also fewer start-up costs associated with streaming than with FM broadcasting. If you're working to start a on-air station but don't have the money yet to buy all of your transmission equipment, you may consider building a studio and setting up a webstream in the meantime. This will give you a chance to train programmers and start raising awareness and money over the internet before you launch your on-air broadcast.

Previous: Why stream?, Next: , Table of contents

3 Limitations of streaming

While streaming provides some great opportunities, it also comes with some serious limitations. To keep an FM station on the air, the only ongoing cost (aside from things like rent and maintenance) is power. Power costs are the same no matter how many listeners tune in. For a streaming station, you'll need access to the internet, which generally requires paying an internet service provider (ISP) and/or a hosting service. The more people who listen to your stream, the more bandwidth you'll need to pay for. This means that it's harder to support a growing audience with a webstream than with an on-air broadcast.

Additionally, a lot of people in the US, especially in rural areas, still don't have access to the internet. In 2009, 21% of adults in the US didn't have internet access in their homes, and another 7% only had dial-up access (which means only being able to receiver lower-quality streams). [http://www.pewinternet.org/~/media//Files/Reports/2009/Home-Broadband-Adoption-2009.pdf]

This certainly doesn't mean it's not worth streaming. It simply means we want to encourage you to think closely about the needs of your community and consider a webstream as a supplement to an on-air broadcast rather than a replacement for it.

Previous: Limitations of streaming, Next: , Table of contents

4 What you need to stream

Streaming audio chain diagram
A sample streaming set-up.

In a typical internet radio station, an audio source produces an analog electronic representation of sound. A stream encoder converts the analog sound into a digital format and breaks it up into smaller chunks, which are streamed to a streaming server. The streaming server sends out the same audio stream to listening devices such as computers and smart phones.

To get an idea of possibilities, the following two sample configurations are in at the ends of a spectrum of cost and ease. The Wizard is designed to help you find a configuration which is right for your situation.

4.1 Sample configuration - easy and costly

You can find more information about the elements of this configuration in later sections of this manual. This might be a possibility for stations who:
  • don't want to acquire or manage streaming expertise themselves
  • want to avoid worrying about the complexities of licensing royalties
  • want minimal interaction with the equipment once it is set up

Initial Cost Monthly Cost
Encoder Barix Instreamer $395 0
Streaming Live365 Intro royalty-included package (*) (setup fee) $199 (one 96k stream) $136.50
Total $594 (**) $136.50
(*) Covers up to 500 listener hours per month.
(**) This assumes you cover costs of cabling and initial set-up for the Barix box, and that additional internet bandwidth is not required.

4.2 Sample configuration - do-it-yourself, cheaper

You can find more information about the elements of this configuration in later sections of this manual. This might be a possibility for stations who:
  • are interested in technical self sufficiency
  • are willing to learn or manage expertise in Linux and computers
  • need the cheapest solution

Initial Cost Monthly Cost
Encoder Ices for Linux $0 $0
Encoding Computer PC-compatible less than 10 years old (donation) $0 $0
Encoding Operating System Ubuntu Linux Software $0 $0
Streaming Dreamhost entry-level VPS (**) $0 $15
Streaming Software icecast $0 $0
Licensing/Royalties Paid to individual PROs $0 $111 (***)
Total $0 (*) $126
(*) This assumes you cover costs of cabling and initial set-up for everything, and that additional internet bandwidth is not required.
(**) Dreamhost claims unlimited bandwidth for this price, which seems too good to be true. You could simultaneously run a station web site on the same machine.
(***) Covers about 14,000 listener hours per month. There are several other options for paying royalties, including in the extreme avoiding any copyrighted content. See the licensing section for more.
Previous: What you need to stream, Next: , Table of contents

5 Legal concerns

Any time you stream content that someone else created, you need to consider the legal ramifications. Most music and other content that you come across is likely to be copyrighted. In order to legally play copyrighted content on your internet radio station, you have to pay licensing fees to the composer or performer. There are a few organizations that collect these fees from broadcasters and distribute some of the money to composers and performers. In the US, the main Performing Rights Organizations (P.R.O.s) that collect royalties for compositions are BMI, ASCAP, and SESAC. Sound Exchange is another P.R.O. that licenses performances rather than compositions.

If you only play content that is not copyrighted, such as content covered by a Creative Commons license or content for which the copyright has expired, then you don't need to pay royalties to a P.R.O. However, it is illegal to play even one copyrighted song without paying royalties. Most broadcasters pay for "blanket" licenses from all four P.R.O.s to ensure that anything they play is covered. If you paying licensing fees for an on-air broadcast, those fees may not cover your webstream. See Licensing recommendations for more details.

In addition to licensing fees, the Digital Millennium Copyright Act of 1998 (DMCA) imposes some specific rules on what material you can stream. In a 3-hour period, you can play no more than:

  • 3 songs from a single album
  • 2 consecutive songs from a single album
  • 4 songs from a single boxed set
  • 3 consecutive songs from a single boxed set
  • 4 recorded songs by the same artist
The DMCA also says that any looped programs must be at least 3 hours long, and any publicly accessible archives must be at least 5 hours long and be removed within 2 weeks.

The DMCA requirements apply to internet radio, but not to FM radio. If you're hoping to start a stream that mirrors your on-air programming, but some of your on-air shows don't follow the DMCA rules, you may want to automate your stream encoder so it only streams the programs that can legally be streamed.

Previous: Legal concerns, Next: , Table of contents

6 Audio source recommendations

The audio source is the sound you want to play on your internet radio station. This could come from a microphone, a CD player, or just about anything else that can represent sound as an electrical waveform. Typically the audio is sent to the streaming encoder through an 1/8" cable that plugs into a "line in" port on a computer. The computer's sound card then converts the analog audio signal into a digital signal that can be encoded and streamed.

This manual assumes that you already have an audio source set up. If you are an FM radio station and you have an "on air" studio in use, then your streaming source will likely be an output from your console. If you don't have a full-fledged studio, you could start streaming with something as simple as a playlist of pre-recorded MP3 files on a computer- see the Handbook on Radio Automation for more details. However, we recommend starting non-automated programming as soon as possible to ensure that your station is engaging the programmers and listeners. If you'd like more information on setting up a studio, see our Studio Info page.

It's best to stream audio that has been gently processed. When a computer converts analog audio to digital audio, it clips any levels that are higher than the maximum level it can represent. This causes distortion, which sounds nasty. By processing the audio before the analog-to-digital conversion, you can limit the levels in a way that sounds less distorted. (See our notes on Audio Processing and Compressors for a more thorough discussion of audio processing.)

For your webstream, we recommend using an audio processor with a threshold set just below your sound card's clip point. You can find this point by playing a sample through the processor, feeding it to your computer's sound card, and recording it. Look at the resulting digital audio sample in a program that shows you the resulting digital waveform, and increase the limiting on your audio processor until you can no longer see that the sound card is clipping the audio. If you can't afford an audio processor yet, you can start streaming without one - just be sure to monitor your levels carefully, and listen to the audio that is streaming to make sure it's not being distorted.

Clipped audio
An audio file in which clipping has occurred. [http://www.danmccomb.com]

Unclipped audio
An audio file in which clipping has not occurred.[http://www.danmccomb.com]
Previous: Audio source recommendations, Next: , Table of contents

7 Computer recommendations

In order to transform your analog audio signal into a digital stream, you'll need a computer capable of running encoding software. We call this the encoding computer to differentiate it from the streaming computer. Typically the encoding computer is a desktop computer running Linux, Macintosh OS, or Windows, but there are also dedicated streaming encoders such as the Barix Instreamer. If the computer is only being used for streaming, then it doesn't need to be too fancy. You'll need a sound card and a network card for connecting to the internet. A higher quality sound card will produce a higher quality stream, so many people upgrade the sound card when using a vintage computer to stream, but old sound cards sometimes work very well, so try it first.

7.1 Linux  

Many computers can run the free, open source, and very capable Linux operating system. Linux comes in many different varieties, called distributions. We recommend Ubuntu Linux, a derivative of Debian Linux, on PC-compatible hardware for people who aren't already Linux gurus. With a donated computer, free operating system and no-cost open-source stream encoding software, Linux can be the basis for a zero-cost encoding solution. Linux has a slightly higher learning curve than Windows or Macintosh OS for people who aren't familiar with it, but is generally easier to debug for people who are familiar with it.

You can download Ubuntu Linux, purchase CDs or DVDs for installation, or install over the network. To try it out without affecting the existing software on a PC, and without installing any software, boot from a downloaded or purchased "live CD".

Ubuntu runs best on computers with at least a 1 GHz processor, 512 MB of RAM, and 5 GB of hard drive space. If you have an older computer that doesn't meet your requirements, you can try a more minimal distribution of Linux such as Damn Small Linux, but this will take a bit more set-up work. The instructions for Linux-compatible software in this manual may not work with distributions other than Ubuntu.

7.2 Windows  

Most PCs manufactured in the last 10 years are capable of encoding a stream in Windows. If you use a donated computer that already has Windows XP or newer installed, you can probably use the existing operating system without re-installing it. A firewall is a good idea, as is virus protection if the computer is ever used for anything other than encoding and sending the stream.

Streaming in Windows works best with at least a 1 GHz processor, 512 MB of RAM, and 15 GB of hard drive space, but you can get by with a 300 MHz processor, 64 MB of RAM, and a 2 GB hard drive.

7.3 Macintosh OS  

While new Macintosh computers can be cost-prohibitive for a lot of radio stations, donated Macs can work nicely. A Macintosh solution should have OS X 10.3 or higher and at least a 300 MHz processor, 512 MB of RAM, and 3 GB of hard drive space.

7.4 Barix Instreamer  

See section 9.5.

Previous: Computer recommendations, Next: , Table of contents

8 Streaming format recommendations

When your sound card converts analog audio to digital audio, it preserves as much information about the original analog signal as possible. The resulting digital signal has a high data rate (also called a "bit rate"), which means it would take a lot of bandwidth to stream it. A "CD quality" audio file has a data rate of 1.4 Mbps (that is, 1.4 million bits per second). To stream a 1.4 Mbps audio stream to 10 listeners, you'd need 14 Mbps of bandwidth. That's a lot of bandwidth for a small audience! What's more, users without high-speed internet connections won't be able to listen to a 1.4 Mbps stream. Webstreamers address this problem with software that compresses the audio before streaming it. Most CD quality audio can only be compressed to around 500 kbps (500 thousand bits per second) without losing data. However, you can make the signal a lot smaller without much loss in quality with a method called "perceptual coding". Perceptual coding involves eliminating some of the information in the audio stream that the brain doesn't pay attention to, while keeping the information that the brain notices. The resulting signal can be much smaller than the original signal, but to the listener sounds similar to the original signal. A signal encoded at 192 kbps using perceptual encoding is said to be comparable in quality to digital radio. 96 kbps is "FM quality", and 32 kbps is "AM quality". These comparisons are somewhat subjective because they compare digital signals to analog signals, which are fundamentally different, but they're based on tests with actual listeners who compare the two signals.

One task in setting up your webstream is to decide what data rate to stream. If you want dial-up users to receive your stream, you'll need to provide a low data rate stream. However, you may also want to set up a second copy of the stream at a higher rate for broadband users. We recommend using a 24 kbps stream for dial-up listeners and an additional 96 kbps stream if you can afford it. You'll also need to choose a format. There are a number of different algorithms for perceptual encoding, each of which results in a different file format. The AAC format is one of several not discussed below, which is not a reflection on its quality or utility.

8.1 MP3

The most ubiquitous streaming format these days is MP3, associated with files that have a ".mp3" extension. The MP3 standard was developed by the Motion Picture Experts Group (MPEG) and was first released in 1993. Unfortunately, there are a host of legal problems surrounding the MP3 format. Multiple organizations have patents on the MP3 standard, and they assert that it is illegal to create software that encodes or decodes MP3s without paying licensing fees. As a result, some audio encoders and players aren't compatible with MP3, and others that are may be infringing on patents.

8.2 Ogg Vorbis

Vorbis is a free and open source encoding standard created by the Xiph.Org Foundation. The Vorbis standard is most commonly used with the Ogg container format (associated with ".ogg" files), so the name Ogg Vorbis is used to refer to Ogg files that use Vorbis encoding. Ogg Vorbis is currently less widely used than MP3, but has recently been gaining in popularity. Most listeners prefer Vorbis encoding over MP3 at lower bitrates (that is, for files with more compression), but encoding quality is subjective and audiophiles don't all agree.

8.3 RealAudio

RealAudio is an encoding format developed by RealNetworks and released in 1995. RealAudio files currently use the extension ".ra", but have used ".rm" in the past. RealAudio is technically a proprietary format, but RealNetworks has released libraries that make it possible to develop alternative players for RealAudio files.
Previous: Streaming format recommendations, Next: , Table of contents

9 Encoding software recommendations

What is a mount point? A name which refers to your stream, used by your encoder, your streaming server, and also present in the web address used by listeners, is a mount point. Often a mount point requires a password, so that only encoders with the right password can broadcast through that mount point! For example if you call your mount point WABC-Live and your audio server is http://my.audio.server.com:8000, then the listener's URL will be http://my.audio.server.com:8000/WABC-Live

What is metadata? (or, what's playing now?) The data in your audio stream is the digital representation of your audio broadcast. The data about the data, or metadata, could be the current show name, which might come from a station automation system, or title/artist for music, which might come from either an automated music playing system, or from a DJ spinning CDs. Listeners normally see the metadata in their player software.

Each encoder has its own method(s) for connecting your metadata to your listeners, but there are generally two methods. The first method, which works with every encoder and every stream server except the ones by RealNetworks (who use different methods), is to use a special URL on the stream server. Think of it as filling out a web form on your stream server, automatically, with the title and artist or other information. Your stream provider should provide the URL for your stream, or if you run your own icecast server, the documentation gives the URL.

The second method is specific to each encoder, so you'll need to read about each one.

9.1 Ices  

Ices is free and open source live audio stream encoding software for Linux, supporting the Ogg Vorbis stream format. Since you'll generally be on your own installing Ices, here are more details (for Ubuntu Linux installation) than we give about the other encoders.

  1. Connect your audio source to your computer, and if you can, play test tones or other material good for setting audio levels.
  2. Select the "Input" tab of Sound Preferences (System->Preferences->Sound) and adjust for satisfactory levels and close the window. The levels you set will be preserved when the computer reboots.
  3. Try recording and playing a sample (Applications->Sound&Video->Sound-Recorder). Assuming that works...
  4. Install the "ices2" package using the method you prefer (synaptic, aptitude, apt-get, Applications->Software-Center).
  5. Start a terminal window and be sure you know how to use 'sudo', or log in as 'root'. The rest of these instructions use the terminal window.
  6. Copy the sample ALSA set-up file:
    sudo cp /usr/share/doc/ices2/examples/ices-alsa.xml /etc/ices2.xml
  7. Edit /etc/ices2.xml with a text editor.
    • Change background to 0 and consolelog to 1 for now -- it makes debugging easier.
    • In the input/alsa section, change the ALSA device from hw:0,0 to default; sample rate to 44100; channels 2
    • the metadata section can be left alone
    • customize the server-specific "instance" settings for your streaming server.
    • adjust the encoder and resample sections if you wish -- the stream can be tested without any changes to them most likely
    • save the file
  8. Start ices2 from the command line like this: sudo ices2 /etc/ices2.xml
  9. Read the messages carefully.
  10. Use an audio player to see if your stream is working and/or check your streaming server's statistics.
  11. You can stop ices2 with control-C
  12. repeat adjusting the configuration file and the steps above until your stream works
  13. Make final adjustments to the stream speed etc and set background to 1 and consolelog to 0.
  14. To make ices2 start automatically, create a text file /etc/ices2.conf which contains:
    XMLFILE=/etc/ices2.xml
  15. copy and activate the sample init file; create log directory:
    sudo cp /usr/share/doc/ices2/ices.init.example /etc/init.d/ices2
    sudo update-rc.d ices2 defaults
    sudo mkdir -p /var/log/ices
    Now you can use the Linux standard methods for starting and stopping ices2, namely sudo /etc/init.d/ices2 start, sudo /etc/init.d/ices2 stop, sudo /etc/init.d/ices2 restart, and it will automatically be started upon booting.
  16. try restarting your computer to see if the stream starts. Consult the ices2 log file (check /etc/ices2.xml for its name).

Metadata updates through ices are easy to accomplish, see the metadata and metadatafilename information in the ices2 documentation.

9.2 RealProducer  

RealProducer is audio stream encoding software created by RealNetworks which runs on Windows and Linux and is free to download and use. RealProducer only streams in the RealAudio format so you will need a broadcast stream server running compatible software from RealNetworks, or a compatible stream broadcaster such as Streamguys.
set-up instructions

9.3 Nicecast  

Nicecast is audio stream encoding software for Macintosh from Rogue Amoeba. The free download works for 60 minutes at a time, and a full-time license costs US$40. Nicecast streams both Ogg and MP3. The Nicecast-specific metadata method is in this Live365 documentation.

9.4 Simplecast  

Simplecast is audio stream encoding software from SpacialAudio which runs on Windows. You can download a 14-day free trial copy or purchase for US$199. Streams in both Ogg and MP3.
set-up instructions The Simplecast-specific metadata method is in this Live365 documentation or for a lot more detail, see the Simplecast documentation.

9.5 Barix Instreamer  

The Barix Instreamer is a dedicated audio encoder, containing everything needed to convert an analog audio input to a digital stream and send that stream over the network. The Instreamer is an especially reliable streaming encoder because it doesn't run non-streaming programs that can interfere with the encoding.

Made by Barix, the Instreamer is sold through several partners including StreamGuys who resell it for US$395 and offer this set-up video. The Barix can stream via any of the servers mentioned below except RealNetworks, and doesn't appear to support Ogg.

Previous: Encoding software recommendations, Next: , Table of contents

10 Streaming server recommendations

10.1 Icecast  

Icecast is audio stream broadcasting software which is free and open source and runs on Linux. It can broadcast both MP3 and Ogg streams.

For Ubuntu Linux, install the package "icecast2", then follow instructions in /etc/default/icecast2 or consider this more thorough set of instructions (ignore the parts about "ices2" if you use a different encoder).

Deeper documentation is available from icecast.org and in the example set-up files shipped in the folder /usr/share/doc/icecast2.

Tip! only use letters and numbers in your icecast2 passwords.

Tip! locate and monitor the icecast2 error and access log files (usually located in /var/log/icecast2) until you get things working, especially to see if passwords are working.

Depending on how you handle royalties, you may need listener statistics, for example TLH (Total Listener Hours). If you are running your own icecast server, the two methods used are to analyze the server log files with software, or to constantly poll your icecast server for user statistics for later analysis. These methods are beyond the scope of this manual.

10.1.1 giss.tv
giss.tv, operated by G.I.S.S. (Global Independent Streaming Support), is a network that provides Icecast stream hosting free of cost for non-commercial media services. Their servers can reportedly handle upwards of 100 simultaneous users. However, the giss.tv Terms of Use specify that their services are only for media that is under copyleft or non-commercial copyright, or created by the person streaming.

If you meet the terms of use and want to use giss.tv to host your stream, you can register with them for a mountpoint.

The Flujos Collective put together an excellent tool called Flujos Vivos that allows users to stream from giss.tv servers using open source software on a Live CD that can run on nearly any computer with an Intel processor. The documentation is mainly written in Spanish, but there may be additional English language documentation in the near future. For more information, write to contacto@flujos.org.

10.2 RealNetworks  

The Helix Standard Server from RealNetworks is an industrial-strength audio/video streaming server compatible with RealAudio-format audio distribution. Thirty-day evaluation copies are available, and purchase costs are probably the highest of any alternative recommended here. If you are considering this option, contact RealNetworks to verify which Helix server is best for you, and be aware that they may be amenable to a discount for audio-only nonprofit radio station broadcasts.

Helix servers are available for both Windows and Linux and are very capable, which unfortunately means it can be difficult to set them up for simple tasks without technical support.

10.3 StreamGuys  

Streamguys.com who also own Streamalot.com (where you can find a lot of useful information and tutorials) are a full-service streaming provider who offer support for set-up, maintenance, and an assortment of different encoders to meet different needs. The encoder suggested by the wizard is only a suggestion.

To estimate the recurring monthly cost, use the calculator on their web site (Streaming Services -> Live Streaming) A good initial number of listeners for a single stream is 25, because that allows cost comparison with Live365's entry-level unlicensed single-stream package. If you are considering both a high-fidelity and low-fidelity stream, use their calculator twice, specifying 96k and 24k respectively for the stream speeds. Their calculator also allows you to preview future expansion costs. Basic set-up assistance and a month of technical support are free. Streamguys offers at 10% discount to radio stations that are members of NFCB.

Streamguys requires you to arrange the content licensing for your stream(s) on your own.

10.4 Live365  

Perhaps the best-known audio stream broadcaster, Live365 offers radio broadcast packages with and without royalties included. They also offer different kinds of visibility to help people find your stream, customized audio players, and even though they work with almost all the encoders described here, they also offer their own "free" encoder for Windows and Macintosh.

Live365's initial US$200 set-up fee (sometimes waived during specials) includes assistance for helping customers get started, so they are a good choice if you don't want to become streaming tech experts.

Live365 offers a 15% discount on monthly fees to NFCB member stations, as well as a 50% discount on the set-up fee.

10.5 Running your own server  

Key to Internet Radio may recommend running your own server, running either Windows and RealNetworks Helix server, or Linux and the free icecast server, with the server either located at your station, or somewhere else like at an internet service provider.

If you run a server at your station, you will need to have a fast-enough internet connection to service your listeners. If the server is located elsewhere, you may need to purchase additional bandwidth from your provider. This is how to estimate what is needed.

There are a large number of possible streaming speeds. We only discuss a low-fidelity monophonic stream (24k) and high-fidelity stereo (96k) and the principles will apply to other speeds.

A 24k stream means 24,000 bits per second of data, however the network protocols require a bit more, so a somewhat better value for estimation is 10% more, or 26,400 bits per second, and 96k plus 10% is 105.6k. To service 20 listeners at "96k", you'll need around 28*105.6k or 2112,000 bits per second, or 2.1 "megabits(m)" per second.

Part of your consideration for running your own on-site server is which internet connection upload speeds are available in your area and for what cost. A typical inexpensive DSL connection can send up to 256 kbps to the internet (upload speed), and you could probably broadcast to two "96k" listeners or 9 "24k" listeners if the link was otherwise unused.

Business-class cable internet may offer 3 mbps upload speed, which would service up to 28 listeners at 96k. As fiber optic connections become more common, such as FiOS, upload speeds of 7 mbps or more are becoming available at reasonable prices, which would service 66 listeners at 96k. If you need more speed than is available or affordable, the next step is to either use a provider like Streamguys or Live365, or to host your server in a location, like at your ISP, which has a lot of bandwidth available.

If you host your server at your ISP, or through a web hosting provider like Dreamhost or Linode, they usually can provide a lot of bandwidth, and the complexity is cost. Not unlike cell phone providers, each vendor has a different set of plans and costs for bandwidth. You can use your listener bandwidth estimates to help, and whether your server is on site or at a provider, you can set a maximum-allowed number of listeners which is a good idea with some bandwidth price structures.

Previous: Streaming server recommendations, Next: , Table of contents

11 Licensing recommendations

As mentioned in Legal concerns, if you stream any copyrighted content, you are legally required to pay royalties to the organizations that license the content. If you have plans to stream only content that is not copyrighted, congratulations! Otherwise, you'll probably need to make arrangements with the four Performing Rights Organizations (PROs) that handle the licensing for most of the content you'll come across: BMI, ASCAP, SESAC, and Sound Exchange. BMI, ASCAP, and SESAC license musical compositions. They all license music from a variety of genres, so it you play any licensed music, you'll probably need to pay all three. Sound Exchange licenses individual performances.

Most of the cost structures for these organizations are based on Total Listening Hours (TLH) or Aggregate Tuning Hours (ATH). You TLH or ATH is equal to the number of people listening to your stream multiplied by the number of hours they listen, totalled over a year. For example, if you had 50 people on average tuning into your stream for a year, your TLH would be (50 listening hours/hour)*(24 hours/day)*(365 days/year) = 438,000 listening hours. Some licensing agreements refer to "Sessions". Sessions are similar to total listening hours except that if a listener tunes in for under an hour, it still counts as a full session. You can calculate sessions by rounding up the number of hours someone listens - a 15 minute listening period is one session, and a four hour and 15 minute period is 5 sessions. If you haven't streamed before, it will probably be hard to estimate how many listeners you will have. We generally recommend that you start with the cheapest option available, and change your plan if you start approaching the listener limit.

11.1.1 BMI
BMI, short for Broadcast Music Incorporated, offers a Not-for-Profit Agreement for 501(c)(3) organizations. The price structure begins at $324/year and increases based on your TLH. You can sign up at BMI's Digital Licensing Center.
11.1.2 ASCAP
ASCAP, the American Society of Composers, Authors and Performers, has a minimum annual licensing fee of $288 for webstreams, which covers up to 480,000 sessions, or about 55 users per hour. You can sign up using ASCAP's Rate Calculator.
11.1.3 SESAC
SESAC, the Society of European Stage Actors & Composers, is the newest major Performing Rights Organization in the US. SESAC collects fees twice a year, with a minimum fee of $110 per 6 months covering up to 173,500 ATH (about 20 simultaneous listeners on average). SESAC has an Online Licensing Form.
11.1.4 Sound Exchange
Sound Exchange offers licensing for non-commercial streams at a minimum rate of $500/year. This covers up to 218 average listeners per hour. For any hours over that limit, Sound Exchange charges commercial hourly rates. To sign an agreement, fill out their Statement of Account and mail it to Sound Exchange.

11.2 Live365 Micro-Caster package

If you stream with Live365, you have the option of licensing your stream through one of their all-in-one packages. The Live365 Micro-Caster package covers BMI, ASCAP, and SESAC licensing for $38/month to Live365 users who have packages allowing up to 25 simultaneous listeners and generate no more than $500/month in revenue from the stream. This is a substantial discount over paying the PROs individually, and we recommend it for anyone using a qualifying Live365 package.
Previous: Licensing recommendations, Next: , Table of contents

12 Live remote broadcasts

Often called simply "remotes" by broadcasters, live remotes involve broadcasting (over radio and/or internet) audio which comes live from a location away from the studio. Commercial radio stations often set up live remotes at car dealerships or other businesses.

The simplest live remote is a telephone call to the studio which is then patched into the broadcast at the studio, and this is quite satisfactory for important events that would otherwise be missed entirely and some in-person reporting situations. If audio sources other than the person holding the phone are desired, a more serious "remote broadcast" set-up works better.

Cost-effective high-quality remote broadcasts can be accomplished with internet streaming, as long as your station has a connection faster than a telephone modem, with a much lower link cost than in the past where custom radios and/or modems were used.

The simplest equipment needed is a laptop computer connected to the internet. Many venues have wired or wireless (WiFi) these days. When that isn't available, a 4G wireless connection has sufficient speed, and a 3G wireless connection will conduct a highly-compressed stream (thus lower fidelity) at 24k or perhaps a little faster. A more typical equipment set-up adds a small audio (or USB) mixer, one or more microphones, and some adapter cables for patching the venue's PA systems into the mixer (probably the same cables you in a field-reporting kit). A cell phone for talking to the studio is usually a good idea too, and can help you figure out how long the signal delay is from the remote to the studio, and deal with it somewhat.

Remote audio chain diagram
A sample remote broadcasting set-up.

The above block diagram shows the typical set of connections, and it can be confusing at first. To break it down, first think of the situation at the studio. Usually stations have a computer allowing the DJ to play pre-recorded announcements, PSAs, shows, music, or even internet audio streams into the mixer for broadcast.

During a live remote, the DJ "tunes in" to an internet stream which originates from the remote location, just like tuning to any other internet broadcast, using Winamp or some other audio stream player.

From the remote perspective, they are using the laptop to encode the audio stream as usual, and the only slight difference is that they send it to a broadcast server which only will have a single listener -- the DJ at the studio. Sometimes it is useful to use the same laptop to listen to the stream at the remote location too, to see if it is skipping or anything.

If you are considering using Linux on your remote laptop, be aware that darkice, the encoder we recommend for stationary station encoding, has no level meters, so you may prefer to encode instead with idjc (internet DJ console) or vlc or audacious which are beyond the scope of this manual.

The broadcast server used for live remotes can be run at your station because most internet connections have more "download" bandwidth than upload bandwidth, but be aware that some ISPs may prohibit "servers" on your internet connection depending on what plan you have purchased. Another inexpensive option is giss.tv. If you host through Live365 or StreamGuys, ask them about a server to use for remote broadcasts.

Previous: Live remote broadcasting, Next: , Table of contents

13 Cost estimation

Here is a checklist of costs related to internet streaming to use use as a guide for evaluating the streaming options. Not all of these costs apply to every situation.

  1. Initial, set-up costs
    1. Encoding
      1. Computing hardware, perhaps donated or purchased used. Consider having a spare computer too.
      2. Cables, connectors, and parts associated with connecting station audio to the encoding device/computer.
      3. An internal or external (USB) sound card. If there is one in the computer already, try it out before buying anything new because it will probably be sufficient -- broadcast audio does not generally require audiophile-quality sound hardware.
      4. Operating system software (Windows, MacOSX, Linux (free), virus protection, firewall, depending on operating system). Donated computer may already have appropriate license for the software installed on it, but it is a good idea to wipe and re-install it.
      5. Encoding software (costs provided in the manual).
      6. Labor to connect audio source to encoding hardware, possibly to mount or otherwise place/connect encoding hardware in equipment rack or closet.
      7. Labor (may require expert labor depending on situation) to install system software and install, set up, and test encoder.
    2. Streaming server or broadcaster
      1. Vendor set-up costs (Live365, Streamguys, custom setup)
      2. Server computer hardware if you do your own (see Encoding for a breakdown of associated costs for OS, software, etc)
      3. Hardware and set-up costs for a higher-speed internet connection if applicable
      4. Stream broadcast server software costs (icecast is free, RealNetworks server is not, not applicable if using giss.tv, Streamguys, Live365)
      5. Software and hardware set-up labor and/or working with the vendor
    3. Other
      1. Create links/content on station web site(s) for internet listeners
      2. Customize players and/or add information to increase station stream visibility (vendors such as Live365)
  2. Ongoing
    1. Encoding. Once the initial encoding set-up is working, it tends to be very stable, requiring little or no maintenance.
      1. Hardware replacement (maybe every 5 years)
      2. Occasional labor to check or restart encoder, initially budget up to an hour per month, low-to-medium expertise needed
      3. Occasional troubleshooting labor, initially budget up to 12 hours per year of medium-to-high expertise.
    2. Streaming
      1. Monthly stream serving vendor costs (Live365, Streamguys, custom)
      2. Incremental cost of faster internet connection if applicable
    3. Other
      1. Labor/expertise to answer internet listener questions: "I can't hear anything" etc
      2. Changing/improving audio stream web presence and/or presence at vendor such as Live365
      3. Software and security upgrades for your encoding and/or stream broadcasting computer
Previous: Estimating costs, Next: , Table of contents

14 "Listen Now!" web links

Once your streams are running, you can listen to them by following a link which in looks something like this (NOTE: only your web programmer needs to understand the HTML below -- you can stick to the concepts).

Sample Listen Now Link! <a href='http://my.streaming.host:8000/hifi'>Sample Listen Now Link!</a>

That direct link to your stream works fine, but it is more flexible to link instead to a playlist containing the link to your stream:

Sample Listen Now Link! <a href='http://wxxx.org/playlist.m3u'>Sample Listen Now Link!</a>

The playlist m3u file is a simple text file listing things to play, one per line. It might contain, for example:

http://wxxx.org/psa.mp3
http://wxxx.org/ad-trade.mp3
http://my.streaming.host:8000/hifi
That way the listener will hear three things, psa.mp3 (which might be a public-service announcement), ad-trade.mp3 (which might be an advertisement or underwriting for the people donating your streaming bandwidth), and finally your live broadcast. You can add or change the playlist easily to, for example, rotate underwriting, give news or other alerts, solicit donations, cross-promote other programming, thank listeners or other people. Even if your playlist only contains your broadcast stream at first, using a playlist makes it easy to insert other content later.
Previous: "Listen Now" web links, Table of contents

15 Notes on free and open source software

Among our recommendations are several free and open-source software programs: Linux, icecast, and ices. You may be using (open source) Firefox to read this, and your web site and email are almost certainly running open-source software such as apache, PHP, sendmail, exim, or postfix.

If you are still making up your mind about which type of software you prefer, this opinionated letter concerning using open formats at WBUR and this case study of KRUU (by a self-interested vendor), and this note from a well-known radio engineer (who argues among other things the community radio and open-source software communities are similar and natural allies) present the less-well-known side of things.

Copyright © 2011, Prometheus Radio Project