I am in geek heaven with our new Roku box. This book-sized media player is simple to use and its simple to write applications for it. I signed up for the Roku SDK a few days ago and this evening I began working on a way to get my saved media to play on it. I’m happy to say I succeeded!
I used the homevideo apps by Brian Lane to create the appropriate XML files on my Apache server. It was simply a matter of adjusting the pathnames and everything worked.
How it works:
- Set up a webserver.
- Make your mp4 files accessible through the webserver.
- Create an xml directory and place a categories.xml file into it.
- Edit the categories.xml file to specify your own categories and subcategories.
- Run the staticvideo.py script to generate xml files for your subcategories.
- You’re done.
There was some weirdness with the app at first, as it seemed to be getting settings from both the homevideo app and Roku’s TED Talks sample applet. After deleting one or the other and reinstalling things seemed to work.
Is what I’m doing considered programming? Not really, as the sample app just needed to be adjusted a bit. If I got crazy with it I could really customize what my app is doing (and start from scratch even). For now I’m happy with an easy way to play the mp4s I have on our Roku. I’m also motivated to re-rip those DVDs to encode them at a higher quality.
I’m also considering what useful services I might Roku-ify. High on the list is a Roku version of the City of Raleigh’s RTN channels. Also a possibility is the N.C. Live site, which has lots of PBS-generated media that might play on the Roku. N.C. Live is connected with a library patron’s account, so I would have to consider how to implement this. A third possibility is the huge amount of video freely-available on The Internet Archive (though it looks like someone might have already implemented an IA channel). It would also be useful to have an applet for the N.C. DOT traffic cameras, too.
The future of television is getting closer and closer!
Bonus link: Roku “Hidden Channels.”