Obfuscation is no protection
It may surprise some readers, but I don’t actually have a bad relationship with anyone at the BBC. I had an interesting and cordial conversation with someone from the iPlayer team (not the implementation part) at Mashed last weekend. I think a lot of people there are aware of the futility of trying to lock down content that’s simultaneously being digitally broadcast in the clear.
But I’m puzzled that there are people there who actually seem to thing that obfuscation is worthwhile.
Although iPlayer downloads over the iPhone interface are working pretty well, there’s a bigger prize out there: being able to download the higher quality video and audio that’s streamed to regular Flash clients. The new BBC Radio online player will use MP3 (Yay!) over RTMP (Boo!) in Flash. For ideological and practical reasons, I’d love to be able to play MP3s outside the browser, without needing Flash, and to be able to transfer them to my MP3 player for listening in bed, on the train, etc.
In a thread on the BBC Backstage mailing list about changes to the implementation of online radio playback, I wrote:
It looks like the audio data’s just MP3; it would be even more user friendly if it just used HTTP instead of obfuscating it with a proprietary protocol (RTMP). Then you wouldn’t need Flash at all, although it does make it easier to click and listen in a web page.
Flash will play content over HTTP perfectly well, by the way: that’s how YouTube does it.
In a reply, James Cridland wrote:
HTTP downloads are not possible: we don’t own most of the content. That’s why you’ve spotted RTMP being used – it’s a form of non-invasive Content Restriction And Protection. I’m sorry we have to use it. But we have to use it.
I’m not blaming James for this. I’m pretty sure he understands. But someone, or someones, at the BBC actually thinks it’s worth trying.
It’s not. It’s a waste of time.
["connect",
1.0,
{"capabilities"=>15.0,
"videoFunction"=>1.0,
"audioCodecs"=>1639.0,
"app"=>
"ondemand?_fcs_vhost=cp48184.edgefcs.net&auth=daEcIaKaQdfaic
ZcBa_aLa9dYbhdCaCc3d9-bizwQB-cCp-FnrDCqBnNDoGuwF&aifp=v001&
slist=secure/6music/AMI_e6d01bf639fe37be3a42e423f9f38425_b0
0c73d2_6m_lamacq_thu",
"videoCodecs"=>252.0,
"swfUrl"=>"http://www.bbc.co.uk/emp/player.swf?revision=3704",
"pageUrl"=>"http://www.bbc.co.uk/iplayerbeta/episode/b00c73fc",
"tcUrl"=>
"rtmp://84.53.177.140:1935/ondemand?_fcs_vhost=cp48184.edgef
cs.net&auth=daEcIaKaQdfaicZcBa_aLa9dYbhdCaCc3d9-bizwQB-cCp-
FnrDCqBnNDoGuwF&aifp=v001&slist=secure/6music/AMI_e6d01bf63
9fe37be3a42e423f9f38425_b00c73d2_6m_lamacq_thu",
"fpad"=>false,
"flashVer"=>"LNX 9,0,124,0"}]
That’s a decoded AMF packet parsed from a conversation between the new iPlayer radio player and the RTMP server. In other words, my RTMP library is progressing very well.
2008-06-28 21:09 UTC. Comments: 9.
Ed
Wrote at 2008-06-28 22:30 UTC using Firefox 3.0 on Mac OS X:
Good luck! I’ll watch this space.I considered having a look myself, but sadly real life seems to be keeping me somewhat preoccupied now :(
Ewan
Wrote at 2008-06-28 23:26 UTC using Firefox 2.0.0.14 on Linux:
Content Restriction And ProtectionInteresting capitalisation.
Ed
Wrote at 2008-06-29 00:09 UTC using Firefox 3.0 on Mac OS X:
Hah, good point Ewan!Richard
Wrote at 2008-06-29 12:52 UTC using Firefox 2.0.0.6 on Linux:
I think the Beeb engages in self-censure because it wants to offer a service comparable to what C4 and ITV can muster.eg, if you’ve ever tried using C4’s download service, you’ll notice it is a right pile of Content Restriction And Protection – it’s really annoying to set up and use, principally because they need to charge for usage.
If the BBC out-competed the commercial stations too effectively – which it could easily do by allowing unrestricted downloads, saving their bandwidth by using (and thus legitimising) torrents – the commercial stations would argue the BBC had an unfair advantage through the license fee, and then the Beeb might have to share the license fee (horror! a red line they cannot cross)
– so they make a slightly flaky service and ignore any input about how the public clearly want the system to operate, while making it not too difficult to subvert for people with enough interest.
Chris Warren
Wrote at 2008-06-30 21:15 UTC using Unknown browser on Unknown OS:
It’s not the BBC that needs persuaded, it’s the rights owners. They really need to learn the same lesson as the music industry has finally grasped, that it’s a waste of time and resources; at some point the data has to be in the clear because humans don’t do DRM and at that point, all DRM schemes become pointless. All it takes is one person to make this available in an unprotected form (which as you point out the Beeb does via DVB-T), and that’s it.I can understand the Beeb’s position – they have to comply to get the content. It’s better that the content is available for 90% of the audience than the 0% if they waited until they were allowed to provide it on the iPlayer without any sort of protection. As Richard points out, at least the content is there and they’re not making it as difficult for us as they could do!
Anyway, good luck with RTMP, it is a pretty horrid protocol! Many broadband routers (e.g. many of those with THOMSON innards, including the BeBox and BT HomeHub) have a great difficulty coping with the number of packets going back and forth, often causing the router to conk out. I’ve spent the past few days cursing router reboots whilst trying to create an alternative to the Beeb’s EMP which works on the PS3 now that they’ve somehow broken the official one.
Phiip
Wrote at 2008-07-01 14:58 UTC using Firefox 3.0 on Linux:
_“Although iPlayer downloads over the iPhone interface are working pretty well, there’s a bigger prize out there: being able to download the higher quality video and audio that’s streamed to regular Flash clients.”_Firstly, thanks for your iPlayer download tool. I regularly forget to record the programmes on Freeview – or miss them completely.
Secondly, what makes you think the Flash video is higher quality than the iPhone video? I thought the flash version used 500kbps ON2 VP6 and the iPhone had 500kbps H.264. It’s hard to compare the quality of streamed flash with playback of H264 in totem-gstreamer, but I thought the iPhone video was better quality. Please correct me if I’m wrong.
Chris Warren
Wrote at 2008-07-01 16:55 UTC using Unknown browser on Unknown OS:
In terms of resolution the H264 streams are 480×272, the VP6 is 512×288, so not a huge difference – not sure about bitrates and the efficiency of the codecs.Anyway, I’ve a feeling that the most important reason to get RTMP working is that there’s the possibility that soon there may not be any HTTP streams. From the Beeb’s recent efforts in ‘protecting’ the streams I get the impression that they’re being prodded by someone to do something about it. Despite the BBC’s stats showing that it really isn’t that big of a problem, I expect that someone will be pushing the Beeb to develop an iPlayer application using the iPhone SDK, allowing then to use an alternate streaming protocol.
A sign of the way things may be moving is that they’ve just started providing lower-res H264 streams over RTSP for mobile devices e.g. http://www.bbc.co.uk/mediaselector/4/sdp/b00cbm54/iplayer_streaming_n95_wifi
AudioBear
Wrote at 2008-07-05 17:21 UTC using Firefox 3.0 on Mac OS X:
I do hope the RTSP stuff is going well? Has the BBC now moved to using it – now the beta iPlayer page is no longer beta?I can’t seem to get any of the normal stuff to work. Maybe they have changed the back end or the way you access it again?
Alex
Wrote at 2008-07-05 22:49 UTC using Firefox 3.0 on Windows XP:
Yeah, I’m getting the same problem. Both iplayer-dl and get_iplayer don’t work and return with errors or don’t do anything at all. I guess it’s something to do with the implementation of the new iPlayer site.