BeOS Runs Radio Stations
TuneTracker Finds Traction in Broadcast ArenaScot Hacker, June 2001
If there's one lesson BeOS users have learned over the past five years or so, it's that when it comes to operating systems, the world at large doesn't respond readily to even the most impressive technical specifications. On its own, great performance is not sufficient reason for people to drop their piles of Windows or MacOS software and switch to BeOS. What the world wants are compelling solutions.
That's why vertical markets make more sense for relatively obscure platforms like BeOS. When people buy an expensive turnkey video or audio editing box, they don't necessarily care (or even know) on which operating system the solution is running. The client has a need to fill and is ready to spend money. Questions like compatibility with older software and mass-market buy-in are less important in vertical niche spaces than they are on the general user's desktop.
Be recognized and reacted to this fact when they re-focused their attentions on the appliance market. But we rarely hear from BeOS developers who are making a go of it in vertical markets. A remarkable exception can be found in Dane Scott and his BRS TuneTracker radio automation system.
Aside from its technical capabilities, which we'll get to in a minute, one of the most impressive things about TuneTracker is that it doesn't appeal only to existing BeOS users. In fact, TuneTracker isn't even available for download from its own web site. Rather, the system is sold to radio stations looking for a good automation solution, rather than to individuals looking specifically for BeOS software. The stations that adopt TuneTracker don't necessarily care that it runs on BeOS, only that it fills a vacancy in the world of overpriced and finicky radio automation software.
What's even more remarkable is that Dane Scott is not himself a software developer. But that fact hasn't stopped him from mustering the collective skills of a few volunteers*, the free-as-in-beer status of BeOS Personal Edition, and the unique capabilities of BeOS. With more than 20 years of real-world experience in the radio game, Dane recognized an opportunity waiting to happen, put together a package, and is effectively selling a BeOS software solution to organizations who couldn't give a stuff about the OS Wars. "A lot of people are being sold sledgehammers to drive thumbtacks. TuneTracker does a really nice and accurate job of driving thumbtacks," says Dane.
* TuneTracker consists of code contributed by Cedric Degea, Christopher Plymire, and yours truly. Marco Nelissen's SoundPlay provides many functions integral to TuneTracker's operation.
What It IsRadio stations schedule their programming on the basis of "format clocks." These "clocks" are like audio programming templates, which let station managers specify that news and traffic happens at 17 minutes past the hour every hour, with station IDs broadcast every 10 minutes, four commercials every 15 minutes, and that the rest of the time is filled with music -- a rock-out hit followed by a classic cornball ballad followed by an oldie, for example.
From these format clocks, program logs are generated by having someone (or something) plug actual track references into the template. Increasingly, radio stations are recognizing that this is work which can largely be done by computers. A competent disc jockey or station manager can use good automation software and a good audio database to put together a day's or week's worth of programming in one sitting. The station can then practically (or literally) run itself, with or without the interventions of a live host or DJ. In fact, TuneTracker will soon gain "infinite walkaway" capabilities, which will make the system attractive in even more radio-related situations.
Needless to say, the radio automation solutions being purchased by most stations are expensive. Less apparent to the general public is the fact that much of this expensive software is buggy, difficult to set up and use, and suffers from performance limitations imposed by the underlying operating system. In contrast, TuneTracker is a radio automation solution which is actually enhanced by the underlying OS.
It goes without saying that a radio station requires world-class stability, where uptimes are measured in months, rather than days. Running a station on Windows could be like asking for a sock in the eye. In addition, Be's very low media playback latencies make it an ideal platform for this kind of job -- even on moderate hardware, BeOS has no problem simultaneously sending out a program stream, queuing up the next track, and generating program logs from daily templates. Considering that I can reliably make WinAmp skip on my Windows machine by simply launching Word or Explorer during playback, I would be seriously considering other options if I were running a computer-based radio station.
And then there's the database. In order to run a professional station from a hard drive, the system must be capable of distinguishing between spots and promos, songs and jingles, public service announcements and station IDs. In addition, the system must be able to tell a sappy folk tune from a hip-hop/jazz fusion track. This generally requires the use of an associated database -- all tracks encoded on the system must be simultaneously logged in the database, and tracks removed from the system must be removed from the database as well.
BeOS, of course, has a database-like filesystem built right in. By encoding or storing music on a BeOS machine with the right tools, the database management question practically goes away. Not only do you not have to pay for or learn any 3rd-party database software, but it becomes literally impossible for the database to go out of sync with the collection of audio files on the system, since they are one and the same. And because the BFS database is extensible, users can add additional fields and criteria to their audio files, extending and customizing the system to match the requirements of their station (though most users put the already extant "Comments" field to use for custom needs).
How It WorksTuneTracker consists of several elegantly interrelated components.
TuneStacker: The station manager or DJ creates a format clock, which looks something like this (but much longer and more detailed, of course):
# hour 1 # interrupt@:00:00 5 ## PlayTrack=/boot/apps/BRS/SampleStation/IDs/StationID_1.wav RandPlay=Song RandPlay=Sweeper RandPlay=Jingle RandGenre=Electronica ## # time-correct@:10:00 ## ## Break 1 ## PlayTrack=/boot/apps/BRS/SampleStation/VoiceTracks/VoiceTrack_1.wav PlayFolder=/boot/apps/BRS/SampleStation/Commercials RandPlay=Promo RandTempo=Medium RandGenre=AmbientThe syntax of the format clock needs little explanation. The station manager has the choice of specifying a path to a particular track, selecting at random from all tracks matching specific genres, tempos, or audio types, and can even have all files in a given folder played sequentially. Additional syntax lets the manager correct for timing differentials, add descriptive comments, and slot time segments for interaction by live DJs.
Once the format clock (or clocks) has been created, it's dropped onto TuneStacker, which examines the file one line at a time and runs filesystem queries combined with randomization routines to find tracks matching "variable" lines like RandGenre=Ambient. TuneStacker then outputs what is essentially a standard playlist file - a program log containing nothing but paths to actual audio files on the system.
TuneTracker: Once TuneStacker has done its job, TuneTracker does the actual work of managing the program logs and controlling the audio player. TuneTracker can be used to integrate additional program logs, start and stop automated programming, integrate microphone input, output current track status to the web, and more. TuneTracker even helps make sure the station stays stable -- during my testing, I managed to crash SoundPlay. In less than a second, TuneTracker detected the crash and restarted SoundPlay automatically. It even noted the crash and restart in its own playback log, which helped in troubleshooting.
TuneTracker running in mini-mode, managing a TuneStacker-generated playlist, and controlling SoundPlay, which does the actual broadcasting grunt work.
SoundPlay: TuneTracker does not actually have built-in audio playback or internet broadcast capabilities. Instead, the system uses BMessages to talk to Marco Nelissen's amazing SoundPlay - easily the most popular and feature-rich audio player for BeOS, if not for any platform. Because SoundPlay is largely plug-in based, it has over the years become a world unto itself, taking on all kinds of jobs not usually associated with such a simple-looking audio player. SoundPlay's ability to handle and quickly scrub through multiple audio tracks simultaneously, to accept scripting messages from other applications, to re-encode audio signal at any bitrate and pump the result out over the internet, and to work with the broad collection of free VST audio plug-ins (which let it easily perform professional audio compression and limiting, equalization, or apply special audio effects ... all in real time) all combine to make SoundPlay the perfect audio engine for a radio automation system such as TuneTracker. SoundPlay is $12 shareware -- Dane leaves it up to TuneTracker buyers to register SoundPlay.
Who's Using TuneTracker?In exchange for the ability to inexpensively bundle such a powerful audio engine with a powerful operating system, Dane does have one obstacle to overcome with his customers in radioland - they must install, configure, and become familiar with a new operating system. Being able to distribute BeOS Personal Edition (with permission from Be) makes the installation question fairly simple, since PE installs just like any other Windows application, without requiring partitioning of hard disks. Scott recommends that users who like and decide to build a complete TuneTracker system upgrade to BeOS Professional Edition.
Once installed, users have a second challenge in front of them: In order to be useful, all audio files on the system must be properly attributed in order to take advantage of BFS' database-like features. While the TuneTracker installer ensures that appropriate audio indexes are in place, users will either have to encode all of their audio from within BeOS, or copy over existing audio libraries and add attributes manually. For this reason, I'd like to see Dane seek permission to start bundling MP3 Army Knife, which is capable of parsing large numbers of audio files and turning their filenames or ID3 tags into usable BFS attributes.
However, these obstacles aren't necessarily show-stoppers for radio stations wanting to adopt the system. In fact, most vertical solutions require a good deal of education, exploration, and configuration before becoming useful. But while most vertical solutions are too spendy for all but the most professional budgets, the whole TuneTracker system sells for $100.00, which brings radio automation into reach for all kinds of low-budget and non-commercial stations.
That said, it's important to keep in mind that the category of radio automation extends beyond standard notions of traditional radio. While TuneTracker does not yet interface with some of the custom hardware and software on which commercial radio stations are built, possible uses for the current version of TuneTracker include things like elevator and on-hold music systems, hospital and college radio, P.A. systems, low wattage "drive by" radio (like the very local weather you get as you're driving towards your favorite ski resort), low-power FM (including both "pirate" radio and the recently FCC-legitimized low-power community stations), ham/shortwave radio, and more.
However, one of the most popular TuneTracker applications is destined to be the increasingly popular MP3-based Internet radio genre. In fact, TuneTracker has evolved and grown up as a supporting platform for Dane Scott's own BeOS Radio, which plays music contributed by BeOS users from around the world 24x7. Similarly, Angry Neighbor broadcasts around the clock from a BeOS box running TuneTracker.
Another up and coming TuneTracker station is The Songwriter's Voice, who is involved in configuring the system right now. "There will be articles of interest for songwriters, interviews and CD reviews. Also included in this site will be a 24/7 internet radio station. The station will air independent releases either from Independent labels or self released music." Another organization currently getting up to speed with TuneTracker says: "... I will be using Tune Tracker to automate a 1940's-50's station on display in a Broadcast Museum." A gospel radio station in America's South is also preparing to begin broadcasting via TuneTracker. Dane also tells of users simply using TuneTracker to control home-network-based MP3 stations, with family members helping to build and refine the program logs.
While there are currently no commercial radio stations running TuneTracker, Dane says he's received a great deal of positive response from stations currently evaluating the potential of the software. Out of the 60+ TuneTracker licenses Scott has sold to date, he estimates that around 30% of them have been to organizations completely uninvolved with BeOS. And this, to me, is one of the most exciting things about TuneTracker -- not only does it use BeOS for exactly the kind of thing the operating system was built for, but it does it so well that people who have never heard of or thought about BeOS feel compelled to "jump the wall" and give it a shot. And that's what the idea of a "tractor app" is all about.
Dane Scott has more than 20 years of of experience in radio, having worked as a DJ and news director before entering the field of radio station management (he has worked for Wisconsin's WMAM and WLST). Scott also produced a syndicated contemporary Christian show called "Nightlight" from 1983 to 1990, which ran across the Midwest, Alaska, and the Caribbean. Scott now does voiceover work for corporate video, TV, and the Internet, and has done some commercial work for Sears. He also narrates the show "Sport Aviation" on the Speedvision cable network.