X264 developer says Google's new VP8 WebM codec is a mess

Posted:
in Mac Software edited January 2014
Despite the unbridled enthusiasm among bloggers for Google's newly announced free WebM codec, a digital video expert has reviewed the new VP8 specification and delivered a severely deflating technical analysis, noting that it decodes video slowly, is buggy, and copies H.264 closely enough to all but guarantee patent issues.



What could possibly go wrong?



The knee jerk reaction to Google's announcement was to ask whether Microsoft and Apple would immediately jump to support the new codec, given that the two companies offer the default choice in web browsers to nearly all desktop users, and given Apple's strong influence over mobile devices.



Speaking to journalists, Microsoft offered to "support" the new codec as long as users installed it themselves, leaving reporters to wonder aloud if Apple (which has not commented on the issue) would also allow its Mac users to install their own codecs, as it always has for the last twenty years. Mac users can already install Ogg Theora within QuickTime; it's just that Apple doesn't do this for them because doing so would open the company up to patent assault.



Ars even wondered in print if Google would take the "nuclear option" and cut off support for viewing H.264 videos in YouTube to force the world to use its new VP8, killing off all support for YouTube on existing mobile devices. The site also suggested that Apple was a major intellectual property holder in the MPEG H.264 patent pool, and therefore that it gets royalties from the use of H.264 that would prevent the company from being interested in free, open alternatives.



Apple is not a codec vendor



However, Apple has never been a major codec developer. While the ISO's MPEG-4 adopted Apple's QuickTime container file format as the basis for the standard MP4 container in 1998, that was a contribution by Apple, not something that could or has generated significant patent royalties.



If Apple had a bunch of proprietary codec technology to push, it wouldn't have made a splash about licensing the third party Sorenson codec for QuickTime 3.0 back in 1998, when that codec was among the world's most advanced. Apple continued to license subsequent Sorenson Video codecs through QuickTime 5 in 2001, in an effort to distinguish its media platform as the best way to present and view video.



But Apple then began to focus its resources on supporting the open development of the ISO's MPEG-4 codecs, leaving Sorenson to licenses its proprietary codecs to Macromedia's Flash. Macromedia also licensed On2's VP6, which became the preferred codec for Flash starting with version 8 in 2005. In contrast, Apple relegated the Sorenson codecs into a bin of legacy codecs within QuickTime, pushing MPEG-4's H.263 codec and later the more advanced H.264 in QuickTime 7.



The commercial development of video codecs was moving so quickly that Apple saw value in pooling the top technology company's video expertise together and licensing it all in one place from the ISO's MPEG LA, an independent entity with no bias toward any particular company.



With digital video playback standards having moved beyond the desktop computer and into embedded and mobile devices, video games, disc players and other applications, it was no longer in Apple's best interests to have an exclusive proprietary codec in QuickTime anymore. Instead, Apple prefers open standards in video codec technology, just as prefers open standards on the web, where proprietary encroachments like Adobe's Flash can only complicate its efforts to build its hardware products.



That means that while Apple is listed as a patent owner by the MPEG Licensing Authority, it is not primarily Apple's technology that is being licensed by any stretch of the imagination. The actual video technology comes from the hardware component and software makers that have always been part of MPEG, including Bosch, Dolby, Ericsson, Frauenhofer, Fujitsu, Hitachi, Philips, JVC, LG, Mitsubishi, Panasonic, Samsung, Sharp, Siemens, Sony, and Toshiba.



Even Microsoft, which has developed far more technology in the area of video encoding and decoding than Apple, says it earns about half as much from H.264 royalties compared to how much it pays to the MPEG LA in order to use the pool's technology. Apple is clearly not supporting H.264 because it is getting rich doing so. If there were some openly available, free alternative to the advanced video technology being collaboratively developed by all the world's advanced video experts, Apple would happily use that.



The problem is that the patents are already filed, and there isn't any acceptable, free technology that can be used that is not subject to respecting those patents. The only way to get the world's most advanced video technology is to pay for it.



Or you can steal it



