Chapter 4: Codec
Codec stands for “coder-decoder” and refers to how the media data in represented in a file or stream. Codecs normally compress their contents so that the data is as small as possible. Lossless codecs store the data in such a way that it can be perfectly reproduced later. Lossy codecs generally achieve better compression, but they can only be reproduced approximately later. The common codecs used with radio are WMA, MP3, AAC, and, less commonly, RealAudio and OGG.
One feature that can sometimes be found in the codec is Digital Rights Management (DRM). DRM is a means of access control placed upon digital media. Via encryption, it allows the publisher to control the distribution and specific uses of the media. For example, the media might only work on a specific device, or only for a specific length of time. Although most radio stations don’t use DRM, a few do, and it makes it difficult to play them. DRM generally locks you into using a specific application to play the content, and some way of verifying who you are, to prove you are allowed to play it.
Windows Media Audio (WMA) is a common Microsoft codec. It has a number of variations. There are multiple versions of the codec: 7, 8, and 9. There is Windows Media Voice (WMVoice). This codec is optimized for audio that contains human voices, which it will compress much more efficiently. As a result, it is often used in radio streams. A second codec is Windows Media Professional (WMPro), which has both a version 9 and 10 and allows more channels in the audio and also is better optmized for mobile devices. There is also a lossless version of the WMA 9 codec. These last three codecs are supported in the latest version of Windows Media Player, but may not be supported in other applications that play WMA files.
Advanced Audio Coding (AAC), is a codec standardized by MPEG. It comes in two forms: regular AAC and AAC+ (also known as HE-AAC). AAC is well-known for being the standard that iTunes uses. AAC+, however, is rapidly growing and is optimized for low-bandwidth and streaming situations (like internet radio). iTunes, Flash and number of open-source applications, such as VLC, support playing AAC+.
Choosing what program to use to stream radio stations depends on whether you want to use commercial or open-source software (see Appendix B for legal issues relating to this topic). If you want the best support and performance, or if you need to access DRM-protected media, you should go with commercial software. Otherwise, open-source software is a good way of saving money, getting the widest number of supported formats in a single application, and having the greatest portability to other platforms.
For commercial software, Windows Media Player (WMP) by Microsoft, Quicktime by Apple, and RealPlayer by RealNetworks are the three big applications. However, the vast majority of radio streams listed on RadioTime’s guide (up around 95%) are playable on WMP, so the other two applications may not be needed.
As far as open-source software is concerned, mplayer will play just about every stream out there. However, there are a few exceptions where streams won’t play, in which case falling back to either vlc or mimms (for MMS streams) is a good solution. You might also want to check out the Helix DNA project. It is an open-source media player that plays, among other things, RealAudio and RealVideo streams. Much of its code came from RealNetworks.
Here’s one final tip for streaming radio stations. Allow a generous buffer time, especially for stations located in a different country than the player.
| ← Chapter 3: Container | Appendix A: Useful Resources → |