A Home for Wayward Podcasts
December 1st, 2005Anybody who uses iTunes to acquire “podcast” audio files knows that there are some major perks to using iTunes for this purpose as opposed to simply downloading the mp3 file with NetNewsWire or your web browser. The biggest advantages to me are:
- New iTunes podcasts are automatically transferred to your iPod
- Old (already listened to) iTunes podcasts are automatically removed from your iPod.
- “Legitimate” podcasts show up in a special “Podcasts” section on your iPod.
- Your iPod and iTunes “remember where you were” when you stop listening midway. (Update: See bottom of entry.)
These relatively modest improvements to the regular “mp3 listening” process don’t exactly make managing and listening to podcasts pain free, but they help. When you are forced to abandon them because your “looks and talks like a podcast” mp3 file doesn’t happen to satisfy iTunes’ idea of what makes a podcast, the absence of these features becomes extremely annoying!
I often come across a “podcast episode” that is packaged as a simple mp3 link on somebody’s web page. Or I decide that a particular episode from a regular feed is intriguing, but I don’t want to subscribe to the whole feed just to get that one episode. Maybe I don’t *want* to listen to all the other episodes in that feed! In these situations, a highly annoying fact of life is that iTunes will not be coerced into treating a plain mp3 file as a podcast episode.
Grr!
A Solution: Typecast 1.0 Beta
These are the types of nuisances that regularly cause my “project ideas” list to expand to such length that few items have any hope of ever being implemented. Usually I just grind my teeth and work around the problem the way everybody else does: with sweat and tears! In this case, however, I found the limitations of iTunes to be a threat to my way of life. I need to have those plain mp3 files treated as Podcast episodes. I will have my way with iTunes.
I am happy to announce Typecast 1.0 Beta a FREE utility for performing one particular feat of daring: slamming arbitrary audio files into a “faked-to-order” Podcast subscription for iTunes. This is surprisingly hard to do, because iTunes doesn’t provide any mechanism (that I could find!) for coercing arbitrary audio files into podcasts. So what’s my secret? Believe it or not, I had to implement a custom HTTP server that, from within Typecast, listens on a high-numbered port. I then compose an RSS-format feed for the user-specified files and URLs, before sending the subscription request for this “fake” podcast directly to iTunes. The number of nasty workarounds this product’s implementation required is really depressing. Fortunately for you, they’re all hidden behind the exceedingly clean and friendly interface of Typecast.
Still don’t get what this is good for? Looking for an example page to try it out on? Check out CIO’s interview with Joel Spolsky. See the link that says “Listen to the Podcast” (replicated here for your convenience)? Now, how do you get that into iTunes as a Podcast episode? You can’t drag anything to the Podcasts playlist. You can’t AppleScript it. You can’t subscribe directly to an mp3 file. You can’t invoke some secret iTunes URL scheme. You can’t do it! Sucks to be you!
Now, download and launch Typecast. Left-Click and drag the mp3 link directly from Safari to Typecast. Tweak the titles and descriptions to your liking (or don’t), and “Send to iTunes.”
Suddenly it’s real easy. And I can cross an item off of my “fix the nuisances” project list.
Quirks and Caveats
This project is sort of on the borderline between “clever hack” and “usable product.” I’d like to think of it as a “clever hack with unusually smoothed-down edges.” Nonetheless, there are some disclaimers to be made.
One feature of this application that may annoy you is that every time you “Send to iTunes” it produces a new subscription in iTunes, instead of updating an existing one. This limitation is the fall out of relatively poor scripting support in iTunes for podcast-specific control. The very limitations that led me to produce this solution also limit my ability to do it perfectly. I have chosen to opt for a philosophy that allows me to at least “do what I do well.” Since updating the “fake podcast” once it is absorbed into iTunes is “difficult to impossible,” I’ve adopted the policy that every Send is a unique “fake feed.”
Although this has the unfortunate effect of causing multiple “subscriptions” to show up in iTunes, they will all be merged into a single “show” on your iPod. For instance, I publish wayward podcasts to iTunes under the podcast name “My Rescued Podcasts.” When I’m listening through my iPod, all the various podcasts I might have added with that fake subscription get unified into one choice on the iPod.
Typecast is the server! This is important, because it means that iTunes has to finish downloading everything specified in your pseudo-podcast before you quit Typecast. It also means that every future attempt to “update” a podcast injected in this way will quietly fail. No big deal, but you should know about it.
The Future of Typecast
Do you like this solution? If so, let me know. The future of Typecast is largely dependent on your expression of interest. Possibilities for future enhancements could include AppleScript support, multiple podcast documents, and my delving deeper into the possibility of convincing iTunes to “update” a previously sent Podcast. Heck, someday Typecast might even get an icon! (Like Typecast and have a knack for graphic design? How about contributing an icon? Leave a comment or contact me directly if interested).
Update: One of the cited benefits of having iTunes treat an arbitrary audio file as a podcast, that the iPod and iTunes share a memory of when you stopped listening last, is actually easy to apply to any iTunes file track. Just use AppleScript to set the “bookmarkable” attribute of any tracks you want to behave in this way. Good to know!