Roku is a tiny box that turns your TV into web stream enabled device. This means that for under $100 you can connect your existing streaming subscriptions (Hulu, Netflix, Pandora, etc.) to your big screen in your living room. But aside from being a really nifty little gadget, Roku's strong presence in the media streaming device market tells an interesting story. The guy that brought us the DVR, Anthony Wood, decided that Linux was the best platform for the Roku back in 2002. It is definitely not the only thriving tech gadget that is Open Source down to the kernel, and that is certainly helping to keep its consumer's wallets happy. The big story, however, is the Netflix-Linux compatibility, which is leaving many people scratching their heads as to why other Linux devices are not supported. Some may find it surprising that Microsoft is to blame!
Silverlight 2 supports Microsoft PlayReady Digital Rights Management (DRM). This is the DRM solution being used by Netflix's “Watch Instantly” service for streaming movies to PC (Windows-only) and Mac computers. There is an Open Source implementation of Microsoft Silverlight
available to Linux users, however it does not support PlayReady DRM. Despite pleas to Microsoft
urging the release of PlayReady components for Linux distros, Microsoft won't budge. Ah, how convenient it is to blame the bald dude in the suit on Apple propaganda, but Roku is keeping secrets too.
I just bought into the Spotify wave, mainly because my painfully always-right coworker, bullied me into thinking about the ethics of file piracy. Anyway, I was disappointed to find no Spotify channel on Ruku. After a desperation Google search for "Spotify API", fantasies of mad street cred flashed through my imagination upon finding an SDK
. "That was the hard part", I thought to myself, "Roku is just Linux." It turns out, that Roku makes it real easy to deploy your channels to your local Roku machine for testing. However, the device is actually divided into two virtual machines, so you do not actually get access to the part with the Linux Kernel and the other Open Source resources that they claim to have implemented
. In fact, you are totally limited to BrightScript and media assets on the channel-hosting VM. BrightScript is a programming language that exposes the Roku Components API, and has a scary resemblance to VBScript. So you, in fact, cannot implement the Spotify API binaries on the Roku and package it up as a channel for distribution in their store. Your only option would be to hack your machine by physically taking it apart and replacing the protected image.
In my opinion, most of the blame is still on Microsoft for not giving up their DRM solution. It is not like they have to open the source (which would probably be humiliating). They just need to release a binary. However, Roku is missing out on a big opportunity to let developers take their product to new levels. I would like to see them release a distro so that developers can run locally on VirtualBox, and expose a Component manager API to BrightScript.