Andy’s Blog

Just another WordPress.com weblog

Should the Linux community reverse enginner iPlayer and 4OD?

If you live in the UK you are probably well aware of the BBC’s iPlayer[1] and channel 4’s 4OD[2] program.

These are both pieces of (proprietary) software that allows (windows using) people to download TV programs and watch them on their PC.

Linux users have been intentionally excluded from this by Channel 4 and the BBC, despite the BBC’s obligations under it’s charter[3], requests from it’s regulator (the BBC Trust)[4], and protests from it’s license fee payers[5]. The BBC has stated in a podcast[6] that they will not use open source as open source is “insecure” (of course that could have been easily tampered with as a cracker could have broken into their servers as they run open source code[7] on many of them and therefore must be horribly insecure).

So as the BBC have admitted they will not provide us access to the content we pay for (I pay the same T.V. License fee as anyone else!) then maybe we should consider doing it ourselves

If we sit idle it will be almost impossible to introduce people to Linux as Microsoft now have a whole supply of T.V. to go with there OS that we can not compete with. Even though Microsoft never even produced the content in the first place, in fact members of the Free Software community even payed for the production of some of it.

The Open Source and Free Software communities can write good quality code. Linux seems to be more secure, faster and stable than it’s competitors, GCC is one of the most widely used C Compilers and Firefox is increasing it’s market share rapidly, not to mention the Apache webserver (which the BBC [7] and Channel4 [11] both use). So should we write a replacement for 4OD and iPlayer?

To begin writing a replacement we would need to know how to speak with the Channel4 and BBC servers. We also need to know how to read what they send us. To do this we would need to reverse engineer the current programs to determine how they communicate and re-implement it in our own application.

Are choices are few but here are some of them:

  1. Sit back and do nothing
  2. Implement and application similar to iPlayer and 4OD (including DRM) but using other formats and communication protocols
  3. As number 2 only minus the DRM.
  4. As number 2 only reverse engineer iPlayer and 4OD so we can use the same formats and protocols.
  5. Pursue Political options (write to MP’s, MEP’s, the Prime Minister etc.)
  6. Pursue Legal options, the BBC has requirements in it’s charter, we could continue fighting for the BBC Trust and Ofcom to take action or ask the E.U. to intervene in the matter.

If we go for option 1 desktop Linux will be dead (at least in the U.K.) very shortly.

If we go for option 2 we would have a useful application but there is no guarantee that either the BBC or Channel 4 would use it. After all Firefox can access webpages fine but the BBC blocked it from iPlayer.

If we go for option 3 we would have the same problem as option 2 with the added problem that the BBC is s huge fan of DRM and will refuse to consider anything that doesn’t use it (despite it being useless and the one they selected being cracked before the BBC released iPlayer[8], at least we know the BBC’s use of DRM has nothing to do with protecting content then).

If we go for option 4 there would be little that the BBC or Channel 4 could do. We wouldn’t need their help provided we can find enough people with the skills to reverse engineer binaries. There may however be legal issues, perhaps less with iPlayer as the charter imposes limits on when the BBC can actually sue people. Any lawyers out there want to comment on this option?

Option 5 seems good on the face of it, but as there is no election on the horizon any more MPs will no doubt fail to act. This was also tried before and the Prime Minister himself refused to provide any reassurance to the 16 thousand people who signed a petition to number 10[9].

Option 6, this is still a good option. But the E.U. have taken years to bring a judgment against Microsoft for actions it committed years ago and if we wait this long again then it will already be too late. Ofcom and the BBC Trust have said they consider Platform Neutrality to be important but have refused to actually do anything about the BBC’s refusal to comply. (it would appear compliance with regulators is optional).

If done correctly Options 2, 3, and 4 could all be done at the same time. After all if we place the code for protocol communication in a separate library or module then we could simply attach entries for iPlayer and 4OD once it’s been reverse engineered and the legal issues clarified. Again for the DRM code it would be in a separate module which could be removed to generate option 3, it would be present in option 2, and it would contain the reverse engineered formats for option 4.

One question remains, who should fund this venture and who provides resources? Let’s be straight reverse engineering is possible but difficult. (Although the Samba guys managed to reverse engineer Microsoft’s file sharing protocol reasonably well.) We would also need some kind of legal protection. Maybe the FSF would be willing to provide that?

Of course producing options 2 and 3 would be easier. And if we can make it run on all platforms easily we would have a strong case for forcing the BBC at least into replacing their current code (and hopefully returning the money they wasted back to us the license fee payer).

Some other questions:

  1. What programming language? Python, Java, C?
  2. What formats and protocols? Bittorrent, TV-Anytime, OpenIPMP, Java DReaM?
  3. FUNDING (again)

Why have the desktop Linux vendors done nothing? Do they consider the U.K. completely unimportant? I would have at least expected Canonical (of Ubuntu fame) to have stood up for us, does the U.K. not matter to them anymore? How about it Jono, will Canonical stand up and help?

Feel free to comment below.

Links:

[1] http://www.bbc.co.uk/iplayer/
[2] http://www.channel4.com/4od/index.html
[3] http://www.bbc.co.uk/info/policies/charter/
[4] http://www.bbc.co.uk/bbctrust/consult/closed_consultations/ondemand.html
[5] http://defectivebydesign.org/iPlayerProtest
[6] http://backstage.bbc.co.uk/news/archives/2007/10/iplayer_drm_and_1.html
[7] http://toolbar.netcraft.com/site_report?url=http://backstage.bbc.co.uk
[8] http://news.cnet.co.uk/software/0,39029694,49291676,00.htm
[9] http://petitions.pm.gov.uk/iplayer/
[10] http://toolbar.netcraft.com/site_report?url=http://www.bbc.co.uk
[11] http://toolbar.netcraft.com/site_report?url=http://www.channel4.com
(I am not responsible for the content of external links)

November 4, 2007 Posted by | Computing, Free Software, Software | 17 Comments