Radio VCR + podcatching = NPR to go, anytime 
A year ago I wrote (in
My New Radio VCR) that I
had written a bit of software to record all of my
favorite NPR broadcasts and store them in a file-based archive. Thanks to that software, I now
have over a year of NPR (about 16 GB) on one of my
servers, and I can listen to it whenever I want.
To make my time-shifted listening more convenient, I decided
to maintain a subset of the archive on my iPod. (Think
of it as single-source, private
podcasting.)
To make it happen, I wrote some more software that –
- examines my NPR archive;
- selects a subset that is ideal for iPod listening;
- pushes this subset down to a server-based iPod "landing zone"; and
- synchronizes the landing zone with an "NPR" playlist on iTunes.
Steps 1–3 are performed by a shell script and a Perl
script that together run as an hourly cron job on a burly server. The
shell script reads a simple configuration file that contains
rules like, keep the last 7 days worth of "Marketplace" on
the iPod. The shell script then factors in some
NPR-specific constant values and then invokes the
general-purpose Perl script,
podcast-archive.pl, which
performs the heavy lifting. It searches the archive
for desirable shows, converts the archive's
Speex encoding into something
more palatable to the iPod, and pushes the results into the
landing zone.
The final step is handled by an AppleScript that runs on my
iBook. It synchronizes
the "NPR" playlist in iTunes with the contents of the landing
zone. I kick off the script by hand just before I am about
to leave the office. In a few seconds, it syncs up my iPod,
and I am ready to roll with up-to-the hour recordings.
The iPod organizes the tracks automatically because of
the way I set the ID3v2 tags on the files in the landing zone.
For example, today's "Car Talk" is tagged like this:
=== TPE1 (Lead performer(s)/Soloist(s)): NPR
=== TALB (Album/Movie/Show title): Car Talk
=== TIT2 (Title/songname/content description): CT 2005-02-26 Sat
=== TYER (Year): 2005
When all of the tracks are loaded, they end up under the
"NPR" hierarchy like so:
NPR (artist)
Car Talk (album)
CT 2005-01-29 Sat (track)
CT 2005-02-05 Sat
CT 2005-02-12 Sat
CT 2005-02-19 Sat
CT 2005-02-26 Sat
Day to Day
DTD 2005-02-21 Mon
DTD 2005-02-22 Tue
DTD 2005-02-23 Wed
DTD 2005-02-24 Thu
DTD 2005-02-25 Fri
and so onThis makes iPod-based navigation a snap.
I enjoy my new NPR mobility. Now I can listen to any show I want, when I want, and
where I want. It is so convenient that I can't help but wonder if this isn't the future of radio. I suspect that the folks at
Odeo (think Blogger for audio) would like to think that it is.