Posts tagged: hulu

May 06 2009

get_iplayer Dropping Channel4 4oD, Demand Five and Hulu.com

The coding challenge is over. I’ve proven that It is possible to record the streams of Hulu and 4oD if you are determined enough and use the right open source tools.
I am now officially dropping support and removing the following Programme Type plug-ins:

  • Channel4’s 4oD Catch-up
  • Channel Five’s Demand Five
  • Hulu.com

I like a challenge but at this point I’d rather concentrate on the BBC iPlayer TV/Radio and BBC Podcasts. I’d like to reduce the workload and headache that these other sites cause me! Channel4 – you can stop feeding us that ‘Countdown’ episode now (very good!), and Hulu.com – if it weren’t for Boxee I guess you could stop encrypting the HTML that you serve to stop people scraping your web pages and the massive spaggetti of actionscript decryption functions! I guess many users who want to watch Hulu.com and 4oD programmes will now end up using Bittorrent instead. This is really not quite as ideal for these channels as before, at least with get_iplayer, they could control the geography of where their users were streaming from.

I’m still going to keep the ITV Player plug-in supported as most non-windows users will not have the ability to run Silverlight.

If you’ve downloaded a recent version of get_iplayer you’ll notice that I’ve moved it to a plug-in based architecture. This allows users to write 3rd-party plug-ins. Hopefully this will prove useful if you don’t want to rely on me to add your local channels to get_iplayer. I will attempt to write some documentation on writing your own plug-in. I’ve supplied a plug-in example template with lots of comments to get you started here. You can see the remaining plug-ins in get_iplayer SVN (see the download page) to get some idea of how they work.

Feb 20 2009

Hulu Possibly Accessible Again Soon

After some head scratching today I have managed to determine that the new PID which is used to get the rtmp stream URLs is generated by the new, long PID in the format of ‘[64chars]~[64 chars]’ (as shown when get_iplayer runs in –verbose mode). The correct PID is generated by using some keys (in a var called ‘copyrighted_strings’) and AES crypto functions from this flash file: http://www.hulu.com/sec.swf (specifically function ‘dec’). If anyone feels like writing/porting this in perl please let me know.

Feb 19 2009

Hulu kicks Boxee – No more Hulu in get_iplayer for now

Today Hulu.com kicked Boxee off their system by, from what I can tell, changing the algorithm/method that is used to determine the playlist PID from the Hulu content-id. This means that get_iplayer will not be able to download Hulu until this is worked out again. I’ve looked at all of the latest Hulu javascript and the algorithm doesn’t appear to be in there. I’m supposing its now done in ActionScript inside the some swf. If anyone has better tools for getting at the algorithms inside of the flash player then please have a go and let me know!

Feb 08 2009

Hulu.com TV and Movie Subtitles on get_iplayer

After spending many hours playing with wireshark and perl scripting, you can now download Hulu.com closed-captions / subtitles with get_iplayer v1.33+. Since I am in the UK, I had to set up a SOCKS proxy on a US based ssh server. By using:

ssh -D 1080 [server ip]

and then installing tsocks to transparently redirect all network traffic from my system via the US based server, then running up firefox to play a Hulu flash-based movie and clicking the ‘CC’ button, I was able to network sniff for the web requests that obtained the Subtitles. Simple really.

I’ve converted the SAMI subtitle stream to SubRip format because it seems to be the most widely supported subtitle format (see this comparison).

So all you need to do now is run:

get_iplayer --type hulu --subtitles --get [search terms]
Feb 06 2009

Hulu TV and Film Download Support in get_iplayer

Lots of new features have been added to get_iplayer since the New Year. Notably Hulu TV and Film indexing and download support have been added for US based users. This can add up to 9000 additional TV programmes and 200+ films!! Although I have now limited it to the most popular 2000 TV programmes to save on indexing speed.

To list all the programmes available on Hulu you can simply type:

get_iplayer --type=hulu

to get the index. Unfortunately, Hulu do not provide a very extensive XML feed so the indexing can take a few minutes. You can download a programme using the usual syntax, or, if you don’t wish to index the Hulu.com site, you can specify a pid or URL directly. e.g.:

get_iplayer --type=hulu --pid http://www.hulu.com/watch/20727

You will need rtmpdump (see the get_iplayer download page) to be able to download any Hulu programmes.

As usual, this feature is rather new and will have bugs so please let me know if you find any.

Just one other note: If you wish to see all of the options available on get_iplayer you now need to use the –help-long option.

WordPress Themes