I managed to intercept the following SMIL file for a Hulu show:
http://releasegeo.hulu.com/content.select?pid=sG0EfF3s5EKlKkogxA78P_u_uUnYrZZw&mbr=true&format=smil
It contains the rtmp URLs of the individual segments in that The Daily Show episode.
Here's one such URL (remove the line breaks):
rtmp://cp39465.hulu.com/ondemand/?auth=daEcbdMbGa1d1aFbYaXdlancgakbQa_aFdT-bjoTYk-c0-
XqNCtCq1Dxn&aifp=NS20070910&slist=content/43972/12/968/HuluTranscode_55469_
50616_FLASH_700K_4x3_29_97__iAzjTN9aHEWwGh25iYsb1w;.international=false<break>
content/43972/12/968/HuluTranscode_55469_50616_FLASH_700K_4x3_29_97__iAzjTN9aHEWwGh25iYsb1w
The problem I have now is to understand the relationship between all the different ID's used in different places to indicate the same show:
- If you just navigate through Hulu.com to the Daily Show of Dec 4, it seems the number 47436 is an episode ID: http://www.hulu.com/watch/47436
- If you then look at the source for that page, you will find a content_id of m1pm81al.
- If you look at that episode's entry in the series RSS, the id 47436 does show up in some attributes, but the m1pm81al ID does not. However, a new ID shows up that can be used with the embedded player: vFFLwBs6FHz1t7kJPrmKPw. (That's the informaton I use in my Yahoo Pipes technique mentioned a couple of posts ago.)
- If you monitor the HTTP requests of the Hulu flash player (using Firebug), you see vFFLwBs6FHz1t7kJPrmKPw being used to fetch a lot of XML information about the episode: http://r.hulu.com/videos?eid=vFFLwBs6FHz1t7kJPrmKPw&include=video_assets .
- In that video-assets file an additional ID (!) comes up, under the element <pid>. However, I have no idea of how to go from all the information above to the URL of what seems to be the most important file of all for Yougle integration: the SMIL file.
If anyone wants to help crack this puzzle, or if IgnoranceIsBliss is reading this thread, please contact me here: http://mmartins.com/mmartins/contact.asp , or post to this thread. Thanks in advance.
Note to people from Hulu.com reading this: please note that there is no pleasure or financial incentive in trying to reverse-engineer your protocol. If/when you release a VMC plug-in, I will gladly use it; I would even pay for the plug-in in addition to watching your commercials.