Breaking Eggs And Making Omelettes

Topics On Multimedia Technology and Reverse Engineering


Archives:

Reflections On On2

August 6th, 2009 by Multimedia Mike

I read something in the past few months which noted that, in this day and age, the ultimate phase of any tech startup’s business plan is to be purchased by Google. Viewed through that lens, On2 is about to live the dream, even though they existed years before Google, years before most people even knew what a search engine was.


Assorted logos of Duck, On2, and Google

So Google has announced its intention to purchase On2. Wow, it feels like the end of an era. It seems like I’ve had some relationship with On2 for the entire 9 years I’ve been into multimedia hacking. Something that got lost in yesterday’s coverage and commentary was that On2 started life as the Duck Corporation, also a codec company. During this period, they largely focused on gaming applications. But I’m pretty sure that RAD Game Tools kicked them out of that market with their Smacker and Bink technologies. However, files encoded with the Duck’s multimedia codecs were among the first I studied back around 2000-2001. So that always makes me sentimental.

Somewhere along the line, they transformed into On2 and created VP3. Near the end of 2001, On2 announced they would release VP3 as open source (they were working on VP5 around this time), hoping that some nebulous open source community would make something useful out of it. I’ll have you know that I was that open source community for quite awhile. I delved into their code and wrote the first documentation about the codec bitstream and decoding process which would later serve as the foundation of the formal Theora specification. Then I wrote an independent implementation for FFmpeg.

And I never judged the codec either.

Ah, On2. People always worry that I’m going to get sued to death for writing this blog, but On2 remains the only company that has ever leveled any kind of legal threat against me. But I ain’t mad at ya. Later that same year, I went to work for Adobe where I gained official access to the very algorithm I was trying to reverse engineer. Strange how things work out.

And now I work on the Adobe Flash Player, arguably the single biggest use case for any technology that has ever come out of On2. At least, so far. What does Google want with On2? You’re asking the wrong person. My company’s official answer is to contact On2 or Google.

There has been no shortage of speculation on Google’s motives, most of it misinformed at best, outright silly at worst. Dan Rayburn has a fantastic “day after” piece debunking myths about the deal: Debunking Myths, Questioning VP8′s Quality. His piece, however, does not address the idea floating around that Google will open source all of On2′s technologies. That’s certainly in keeping with the idealistic Google image of a promoter of free and open technologies, even if it would cause a lot of extra work for FFmpeg developers and multimedia historians alike. But seriously, take a look at the list of companies Google has acquired. Can you pick out any proprietary, closed source technologies they have purchased and subsequently released under an open source license? I don’t recognize Google’s history of doing this. Quite the contrary, it seems that when they buy closed source programs they keep them closed, like Picasa, and in cases like SketchUp, they even charge for upgraded versions.

My colleague Dark Shikari has some choice words to say on this situation. He remains extremely sceptical of any literature On2 has published regarding their codecs’ performance. Remember also the nonsense that circulated a few months ago regarding specious comparisons claiming that Theora is better than H.264 (more accurately stated: Theora can be tweaked enough to encode arguably better video than what YouTube’s H.264 encoder can generate in its default, lowest quality mode; but that entire thesis usually gets distilled into simpler, less accurate headlines). Finally, I have read some speculation that Google might want On2 not for any specific multimedia-related intellectual property, but for their talent pool.

To tie together all of the items in the previous paragraph: It’s possible that Google needs the expertise in cooking codec comparisons to keep the Theora faithful at bay.

For those keeping track, this is On2′s codec scorecard as of this writing:

Video Codecs

TrueMotion 1 Open source
TrueMotion 2 Open source
VP3 Open source, foundation for Theora
VP4 Unknown
VP5 Reverse engineered
VP6 Reverse engineered
VP7 Unknown
VP8 Unreleased

If you have ever wondered what happened to VP1 and VP2, you may assume that TrueMotion 1 and 2 filled those positions.

Audio Codecs

DK4 ADPCM Open source
DK3 ADPCM Open source
Audio For Video codec Unknown

It still annoys me that I reverse engineered DK4 and DK3 from binary only to later discover that they were already open sourced along with TrueMotion 1 and 2, and VP3.

Posted in On2/Duck, VP3/Theora | 12 Comments »