After Apple began shifting its desktop computers and mobile devices toward the open (but not free) H.264 specification, it started to become apparent that alternative proprietary codecs were often simply open MPEG-4 specifications with some improvements made to them.



Sorenson Video 3 was revealed by an anonymous developer's reverse engineering to simply be a tweaked version of H.264, while Microsoft's competing Windows Media Codec, once published by the SMTPE under the name VC-1, was also revealed to be largely derived from MPEG standards, a revelation that limited Microsoft from substantially profiting from VC-1 royalties.



Now, Jason Garrett-Glaser (also known as Dark Shikari) an independent developer working on the x264 open source project (which encodes H.264 video) has discovered the same thing about Google's new VP8, branded as WebM. Garrett-Glaser says he "was able to acquire access to the VP8 spec, software, and source a good few days before the official release and so was able to perform a detailed technical analysis in time for the official release."



At issue are three points: how good is the VP8 specification (the published explanation how its technology is supposed to work), how good its its implementation (the code provided to actually do the work) and how likely is it that VP8 is really safe from patent issues.



On page 2 of 2: VP8 is a mess.

The VP8 specification is a mess



"The spec," Garrett-Glaser says, "consists largely of C code copy-pasted from the VP8 source code ? up to and including TODOs, 'optimizations,' and even C-specific hacks, such as workarounds for the undefined behavior of signed right shift on negative numbers. In many places it is simply outright opaque. Copy-pasted C code is not a spec.



"I may have complained about the H.264 spec being overly verbose, but at least it?s precise. The VP8 spec, by comparison, is imprecise, unclear, and overly short, leaving many portions of the format very vaguely explained. Some parts even explicitly refuse to fully explain a particular feature, pointing to highly-optimized, nigh-impossible-to-understand reference code for an explanation. There?s no way in hell anyone could write a decoder solely with this spec alone."



Garrett-Glaser noted that "On2 claimed [its VP8 encoder was] 50% better than H.264, but On2 has always made absurd claims that they were never able to back up with results, so such a number is almost surely wrong. VP7, for example, was claimed to be 15% better than H.264 while being much faster, but was in reality neither faster nor higher quality."



The VP8 implementation is a mess



"Irrespective of how good the spec is, is the implementation good," Garrett-Glaser asked, "or is this going to be just like VP3, where On2 releases an unusably bad implementation with the hope that the community will fix it for them? Let?s hope not; it took 6 years to fix Theora!"



Other commentators have also noted that Google is largely just releasing code that it obtained without doing the work to actually make it high quality or easy to use, assuming that once the code is available, developers in the community will fix it. But that strategy has rarely worked. Mozilla's failure to fix and release anything functional other than portions of the Netscape web browser over the last decade is a notable example. The majority of Netscape's code, including Communicator, collapsed along with its big plans to deliver XUL as a platform and brand out into mail viewers and media players.



Garrett-Glaser launches into an in-depth technical analysis of VP8, describing the limitations in the design of VP8 while noting many similarities with H.264. Among his conclusions:



"VP8, as a spec, should be a bit better than H.264 Baseline Profile and VC-1. It?s not even close to competitive with H.264 Main or High Profile." (H.264 has multiple profiles, each acting as a a separate encoder, making the "standard" really a broad family of related encoding standards, each suited to a particular task. Baseline is for web or mobile applications, Main is targeted at standard definition TV, and High applies to high definition applications such as Blu-Ray.)

"VP8, as an encoder, is somewhere between Xvid and Microsoft?s VC-1 in terms of visual quality. This can definitely be improved a lot, but not via conventional means.

"VP8, as a decoder, decodes even slower than ffmpeg?s H.264. This probably can?t be improved that much.

"VP8 copies way too much from H.264 for anyone sane to be comfortable with it, no matter whose word is behind the claim of being patent-free.

"VP8 is not ready for prime-time; the spec is a pile of copy-pasted C code and the encoder?s interface is lacking in features and buggy. They aren?t even ready to finalize the bitstream format, let alone switch the world over to VP8."



