Taking Radio Beyond the Play Button

Saturday, March 17, 2012, at 06:57AM

By Eric Richardson

KPCC StreamMachine Listen Live Demo
KPCC

Screenshot of a demo web player using StreamMachine for rewindable live audio streaming.

Back in January I mentioned my explorations with Node.JS and the process of getting over the hump with a new framework. After a couple months of false starts, I had finally gotten a little streaming audio relay up and running.

Turns out, that may have been the start of something interesting.

Over the last few months I've become a bit obsessed with the idea of where radio goes in this new Internet world, and particularly with the idea that the experience of listening to a digital stream has the potential to be worlds better than that offered by your radio. Your radio, after all, only offers you a play button.

Up to now, though, that's all we've offered Internet listeners as well. Connect, hit play, and go do something else.

That's not going to be good enough any more. Yesterday KPCC submitted a grant application to the Knight Foundation's News Challenge, seeking funds to build pieces of the next-generation of streaming radio infrastructure.

My Saturday morning is a great example of one of the problems we are trying to solve. My favorite NPR show is Car Talk (what that says about me as a news person, I'm not sure). Inevitably, though, I am useless when it comes to remembering to start listening at the top of the hour. Via NPR's iPhone app, I can find a station streaming Car Talk at pretty much any hour of the weekend, but none of them do me any good if I only remember to listen at :15 past.

What if I could take control of the process and rewind to the point where I meant to start listening, instead of just the point where I did start listening?

ESPN Radio's web player does something like this. While the UI leaves a bit to be desires, the idea is killer. Technically, it's not even really that difficult: just build a big buffer up on the server and build a UI around being able to access the stream at different points.

So far I've built a demo web player implementing this functionality, and continued to play around with StreamMachine as the server backend.

Just the beginning....

Rewinding is just the beginning when it comes to the potential for new functionality.

I get to the station every morning via two trains. It's a 40 - 45 minute trip. I would love to listen to the radio on my way in, but between the subway and connectivity dropouts on the Gold Line, it's just not practical. I don't want podcasts either: I want today's news, not yesterday's.

But what if our iPhone app had a function where I could tell it that I had a 45 minute trip and it would pump me the last 45 minutes of live radio? Over my home wifi, it would download in a couple minutes and I could commute listening to "nearly live" radio. Today's news, just a little delayed.

What if I just heard something awesome on the radio and I want to share it with my friends? What if I could hit a button and share that point in the stream to my Facebook timeline or Twitter followers?

All of a sudden, radio gets interesting and social.

What's next?

This project started as a spare-time pursuit on my evenings and weekends, but I have a feeling it's going to become a much larger part of my work hours over the next few months. If we do end up getting the Knight grant, that would come this summer and would certainly help accelerate the process of building out more player interfaces and integrating into the station's existing broadcast systems.

In the meantime, though, it's time to just keep playing.