12 Responses

  1. SvdB Says:

    There’s also TrueMotion-S (used at least in the 3DO version of Star Control; predates TM1 I think) and TM2X.

    Considering the HTML5 saga (see http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2009-June/020620.html ), I wouldn’t rule out that Google opens up (some of) On2′s codecs. See also http://www.theregister.co.uk/2009/08/06/google_vp6_open_source/ .

    And if Google doesn’t open up any of On2′s codecs, I think that the chances of FFmpeg devs being sued (or threatened) for reverse engineering them will still be reduced; Google would stand to lose much more in reputation damage than they could ever gain from such legal action.

  2. compn Says:

    google uses ffmpeg in youtube (afaict) and chrome/chromium. it would be strange to see any company sue a project which they themselves use.

  3. Multimedia Mike Says:

    @SvdB: Per my analysis, TrueMotion-S looks to be about the same as what would become TrueMotion 1, except that they scattered the bits of the frames across different files.

  4. avenger Says:

    >It still annoys me that I reverse engineered DK4 and DK3 from binary only to later discover that they were already open sourced…

    Well, look at it from another point. You reverse engineer for fun. The open source version is good for confirming your results. Its like hiking up the mountainside and noticing a chair-lift after you reached the top. Well, if you are tired, you can sit on it to come down, but you can also choose to stay on feet.

  5. Jonathan Wilson Says:

    If Google are smart, they would release VP6 as 100% open source and create “OGG VP6″ (OGG container, VP6 video and Vorbis audio). Why would this be a good thing for Google?

    VP6 produces better video for the same file size (or conversely, better file size for the same video quality) than Theora does which means shipping YouTube videos in VP6 is easier for Google to justify vs shipping in Theora.

    Google (and especially YouTube) could well make VP6 the de-facto standard for the video tag in HTML 5 in the same way as png, jpg and gif are the de-facto standards for the img tag. It would be free enough for any browser maker that wanted to use it to use it and the quality difference vs H.264 is nowhere near as big as the it is between Theora and H.264.

    Also, with VP6 having been used in Flash for so long (and having been licensed by On2 to other companies also), any patents that apply to it should have been identified (if anyone thought they had a patent against VP6 its likely they would have sued Adobe by now given how huge Flash is) so using VP6 should in theory be no more legally risky (vis a vis patents) than using H.264 is.

    Why VP6 and not the latest and greatest VP8? Because that way they can still make money from VP8. Also, VP6 has stood the test of time as part of Flash and as such is more mature. Plus work has been done in making VP6 (mostly through its use in Flash) work on lower power hardware (either as seperate decoder chips or as optimized implementations for platforms such as ARM.

  6. Multimedia Mike Says:

    It’ll never work, Jonathan. You can’t put a codec into an Ogg container until you give it an incomprehensible and esoteric name. I’m pretty sure that’s in the spec.

    :-)

  7. Jonathan Wilson Says:

    Either way, Vorbis audio with VP6 video would likely be competitive with H.264 (especially given that H.264 is patented up the wazoo and has all kinds of royalties attached AFAIK)

  8. Mans Says:

    VP6 is not now, nor will it every be, competitive with H.264. Furthermore, there is no reason at all to believe VP6 is covered by any fewer patents than H.264. The only real difference regarding patents here is that for H.264 we know what they are, for VP6 we know nothing.

  9. Multimedia Mike Says:

    It’s an interesting concept, naturally. But as I laid out in the post, I don’t believe it will come to pass (Google open sourcing any of On2′s previously closed tech).

  10. AxelP Says:

    I wonder what impact Google’s purchase of On2 and its technology will have on Sun’s JavaFX plattform. If I remember correctly, then On2s codecs are the only mandatory codecs supported by JavaFX on all plattforms.

    Not a very wise decision in my book, because of the lack of free means to create videos in with On2 codecs.

    I think one of reason was because, at least VP6, is supposed to have a lesser CPU load than other codecs on playback, which might be a good reason for mobile and embedded devices. However, more and more of those come with hardware acceleration for H.264 so this might become less of an advantage.

    The last reason I could imagine why Google wants to gain access to video codec technology is the licensing. If I am not mistaken there will be a change in license fess for H.264 in 2010 (2011?) that might be pretty expensive for large video portals such as YouTube.

    Google could, with Chrome and Android, enforce a de facto standard for video codecs on web and mobile devices, just like Adobe made H.263,VP6 and now H.264 standards.

  11. Jonathan Wilson Says:

    Do any royalties apply to distributors of MPEG4/H.264 content?
    If they do (or will start applying soon), Google (owner of one of the largest video distribution sites on the planet) would likely want an alternative to H.264 that they DIDN’T have to pay those royalties on (one that any browser vendor can support and that can play back fast on mobile devices)

  12. RC Says:

    You said yourself, Mike, some time ago, that YouTube appears to be using “MEncoder” to encode videos. “Flix Video for Linux” just happens to utilize MPlayer for decoding . On2 bought Flix some time ago. It’s not too big of a stretch to think that Google wants to acquire a company who’s product it depends on, and which they would greatly benefit from improvements to.

Leave a Comment

Please note: Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.