- 10 Jul 08, 3:27 PM
Richard Felton of BBC Research and Innovation writes:
In the near future we are going to see more TVs and set-top boxes which incorporate Ethernet ports. Freesat devices already have this feature and the BBC is working with the industry to standardise how MHEG applications could utilise such a connection on compatible Freeview boxes.
To investigate the possibilities of hybrid (IP & broadcast) set-top boxes, I created an application which allows the viewer to browse Flickr feeds on their television. I used a Netgem iplayer (no relation to the BBC service) box of the type used at the recent Mashed event. My MHEG application sits on a web server and the Netgem box allows me to bookmark the URL, mapping it to a channel number. The MHEG application was developed using the MHEG+ toolkit allowing me to import useful bits of code I had written for previous applications.
As you can see in the video, viewers are invited to enter a tag or username using the characters on their numerical keypad. The application then sends this string to a PHP script and in response receives a text file listing the twenty most recent photos that satisfy the query. The MHEG application can now obtain thumbnails for the twenty images directly from Flickr and display them on screen.
The Freeview colour palette is fairly limited and is nowhere near comprehensive enough to show full colour images, so when it came to displaying a large version of each image I chose not to let MHEG render it. Instead I used the hardware video decoder to show an MPEG-2 I-Frame ensuring a higher quality image. When the application needs to show a large photo it uses a PHP script to obtain a JPEG image from Flickr which it then converts into an I-Frame before returning it. As part of the conversion, the script scales the image so that it displays correctly on a widescreen television.
So hopefully you can see how standard web APIs can be used to create useful interactive television services. MHEG is not designed for number crunching or large amounts of string manipulation so it makes sense to implement these processes on a server. I look forward to seeing what the development community can do when the MHEG+ toolkit is released.
The video was captured from a development receiver, not the Netgem box.
I used phpFlickr to help me with the Flickr API.
Fuzzyfelt is my (underused) Flickr account and appeared as the default option to speed up my testing.