Linux Radio Station Automation?
miazmatic asks: "I am one of the tech managers for my high school's FM radio station. We have been using Rhythmbox on Debian to play music after hours when no one is broadcasting. However, it took some pretty ugly hacks to get it to transmit the station ID every hour. We are adding a 600GB RAID 0 VG to our PC (P4 2.4/512MB), to which we plan to encode all our CDs losslessly. Along with this upgrade I would also like to find a permanent solution for broadcasting the station ID hourly. Has anyone used Linux to run a radio station before? Can anyone suggest a F/OSS software package or solution? Any help is appreciated."
Skip RAID 0 like the plague if this is your main storage area. Much much better to go with RAID 1+0 or RAID 5. RAID 0 is like tempting the HDD Gods for HDD failure.
Otto Audio jukebox.
Mind Booster Noori
They have this tool called 'cron', maybe... ;-)
Paul B.
You should check out Radio Free Peterborough's setup (Use Google to find the URL, I don't want to see it slashdotted unnecessarily).
I don't know if they broadcast the station ID automagically every hour, however:
- they do have a DIY Internet Radio Guide (for streaming)
- Steve (who runs the show) might have a few good ideas).
--- Dan
http://freshmeat.net/projects/livesupport
Not to jump on the LVM bandwagon, but these days, if you're not using LVM, especially for a server you care about, then you're behind the times. Talking about VGs is the proper parlance, rather than discussing simple individual disks, like some basement haxor.
I want to delete my account but Slashdot doesn't allow it.
I am one of the tech managers for my high school's FM radio station.
Sounds like your high school is pretty rich and elitist already, if they operate their own radio station and have multiple tech managers for it. Surely they could just afford to hire someone to break in once an hour all throughout the night to say the station ID. Maybe they could even get the janitor to do it.
Moderator hint: a comment is neither "Flamebait" nor "Troll" if it is true.
I'm not sure how hard you want to make this, but if you just want to play random songs for a few hours, write a simple perl script to access your song database randomly, pick a song, play it. Before each song, check the time. If it's been an hour before the last station ID, play the station ID, and then the song. If you want to actually create a playlist of songs to play, put them in a text file. And rather than access your song database, read in the playlist file one line at a time. The process is the same. Check time, play station ID or song. Repeat.
Why would you encode the CDs losslessly? Correct me if I'm wrong but I do believe that FM radio is about half the quality of a normal CD, so you could encode the songs in something like MP3 or Ogg and still not have your listeners notice a difference in quality. This would save you disk space so you could then run a redundant disk array to protect against hd failure.
Rivendell aims to be a complete radio broadcast automation solution, with the facilities for the acquisition, management, scheduling and playout of audio content. As a robust, functionally complete digital audio system for broadcast radio applications, Rivendell uses industry standard components like the GNU/Linux Operating System, the AudioScience HPI Driver Architecture and the MySQL Database Engine. Rivendell is being developed under the GNU Public License.
Ethics II Axiom 2. "Man thinks." B. Spinoza
use a sound daemon and cron. sure, it will broadcast over any songs playing, but what the heck!
-- botsex is {grep;touch;strip;unzip;head;mount}
RAID 0, also known as striping, is useful for obtaining very high I/O bandwidth at the expense of making every one of the constituent disks a single point of failure. Lose any one of the drives, and you lose all of your data.
I can see that if you lose all of the data you won't really have lost much, since you can always re-rip it, but why take the risk? You don't need high I/O bandwidth for CD-quality audio... it's only 86KBps uncompressed, and an average ATA-100 hard drive can easily sustain over 200 times that data rate. Since you plan to encode the data, you'll need even less bandwidth, probably half as much if you're using a lossless codec.
I wouldn't use RAID-0 for this. Use linear RAID or, since you mentioned volume groups, just let the volume manager append the volumes. The result will allow you to keep most of your data in the event a drive fails and will be plenty fast for your application. If you're not tight on space, I'd say you might as well go for RAID-5 and get yourself a little insurance against data loss. If your 600GB consists of three 200GB disks, you'd still have 400GB of RAID-5 storage, which is a lot of audio CDs. About 800 of them with no compresssion, double that with lossless compression, or quadruple that with high-quality lossy compression.
Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
Is it a requirement that the announcement happen at
the top of the hour, or just that it happen at least
once per hour?
If the latter, try to use the jukebox software to
announce after every song, or every 5 songs, or whatever number would ensure that it happened at least once an hour.
If it has to be at the top of the hour, this won't help.
but there is TuneTracker which runs on BeOS. I don't think BeOS plays with RAID very well, however, so it might not work for you b/c of that; on the other hand, TuneTracker seems to do everything that you require and then some.
my pet machine
It doesnt have to be on the minute, it just has to be every 15 minutes .. so just write some meta data into your filenames or read the id3 tags, and have the program count if the next piece will go over the 15 minute marker. If it does, then just play the ID file and you're good for another 15 minutes.
:P
Or just patch a real audio mixer into the equation that plays every 15 minutes no matter what
slashdot: where everyone yells sarcastic metaphors to themselves to understand the issue
It's not the drives that set you back with RAID 5. It's the RAID card. SATA drives are cheap now. Not everyone can plunk down the cash for a card that will accomodate RAID 5.
"Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
Probably not the answer your looking for but at my last job (a failed startup) one of the other developers set up a perl script in XMMS(if I remeber correctly). Basically XMMS allows you to point your playlist to a script. This then played for X minutes then added something.
We used text to speach and got it to say the time or read a fortune. It was fun. The only problem we had was the pause between songs which took us a while to fix.
You could use mpd and preset playlists.
Run a cron job at 15 before the hour - have the job be a client to the mpd and:
1. determine the time remaining on the current song vs. clock time and the playtime of the upcoming songs. It should be simple math to decide which song to play the station ID after.
2. monitor the mpd some more.
3. stop it when you reach that point.
4. save the playlist and the current position within it.
5. load the playlist with the station ID.
6. play it.
7. load the original playlist.
8. start playing at the corred position.
9. ?
10. PROFIT!
Maverick Radio (http://www.mavradio.org/) at the University of Nebraska at Omaha runs on Linux -- Red Hat, if I recall the distro. I think they set their playlists using XMMS when they are in automated mode.
I've always thought that iTunes on a Mac or a Windows PC wouldn't be a bad broadcast automation system, but a Linux box would be cheaper than a Mac and easier to maintain than Windows.
Do it manually.
Have an op spend an hour picking from the library of tracks and previously-recorded legal IDs, and make it into some coherant progression.
That'll give it a human touch, and still keep you legal.
That's what I did when I worked for a station in Atlanta, I'd oftentimes come in off-hours, and set the computer system to play specific tracks in order, interspersed with legal messages, so that I was controlling the station but not actually on the air. It was great that way.
73.1201 STATION IDENTIFICATION.
(a) WHEN REGULARLY REQUIRED:
Broadcast station identification announcements shall be made: (1) At the beginning and ending of each time of operation, and (2) hourly, as close to the hour as feasible, at a natural break in program offerings. Television broadcast stations may make these announcements visually or aurally.
(b) CONTENT:
(1) Official station identification shall consist of the station's call letters immediately followed by the community or communities specified in its license as the station's location...
There you go - the answer. There is no "5 minute" rule, nor is it required to be right at the top of the hour, just as close as feasible.
Yes, I AM a broadcast engineer, and I DO hold a commercial FCC license.