Wednesday... expanded
Posted by stephen on Thursday, 13th October, 2005 @ 00:56
I thought I probably should follow up on my earlier brain dump posting with a little more detail about what I'm up to right now.
Following on from moving around my living room over the weekend, I took advantage of having Monday to work at home and made a little trip to Argos and picked myself up a nice coffee table and a couple of bookshelves. I assembled the coffee table immediately and it's fitting in rather nicely. The bookshelves will wait until Saturday when the lovely James will assist me in their construction. And then there'll be pictures of the new layout here.
I then realised there's something I forgot to pick up in Argos, a SCART splitter. I wanted a manual one as most of my kit will be on at the time and an automatic one would get very confused. So I went and purchased one. And I now have TiVo, Aminet110 and output of my PC STB feeding into the TV's SCART socket, along with VGA from PC STB and DVI from the G5. The only thing not connected now is my DSL4000, which I'll be tempted to do soon as I'll be developing for them again shortly as I'll mention in a bit.
I'm continuing to be excited about the possibilities of an x86-based set top box. A low-power, mid-speed AMD Geode or VIA processor would do nicely, coupled with a LinuxBIOS, onboard 128Mb flash, MPEG2/4.10 hardware decoder and TV-encoder such as the SAA7127 on the Hauppauge PVR-350 I've been talking about so much recently. All the standard PC stuff otherwise could be removed, the VGA port (though DVI might be useful for HD later), the IDE headers, sound card, etc. And with a custom BIOS it'd be useless as a generic PC, which is very important in my line of work, the STB has to have no resale value!
I was buoyed by chatting to David over lunch when he brought up the possibility of having a prototype developed at a reasonable cost, thanks to his experiences at Empeg. Then chatting to Richard and discussing how a more powerful STB will definitely be needed for a project we'll hopefully be working on next year makes the whole thing seem like it could actually happen.
The biggest barrier I see right now is the relative lack of MPEG4 part 10 (H264) hardware decoders on the market. They're still quite expensive, and not all of them are backward compatible with MPEG2 which will be essential to carry on supporting Freeview over our service. Interestingly, Pace now do their IP215 STB which is H264 ready, but it manages that by having two 500Mhz ARM cores, one for general purpose use and one dedicated as an H264 decoder. Doesn't feel ideal. The other possibility I've found is a software stack, but it only manages H264 upto 1Mbit and in CIF resolution. A bit crap really.
The other barrier is the case. It needs to be reasonably small. It's made the Amino Aminet 110 we've been deploying lately very acceptable to our users. It's not another big Sky/NTL like box, it's a cute little thing we like to call a 'pod'. Not riding anyone else's wave there ;)
I think we can get it pretty small though, somewhere between the DSL4000 (just like a NTL or Sky box) and the Aminet 110 (about 50% bigger than the original iPod). The biggest expense is producing the case if we can't find an off the shelf solution. Plastic moulding is VERY expensive!
If you're wondering why I'm so dedicated to this cause, it's because I've found nothing out there that really suits us. Most of them are pretty closed systems, even when they run Linux. Rarely do they offer MPEG4, often they are tied to a single vendor's middleware and there's very little x86 stuff. Why do I want x86? Two reasons...
Firstly, it makes development really really easy! I can just use the stuff I'm using now, no fiddly cross compiler setup, etc. Secondly, I want a powerful local web browser, such as Firefox, and I want it to have RealPlayer and the latest Flash support. That's much easier to do with x86 as everything is there already.
Right, enough for one post, I'll talk about web development frameworks and what I'm up to at work right now in a future posting.
