Posts tagged: Linux

Jun 23 2008

My Mashed ’08 Hack: Getting Freevo PVR to Stream BBC iplayer in Higher Quality H.264

My hack was to get the Python based PVR, Freevo, to play iplayer programmes without having to download them in advance. (Yep, kids keep bugging me to download the latest episode of Blue Peter on the Linux xbox!).

The hack allows the Freevo user to browse all of the iplayer programme listings which get_iplayer has obtained from the BBC iplayer web site. It sorts it by programme name to make this task quicker.

The H.264 (mp4/quicktime) files from the iplayer site (intended for the Apple iPhone) are of higher quality than the flash and Wii alternatives. Watching them on a full-sized TV can actually look very good quality.

The user can then simply select the programme and watch it. In the background the programme is also saved to disk for watching at a later date should you not watch it all at once.

Downloading of the programme resumes as soon as you start watching the programme again (the resumed download goes faster than the streaming rate).

The streaming from the iplayer site is made possible by first downloading the Quicktime moov atom which contains the video stream indexing info and is unfortunately located at the end of the file, munging it and moving it to the beginning of the file so that mplayer, xine, etc can play it back before it is totally downloaded.

I’ve now posted the new version of my get_iplayer perl BBC iplayer downloader script here. Also there are the iplayer Freevo plugin and get_iplayer Freevo wrapper script which includes installation instructions.

See the beebhack wiki for may more details of the H.264 download workrounds.

WordPress Themes