Google Video Viewer

Google has released Google Video Viewer, a browser plugin based on VLC. Here’s one of the features they’ve added:

+    // Google mods
+    const char* allowed_host = "video.google.com";
+    char * host_found = strstr(p_sys->url.psz_host, allowed_host);
+    if ((host_found == NULL) ||
+	((host_found + strlen(allowed_host)) !=
+	 (p_sys->url.psz_host + strlen(p_sys->url.psz_host)))) {
+      msg_Warn( p_access, "invalid host, only video.google.com is allowed" );
+      goto error;
+    }

This “feature” prevents you from playing videos that are not hosted on Google’s servers. Download and run this patch I wrote to remove this restriction. Running the patch requires a .NET runtime.

Update: Journalists never cease to amaze me with their ability to blow things out of proportion. For the record, I haven’t spoken to or exchanged emails with a single journalist about this, so when the Associated Press writes “said he needed only one day” that’s a complete and utter fabrication since I’ve said no such thing here on my blog.

Some of you have requested the source code for the patch: GVVPatch.cs

64 Responses to “Google Video Viewer”

  1. Brian says:

    VLC already has a Mozilla-compatible plug-in. Why do we need the hacked up Google version to play their videos?

  2. Andrew Palfreyman says:

    That was quick – kudos!
    Do you know what protocol the Google player is using? it’s obviouslty 2-way, but is it HTTP or RTP or perhaps both?

    Andrew

  3. Eric Wilson says:

    Way to go! Keep up the good work. I am a big fan who just found your site. :-)

    Eric Wilson

  4. JonLech says:

    Brian:

    The Mozilla plugin in the latest release (0.8.2) of VLC doesn’t include support for the MIME type (application/x-google-vlc-plugin) that Google is using (it has been added to trunk).

    Another difference is that Google is paying patent royalties on both MPEG4 ASP and MPEG4 AVC.

    Andrew:

    HTTP only. Here’s a list of the VLC modules that Google has included: help, memcpymmx, i420_rgb_mmx, i422_yuy2_mmx, i420_ymga_mmx, i420_yuy2_mmx, memcpymmxext, memcpy3dn, access_http, access_tcp, aout_directx, avi, dummy, ffmpeg, glwin32, hotkeys, ipv4, logo, memcpy, normvol, opengl, playlist, rc, s16tofloat32, showintf, trivial_channel_mixer, trivial_mixer, ugly_resampler, wingdi, dshow, vout_directx

  5. Jon Gales says:

    That’s curious that they introduce a new video player that is open source and stick in something so lame. If they want people to use their player, they should let it play any type of video from any server.

  6. Brian Turner says:

    It sounds like an interesting piece of work, but I’m curious as to people who apply the patch will be liable for prosecution for infringement?

  7. Passy says:

    Hi Jon,

    I have been following your good fights over in Norway. Got the link to your site from Dagbladet’s front page, well done.
    Now I just have a question, if the google video player is based on vlc isn’t possible to just get a plug-in for the normal vlc player to play videos from their server, or do we have to download their player and then remove the restrictions with your patch?

  8. The Boss Man says:

    Wow, that was fast. Way to go! You’ve done it again.

    I wonder if there will be any legal consequences for you? I hope not.

  9. BrianAnthony says:

    I love you, jlj =)

  10. Oscar Sierra says:

    Thanks Jon. This stuff is amazing. Just downloaded the patch and it works like a charm!

  11. D says:

    Wow, yahoo news really blew this one out of proportion.

  12. Gunesh Raj says:

    Good work,and very fast indeed!

  13. Alex says:

    Any chance you could pub the source code for your patch? For us budding .NET enthusiasts out there:)

    -Alex

  14. Eric says:

    Where can we donate money to assist you !!???

  15. Dan Inge Langli says:

    Good job Jon! Im a big fan of your work, keep it up :)

  16. Benjamin Keating says:

    Nice! Keep up the good work, Jon.

  17. illovich says:

    Has anyone heard whether Macs will eventually be supported? Or any other OS besides windows?

  18. David Leighman says:

    I’m a http://www.BroadBandReports.com reader. Excellent work dissecting the player and displaying the vlc modules used. Nice job on a quick patch as well. Your work is featured in the front page article http://www.dslreports.com/shownews/65059 .


    Kudos
    David

  19. Richie says:

    Some of my Idols are… Edison, Franklin, Tim Jenison, Frank Tartaro and now Johansen :) Thank You

  20. Jon says:

    Jon – you’re always thinking outside the box. I’m not exactly sure the purpose of this one. I’ve been wondering why no one has utilized the lightest player around VLC.

    Also, just curious if you think a real MS crack is possible – the Japanese seem to have had some success with it. I’m all for DRM, it it’s invisible and doesn’t limit me in any way (which i know is impossible). DRM has a place in history :)

  21. Matthew Goeden says:

    Jon — I blogged about your patent comment here.

    Great work!! Keep it up!!

  22. Ed Campbell says:

    Looking at your notes, it still looks like Mac and Linux types are left out. Since we’re not likely to be running a version of VLC that requires .NET runtime.

  23. killy says:

    any chance with publishing your source for the patch?

  24. eight says:

    Jon!

    You have done it again! First and foremost, down with all DVD/video/DRM encryption!
    Secondly, they will never stop you! A computer program is only as good as it’s programmer!
    You will always find flaws to exploit when people put faith into digital rights management (DRM). When will America stop pushing DRM onto the rest of the world. Yes, piracy is bad, however strict DRM will harm “fair usage”. How the hell is my parents supposed to play a DRM CD-ROM that requires Windows XP when I can’t even get them to upgrade from Windows 98 to Windows XP? (Yes, I had them on XP, they hated it, so back on 98 they went).

  25. Lucas Gonze says:

    Jon –

    Have you submitted your patch back to the source tree? I’d like to see Google’s reaction to that, since their restricting the domain of sources to Google is so obviously selfish.

    I wonder if Google’s mods to VLC included a port to make the plugin work under ActiveX? I remember seeing a feature request in the VLC bug database for that. The response was it was too much work to happen anytime soon, so if Google contributed that work back to the VLC root tree then they did something useful.

  26. DaBlade says:

    Hey Jon
    Mind releasing a version for Linux too? The google video search sounds cool. Found some interesting, but unplayable stuff. :(
    I use Kubuntu Linux BTW. :)
    Nice job releasing it so quickly by the way. I’m amazed :D
    Jeg er forresten en stor fan av deg. Jeg ba SlyckTom spør deg beskrive uttrykkene på MPAA’s ansikter da du vant. :)
    Jeg liker forresten den nye designen på siden din. Jeg kjører wordpress også, på linuxp2p.com/blog. :)
    Keep up the good work :)

  27. Mauricio says:

    Unfortunately for you the press has made an enormous deal about this patch claiming you have struck again :) It normally would not be a big deal but people who do not read the blog think you yourself are claiming to have written some marvelous hack. The result is a lot of misdirected hate…

  28. tijl says:

    Andrew: VLC supports RT(S)P, but Google has this disabled in their build.

  29. Craig says:

    Fantastic work again.

  30. TopherTony2 says:

    Who does google pay the mpeg royalties to? Someone owns that?

  31. Damon Thompson says:

    Very nice job and I agree, the various news groups did blow this waay outta proportion. Once again, very nice job.

  32. NuclearFury says:

    I do agree, the media does always tend to make more of things then what they really are, Jon here just enjoys doing this stuff, and he likes open source software, nothing really bad with that.

  33. Brian Clarke says:

    News = sensationalism these day

  34. Jon Myrstad says:

    Hei Jon,

    Jeg har alltid vært imponert over alt du har gjort. Morsomt hvordan f.eks. It-avisen nærmest reklamerer for den patchen her. Takk skal du ha må jeg nesten si.

    Er på samme måte som deg en liten data-entusiast i tidlig alder (16-åring nå, begynte som 11-åring). Men har for det meste holdt med innenfor web-programmering da.

    Gleder meg til neste til du kommer opp med av crack/addons/patch. Nyter også å lese bloggen din, vel-formulert, innholdrik og ikke minst morsom.

    Nais navn foreldrene dine gav deg
    Jon Myrstad

  35. auselen says:

    You are on the news. Wow, great resume…

    http://news.yahoo.com/s/zd/20050628/tc_zd/155004

  36. Tony E says:

    Well, this news is now on Engadget so get ready for a bunch of blogs adding to the hype. I admit, it does make fo an interesting story: Young man “hacking” software of one of the biggest media companies in the world. What’s next Jon???

  37. Brian says:

    I must agree the news is out of proportion in almost all news media, but great work. Keep it up!

  38. Magnus 'Calva' says:

    Thanxx a lot Jon. This makes it a bit more amusing and usefull :-)

    Just thinkin’… Totally another ball game, but still… Could you possibly create something that takes care of the ‘Aurora’, the spy ware (pop up, with ads), which just annoys 1000 of people around the world… And is damn hard to get rit off. A way to get rit of it and a way to ‘punish’ these boys who makes lots of dollars on this shit…

    Just a thougt… Håber du nyder din sommer og kan slippe lidt ud i solen ;-)

    //Magnus

  39. Paul Tenny says:

    in C…

    http://dock.nevernet.com/GVVPatch.c
    http://dock.nevernet.com/GVVPatch.exe

    …I got bored.

  40. Deelight says:

    Amazing, most of the french press talks about it !
    Also, I love Google’s reaction (on http://news.com) : “It could result in security vulnerabilities on their computer and may disrupt their computer’s ability to access Google Video”. Do they really understand their own code ?

  41. Herminio Gonzalez says:

    Kudos to you for the reverse-engineering, Jon.

    Google must at least be quite pleased at the publicity they are getting from this controversy.

    In fact, I only learned about the existence of Google Video after I read the article on ElReg.

  42. David says:

    From Google’s own licensing agreement -
    “You may redistribute it and/or modify it under the terms of the GPL; either version 2 of the license, or (at your option), any later version.”

    Not really sure what the hubbub is all about, and I’m not one to be a ‘free everything’ fanboy.

  43. skat1980 says:

    I followed your link about the press – thought you’d like to know it ran in today’s (06.30.05) Hollywood Reporter also.

  44. Andrew says:

    Australian reproduction of the AP report on it…

  45. Jaoule says:

    Looollll…
    Journalists… They will never understand what OPEN SOURCE is…

    Thanks for the patch Jon !

  46. Muad'Dib says:

    Well, patching something like that can’t be difficult.

    I do not know how this is in other countries, but I expect that it is limilar to the situation in Slovakia, EU.

    You, IMHO, can *freely* apply a patch to any “computer program”; however, you may not be able to use the patched “computer program” afterwards. But patching itself does not necessarily lead to litigation.

  47. hriata says:

    Not to all this may not be the big Deal! but u know in my collage this a big feast ! great work keep up the good work! long life !

  48. Alvin says:

    Good job! As Herminio said, I’ ve just learned about GV after reading this page… IMHO, maybe Google needs to change their minds, it seems that bright dream of a good browser and related services has died to stocks and nasdaq, they should turn back to good programming as their goal.

  49. Mangykid says:

    Not to hijack your post comments or anything, I just have an idea here, I didn’t know where to put it, and figured you would be the best person to tell this kind of thing.

    I was thinking, couldn’t you have a program take the AAC files from itunes and make an audio CD iso? I guess it would be possible to create a virtual cd-burner, much like current virtual drives, but it has a setting to produce isos from whatever program accesses it, rather than burning. Ie: pick it in itunes to burn to and it produces the iso or bin and cue or whatever would be easiest to a previously specified folder. After making an iso you could simply mount that and convert from it. This would also possibly enable you to convert MORE songs at a time, as the audio cd iso wouldn’t necessarily have to be only 700 megs (depending on what you use to mount it I guess, unfortunately I don’t think iTunes lets you go over 700 megs anyway). It would also keep the quality slightly higher, completely digital re-encoding rather than digital to sort-of analog cd back to digital.

    You could even take it a step further and have the whole thing mostly automated, the virtual drive produces isos to a certain folder after you use it to burn in itunes, then you start up another program that automatically checks the folder, you pick the newest iso, mount it and it convert the files to mp3.

    It isn’t exactly directly circumventing protection, maybe. Seems like this would be a pretty gray area as far as the law is concerned, especially with whatever they’re doing to change the DMCA.

    Oh well, just a thought. If anyone can do this, you can.

  50. Jason says:

    Anyone else having problems with video playback? I just get a big G and then no video, but I get the audio, any suggestions?

  51. Jeff says:

    I was just wondering if anyone knows why nothing for Macs is being written.

  52. Mike Conner says:

    Hi Jon,

    First of all, I would like to congratulate you for the Superb Work and the great benefit that the Internet society has gained from your stunts. Indeed, any effort to withhold any information….

  53. Lan Fisher says:

    ># TopherTony2 says:
    >June 30th, 2005 at 3:58 am
    >
    >Who does google pay the mpeg royalties to? Someone owns that?

    From my understanding, Google pays royalties to YOU, the owner of the video. They will only do this if you set a fee for viewing your video. When you upload a video to Google they will ask if you would like to set a fee for viewing the video, and how much. Even if you tell Google that you will offer the video for free, if the video becomes very popular and many people start to view it, Google may impose a fee on their own for the cost of bandwidth, and give you royalties as well.

    That is my understanding. If I’m wrong, I’m sure someone will let me know. ;)

    Lan

  54. Amato says:

    - – - – - – - – - – - – - – - – - – - -
    Pozdrowienia z POLSKI :)
    - – - – - – - – - – - – - – - – - – - -
    Greetings from Poland ;)
    - – - – - – - – - – - – - – - – - – - -

  55. Will says:

    What motivated you to use C#?

  56. carls says:

    Nice work there. Swedish media also has blown up this story to the max. Just read about how you hacked google. ;)

  57. Rod says:

    Patches – OK – That`s done

    Now, I`d like to see a few speculative remarks about the Google Video scheme per se. That is, Is the venture good, bad, indifferent?

    Rod

  58. budding geek says:

    Could someone point me to somesort of text that will explain the process of knowing what to look for in the code so it could be altered? I’m interested in how were byte values were deterimed too.

    Thank you!

    Great work!!!

  59. Omar says:

    I searched a long for ur site and voila i found it… cool coz i heard about u that u patched the google viewer

  60. Chris says:

    Great article and I’m looking forward to seeing what you’ll accomplish as new features keep getting added.

    http://googlevideos.blogspot.com

  61. Ruben says:

    so is there a way to make the google player available to poste perhaps on a myspace?

  62. ruben says:

    is there a way to post the google video on myspace?

  63. Chris Camilli says:

    I dont think that reconfiguring the player….is the Correct use of code…..

  64. Joseph says:

    any chance with publishing your source for the patch?

Leave a Reply

Line and paragraph breaks automatic.
XHTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>