Outlook not so good



If Google can rapidly improve upon the VP8 codebase and specification, and can push chip makers to incorporate support for the new codec immediately, it is possible that Apple will eventually support the new codec in its products.



However, the similarities with H.264 suggest that the real technology licensees behind the world's advanced video processing technology aren't likely to give Google a free pass at erasing their revenue streams. While Apple is largely neutral in this issue as a minor player in the codec business, there are many major players who are going to test the new codec before anyone in the industry with deep pockets is likely to buy into Google's new plans.



That's why Microsoft isn't offering any voice of commitment supporting the free new codec, and why Apple is not likely to get involved unless Google can promise to take the heat by indemnifying all of its partners from patent attacks.
«1345

Comments

  • Reply 1 of 89
    ghostface147ghostface147 Posts: 1,629member
    Interesting. I don't know v8 from x264 or whatever, but I am sure there will be improvements down the line.
  • Reply 2 of 89
    I think it would be correct to say the quality won't be as good as H.264 codec just like xvid/divx given the patent issues. I guess time will tell. As it is already noted, if it become widely available and free (and vastly improved) Apple will support it down the line.
  • Reply 3 of 89
    djsherlydjsherly Posts: 1,031member
    Can some explain what "open (but not free)" means? In what way is something open if you have to pay for it? Regardless of any other measures of the term "open", surely the final arbiter that you have to actually pay for it precludes the use of the term?



    BTW, Somehow, the OPs again managed to fire a shot about Flash on completely unrelated topic matter. Bee in his bonnet?
  • Reply 4 of 89
    mr. memr. me Posts: 3,221member
    Quote:
    Originally Posted by ghostface147 View Post


    Interesting. I don't know v8 from x264 or whatever, but I am sure there will be improvements down the line.



    No. If Jason Garrett-Glaser is correct--and I have no doubt that he is--the issues with VP8 are numerous. They can't be fixed unless significant changes to the format are made to the specification. The result will be that a fixed VP8 will be a different format that is substantially incompatible with most implementations of the current standard.
  • Reply 5 of 89
    siromegasiromega Posts: 30member
    This article could clearly use some editing...
    • In several places, the author says VP6 when it seems like they mean VP8

    • x264 is a video ENCODER not decoder

    Everyone got all high on VP8 but without indemnification its not going anywhere. There will be a patent pool and before long VP8 will be subject to the same licensing issues as x264.



    Until software patents either get more tightly regulated or abolished completely, there isn't much hope for an open video spec.
  • Reply 6 of 89
    yuusharoyuusharo Posts: 311member
    Anyone else notice that the author incorrectly wrote "VP6" twice, when they meant to say "VP8?" Sorta makes me wonder if even the author understands what the heck is going on here.



    Just saying.
  • Reply 7 of 89
    mistergsfmistergsf Posts: 244member
    Quote:
    Originally Posted by ghostface147 View Post


    Interesting. I don't know v8 from x264 or whatever, but I am sure there will be improvements down the line.



    Regardless, do we really need yet another video format? Technology is wearin' me out.
  • Reply 8 of 89
    tenobelltenobell Posts: 7,014member
    There is a difference between open source and open standard. Open source software is generally free, H.264 is an open standard. The reason it is open is because it is not owned by any one company. H.264 is a collaberation between many different companies and organizations.



    Quote:
    Originally Posted by djsherly View Post


    Can some explain what "open (but not free)" means? In what way is something open if you have to pay for it? Regardless of any other measures of the term "open", surely the final arbiter that you have to actually pay for it precludes the use of the term?



  • Reply 9 of 89
    cwfrederickcwfrederick Posts: 171member
    can someone PLEASE explain why google is bothering doing this. why create all this hassle and confusion? what is in it for them? what was wrong with how H.264 was going? it seems pretty good with hardware acceleration and everything. i know there are some licensing issues, but they do not seem to be that significant.
  • Reply 10 of 89
    siromegasiromega Posts: 30member
    Quote:
    Originally Posted by djsherly View Post


    Can some explain what "open (but not free)" means? In what way is something open if you have to pay for it? Regardless of any other measures of the term "open", surely the final arbiter that you have to actually pay for it precludes the use of the term?



    Open but not free means anyone can write a H.264 video encoder or decoder because the specification is open. However if you use one of those encoders or decoders you're subject to licensing fees paid to MPEG-LA.



    Quote:
    Originally Posted by yuusharo View Post


    Anyone else notice that the author incorrectly wrote "VP6" twice, when they meant to say "VP8?" Sorta makes me wonder if even the author understands what the heck is going on here.



    That and the second page was just about all quote from DS without much substantial added.



    Granted, understanding video encoding is f*cking hard. 99% of people here wouldn't know CAVLC from CABAC if it bit them in the butt.
  • Reply 11 of 89
    Quote:
    Originally Posted by yuusharo View Post


    Anyone else notice that the author incorrectly wrote "VP6" twice, when they meant to say "VP8?" Sorta makes me wonder if even the author understands what the heck is going on here.



    Just saying.



    At least on one occasion, the author contextually used VP6 correctly. VP8 is a later incarnation.
  • Reply 12 of 89
    forisforis Posts: 25member
    So, yet another half-assed derivative effort from Google?



    Seems that's all Google amounts to these days - no wonder their stock is going nowhere.
  • Reply 13 of 89
    yuusharoyuusharo Posts: 311member
    Quote:
    Originally Posted by cwfrederick View Post


    can someone PLEASE explain why google is bothering doing this. why create all this hassle and confusion? what is in it for them? what was wrong with how H.264 was going? it seems pretty good with hardware acceleration and everything. i know there are some licensing issues, but they do not seem to be that significant.



    The problem with H.264 is that it is an encumbered format. In order for a browser to playback H.264, the makers would have to pay a licence to the ISO to use it. To companies like Apple, Google and Microsoft, its easy for them to do, but alternatives like Firefox, Opera and any number of Open Source browsers including Chromium-based ones, they simply cannot or refuse to pay such high fees just to support video playback within the browser.



    VP8 and WebM are Google's attempt to bring a modern, high quality codec that is available to anyone and everyone, so that they can deliver video within the browser and the HTML5 spec. Will it work? That's another issue.



    Google is doing this because the more people that use the web, the more traffic it drives to their services, which in turn drives up ad revenue. Anything that makes the web a richer experience to use is in Google's interest financially.
  • Reply 14 of 89
    glockpopglockpop Posts: 69member
    Quote:
    Originally Posted by djsherly View Post


    Can some explain what "open (but not free)" means? In what way is something open if you have to pay for it? Regardless of any other measures of the term "open", surely the final arbiter that you have to actually pay for it precludes the use of the term?



    Open means publicly documented. It doesn't mean free and/or public domain.



    The works of Shakespeare are open, free, and public domain



    Linux is open and free (within the terms of the GPL), but not public domain

    WebKit is open and free (within the terms of BSD) but not public domain



    Android's "with Google" is neither open nor free nor public domain

    Safari is neither open nor free nor public domain



    W3C HTML is open and free and essentially public domain

    VP6 is open and free but not public domain (but won't be free once the patents settle)

    H.264 is open but not entirely free nor public domain
  • Reply 15 of 89
    djsherlydjsherly Posts: 1,031member
    Quote:
    Originally Posted by Glockpop View Post


    Open means publicly documented. It doesn't mean free and/or public domain.



    The works of Shakespeare are open, free, and public domain



    Linux is open and free (within the terms of the GPL), but not public domain

    WebKit is open and free (within the terms of BSD) but not public domain



    Android's "with Google" is neither open nor free nor public domain

    Safari is neither open nor free nor public domain



    W3C HTML is open and free and essentially public domain

    VP6 is open and free but not public domain (but won't be free once the patents settle)

    H.264 is open but not entirely free nor public domain



    Thanks for that. That's the most concise description yet - but it's only one point of view. There are myriad:



    http://en.wikipedia.org/wiki/Open_standard



    I appreciate the word standard is also used. But the variation on 'open' are clearly evident here.
  • Reply 16 of 89
    zandroszandros Posts: 537member
    Quote:
    Originally Posted by siromega View Post


    This article could clearly use some editing...
    • In several places, the author says VP6 when it seems like they mean VP8

    • x264 is a video ENCODER not decoder




    Furthermore, h.264 is not a codec, and h.263 and h.263 are not MPEG standards, they belong to ITU-T. It would make more sense to write MPEG-4 Visual (which is similar but not identical to h.263) and MPEG-4 AVC (which is identical to h.264).



    I'm disappointed that Google didn't clean up the mess.
  • Reply 17 of 89
    christopher126christopher126 Posts: 4,366member
    I know I'm going to get derided by the following-Solipism are you there!



    But from a user's perspective, I find Google's products, other than search, of course, clumsy and fragmented. Basically, one level above MS. Apple is a hundred levels above Google.



    I can see why they want to 'expand' into other areas, but that's how unimaginative CEO's show some semblance of growth/leadership.



    I wouldn't be surprised to hear that Google is going into the frozen meatball business! Or buying Taco Bell!



    The CEO's of Google, MS, Dell, Sony, HP have the Walmart business model. Which is design and make 'crap' as cheaply as possible, sell it as cheaply as possible and 'hope' they sell a lot of crap to a lot of people.



    I think that most businesses after the first generation go out of business because subsequent CEO's really don't know what they are doing.



    Essentially, most businesses, 'are in the business of going out of business.' It's just a matter of time!



    Not every company can have a blockbuster, cheap, 'crap,' product like Coca-Cola, McDonald's, Starbucks, GM, MS, Budweiser, Gateway, Dell and sell the sh*t out of it!
  • Reply 18 of 89
    patspats Posts: 112member
    Quote:
    Originally Posted by cwfrederick View Post


    can someone PLEASE explain why google is bothering doing this. why create all this hassle and confusion? what is in it for them? what was wrong with how H.264 was going? it seems pretty good with hardware acceleration and everything. i know there are some licensing issues, but they do not seem to be that significant.



    They just wanted to create a furball. There is nothing wrong technically with H.264 but it isn't free and for alot of folks free is better. Did you ever turn down a free beer



    For Google they have muddied the water and created this love fest of all these folks bellying up to the bar to be googles new best friend. Apple has remained silent so they are the bad guy. Apple will be able to adapt as well as anyone if they so choose, but h.264 is the primary codec today on the iphone & ipad so any developer who wishes to target that market will need to continue to encode as is. Apple allows plugins for Quicktime so I'm sure Perian will have an update or VLC so folks can view VP8 on their Macs.
  • Reply 19 of 89
    cwfrederickcwfrederick Posts: 171member
    Quote:
    Originally Posted by yuusharo View Post


    The problem with H.264 is that it is an encumbered format. In order for a browser to playback H.264, the makers would have to pay a licence to the ISO to use it. To companies like Apple, Google and Microsoft, its easy for them to do, but alternatives like Firefox, Opera and any number of Open Source browsers including Chromium-based ones, they simply cannot or refuse to pay such high fees just to support video playback within the browser.



    VP8 and WebM are Google's attempt to bring a modern, high quality codec that is available to anyone and everyone, so that they can deliver video within the browser and the HTML5 spec. Will it work? That's another issue.



    Google is doing this because the more people that use the web, the more traffic it drives to their services, which in turn drives up ad revenue. Anything that makes the web a richer experience to use is in Google's interest financially.



    thanks for explaining.. still seems like there's something else going on though as well, seems like google has lost its easy-going, innovation-focused attitude since schmidt went all nutjoby
  • Reply 20 of 89
    orlandoorlando Posts: 601member
    How is this Apple news?



    This is an article about a Google technology. It has nothing to do with Apple. Articles on Android I can understand as it does compete with the iPhone, but why publish this?



    I come to this site to find out Apple news and rumors, not to get the latest news on Google.
Sign In or Register to comment.