The problem with current HD media centers

May 1st, 2009

My current media center settop box is the Popcorn Hour A-110. It’s a very small box, and it’s mostly empty at that: 2/3 of the box is space where you can plug in a SATA hard disk. I bought it because my previous media center, an original Xbox running XBMC, was very loud; two fans and a harddisk do not make for a quiet box. It also didn’t have anywhere near enough oomph to play 1080p HD movies. The popcorn hour has no moving parts at all, and so makes no noise whatsoever. It decodes 1080p without any problems, and supports just about any container and codec. It’s pretty cheap considering the specs, too: I bought mine for about €250.

Decoding 1080p in real time is quite a bit of work; it takes about 80% of one of the cores in my desktop’s Intel Q6600 CPU. So how does the Popcorn Hour do it, without even a fan to cool it down? The heart of the box is the Sigma Designs 8635 chip. This is a SoC specifically designed for media centers. It has a 300Mhz MIPS core, and a bunch of DSPs used for decoding video and audio, as well as video scaling, 2D graphics acceleration, and much more. The chip has an incredible number of interfaces — everything from audio/video output ports to USB, ethernet, PCI and even ISO 7816. You can connect this chip to most things you buy in a home electronics store, and a few things in your wallet, too :-)

The PCB has some other components on it — RAM, a SATA-USB interface chip, an ethernet PHY and a HDMI 1.3a support chip — but these are all just peripherals hanging off of the 8635. The chip runs cool, evidently — it has a pretty regular heat sink on it.

The Popcorn Hour runs a piece of software called Networked Media Tank (NMT). Both the box and this software are made by a company called Syabas, which licences out the software to other manufacturers of media center boxes based on the 8635 chip. There are lots of these now; it seems most media centers supporting 1080p are in fact running NMT. They’re all based on the 8635, and all come with the same generic remote control unit.

Unfortunately, NMT is pretty awful. Coming from XBMC, the Rolls Royce of media centers, using NMT is a huge step backward. The user interface is a disaster in usability, and it’s ugly and slow. It has only very basic features, nothing fancy or interesting. To give an example: a recent update finally gave the ability to resume watching a movie from where you left off. Hot stuff!

It’s not going anywhere, either. The Syabas people are evidently concentrating on bug fixes and implementing basic features like that resume. They aren’t doing a major overhaul of the UI or feature set. This software is never going to be appreciably better than it is now.

So the obvious question is, can you run XBMC on the Popcorn Hour? That would be the best of both worlds: great software running on great hardware. Unfortunately, it’s not quite that simple. For one thing, XBMC runs only on Intel hardware (and apparently has some machine code, so it’s not just a matter of recompiling on another platform). It also relies on OpenGL support for its UI, and uses the CPU for decoding video — it has no code for offloading that type of operation to another chip. In short, XBMC was made for a very different hardware platform. The XBMC developers don’t appear to be very interested in porting to a MIPS architecture either. To top it all off, driving the DSPs in the 8635 appears to be somewhat of a closed affair: Sigma Designs doesn’t even publish a datasheet for it. An open source effort to make decent software for the box is thus not just a lot of work, but may actually involve reverse engineering the video decoding hardware… a non-trivial task.

So an improved UI for my media center doesn’t seem likely. Ah well, it wasn’t all that expensive, and when something better comes out I’ll look at that. So what would a next-generation media center be? Sigma Designs may come out with a new version of their chip which supports 3D acceleration, and somebody else might then write a decent UI for it. But I dislike closed platforms, and I don’t think I’ll throw more money at a media center that is based on a Sigma Designs chip. As long as it’s closed, we’re going to be stuck with crap like NMT. After all, if Sigma Designs opened their chip up, their product would have more software written for it, and Syabas would have to clean up their act. Yes, open source is good for competition.

There is light at the end of the tunnel, however. Nvidia just came out with the ION platform. This is a low-power SoC featuring much the same sort of built-in peripheral interfaces as the Sigma Designs chip, except this one doesn’t have a CPU core on board — it has a GeForce 9400M graphics chip instead. Nvidia combines this with an Intel Atom CPU. The Atoms are Intel’s low-power x86 CPU, marketed towards netbooks and such. Unfortunately, where CPU performance is concerned, they’re crap. However, Nvidia has announced an upcoming version of ION that uses VIA’s Nano CPU — a direct competitor to the Atom.

The interesting bit about the ION platform is the hardware video decoding on the GeForce portion of it. It can decode 1080p in real time, and I assume (considering its target market) the whole setup can be passively cooled. Nvidia’s track record with opening up specs for driving their chips is spotty at best — their linux graphics drivers are still closed, but they did come up with CUDA (also supported on the ION, by the way — you can encode video with it!). We’ll have to see if they’re more open with this. If they are, an XBMC port to the platform seems likely.