Google to Open Source the VP8 Codec
Several readers noted Google's reported intention to open source the VP8 codec it acquired with On2 last February — as the FSF had urged. "HTML5 has the potential to capture the online video market from Flash by providing an open standard for web video — but only if everyone can agree on a codec. So far Adobe and Microsoft support H.264 because of the video quality, while Mozilla has been backing Ogg Theora because it's open source. Now it looks like Google might be able to end the squabble by making the VP8 codec it bought from On2 Technologies open source and giving everyone what they want: high-quality encoding that also happens to be open. Sure, Chrome and Firefox will support it. But can Google get Safari and IE on board?"
We're all very quick to hit Google when they do something wrong. This one pretty clearly is "do no evil". Thanks Google!
Open-sourcing it alone means next to nothing: there are open-source h.264 codecs. The community still can't use it without a thorough patent examination, a universal royalty-free patent license, and an indemnity guarantee.
According to some things i read the other day, the hardware support for h.264 is really just a programmable DSP in most cases, so they could program support for VP8 if it were being seriously considered, and that appears to be the direction of things.
I expect there are some programable components, but adding whole a new codec to existing hardware decoders may be asking a bit much.
However, On2 already offered VP6 video decoder hardware designs like this one: http://www.on2.com/index.php?549
And, as I understand it, one of the big factors in the VP8 codec design was correcting issues with VP7 that made it hard to implement efficiently in hardware (or parallel software for that matter). So, I would expect them to be working on VP8 hardware decoders.
"The worst tyrannies were the ones where a governance required its own logic on every embedded node." - Vernor Vinge
I would disagree. The competition locks themselves out by keeping the best quality codecs closed source. If Google can equal the quality of an expensive codec, and make if open source with no royalties paid by anyone to anyone, that's great. But, don't blame Google for locking anyone out! It's still a "free market". Anyone can make an even better codec, and sell it for less!
"Windows is like the faint smell of piss in a subway: it's there, and there's nothing you can do about it." - Charlie Br
The amount of money that Google paid for On2 was pocket change by Google standards. And the amount of money that On2 made every year was in the noise level by Google standards. So it never seemed likely to me that Google bought On2 with the intention of selling codecs for money.
If VP8 really is as good as On2 claimed, Google could save some pretty good money by serving up YouTube videos in VP8 format instead of H264. And even better, Google would not have to worry about the H.264 patent owners changing the rates or changing the rules. So it really would be in Google's best interest if all of the YouTube users were able to view content in VP8. But given the head start of H.264 in the market, the only possible way for Google to get everyone to use VP8 would be to release it for free.
I'm happy about this. This is just a win/win for everyone. If VP8 is decently competitive with H.264, and it is completely free, then as shutdown -p now commented, there is no longer any need to choose between good compression and free software. Everyone can have both!
steveha
lf(1): it's like ls(1) but sorts filenames by extension, tersely
that's all.
I think that your position is flawed in two major respects:
One, codecs are, largely, infrastructure type software. They exist to do the unsexy-but-necessary job of getting content from point A to devices B, C, and D as effficiently and quietly as possible. Like networking protocols, interoperability and standardization are key, you want to be able to release a video and have it Just Work, no matter the end software or device, the same way that you can pretty much assume that any modestly sophisticated computer will speak TCP/IP correctly enough. Performance counts, since bandwidth and disk space, and battery life are all not free; but, as with operating systems, "compatible" generally beats "superior". Also of note, competition and growth do occur among infrastructure software, they just tend to be strongly shaped by the value of compatibility, and so growth and change tend to come about either through backwards-compatible evolutionary shifts, or through sudden, swift changes.
Two, there isn't much evidence supporting the thesis that FOSS destroys competition. It does tend to drive down prices(and, to be fair, it is quite possible that it destroys the role of the "proprietary-but-cheap 2nd or 3rd string player", either replacing it with free software, or with the services of "free as in freedom but not as in beer" software integrators and consultants); but, even in markets where the price is basically zero, you can usually find, at the very least, several FOSS projects duelling for users. Quite a few markets don't even go that far. If anything, by providing a solid baseline, they force proprietary vendors to compete harder.
In the specific case of video codecs, the proprietary market was already largely uncompetitive before Google showed up. Everything was either h.264(or very close variants, like VC-1), at the mercy of the giant-pool-o'-MPEG-LA-patents, or various more or less obscure legacy crap.
The whole discussion is moot in my opinion. Hear me out.
What do we need of online video?
Well, it should be ubiquitous. Everyone should have it available, or else web developers will be chasing their tales. FLV was a nice improvement over years gone by where a web developer couldn't predict with any accuracy what video playback facilities would be available to any particular user.
Sites like Youtube, break.com, theonion.com, are almost entirely based on online video and are only possible if most viewers can view the content with minimal fuss.
A codec doesn't need to be perfect. It just needs to be free as in beer, and everywhere. Flash did it, but it was proprietary and people didn't like it. Ogg Theora is free(in all the ways that matter, shut up Theo), but you'll never get native support for it from Microsoft.
To meet the needs of everyone, Google is giving us all VP8. It may not be the best, but if it's freely available to all browsers(native ideally, or by plugin), then it meets the needs of the web developer community to avoid recreating the wheel for every browser.
You can't legislate goodness. Let each to his own destiny, by will of his freely made choices.
Your hypothesis fails the falsification test. Basically no matter what Google does, people like you are going to say they did it for their direct advantage.
To make it a scientific opinion, you have to give an example of an action that Google will take that will convince you they were not evil. Sometime ago, slashdotters were saying that if Google open sources VP8, that would be proof enough. Apparently you want more. So tell us. What do you want?
First, I doubt that it will lock out competing codecs. At best, it will create a common interchange format. There's no reason why software wouldn't continue to support whatever codecs were useful to people. The only thing it might do is make it hard for patent holders on other codecs to get people to pay for licensing fees, if there's a superior royalty-free format available.
I also disagree that video codecs aren't "infrastructure". In my opinion, all file formats are infrastructure and are required for interoperability and compatibility. People can freely dream up new applications while still standardizing the formats those applications output to.
But finally, I disagree with the implication that your "second type of Free Software" should be considered a threat to a competitive ecosystem. Firefox hasn't locked out competing browsers and OpenOffice hasn't locked out existing office suites. MySQL hasn't locked out all other databases. Other FOSS can compete, and they can even start by forking the existing project. If proprietary software is superior enough that people are still willing to pay for it, then people will buy it. FOSS isn't a threat. to anyone doing a good job. It's only a threat to companies who want to rest on their laurels and rely on vendor lock-in to make a profit.
The GPL is not the only reason that Firefox would decline to place an encumbered technology in their browser. However, you are incorrect in stating that GPL2 would allow this. Under the terms of GPL2 section 7, the only allowable patent license would be one that licenses all GPL software used by anyone, because the patent license you take may not restrict any of the GPL terms - like modification, and of course you can modify any GPL program into another GPL program.
Bruce Perens.
This is one of those things which gets me fuming more than the video tag being the most poorly thought out design issue ever on the web.
.NET in the past, but nothing with as much complexity as VP8. H.261 works with minimal CPU consumption on .NET. I've also implemented much of H.262 with little additional overhead. With the exception of the more expensive prediction methods which are definitely points where highly optimized code is beneficial, CODECs with the complexity of H.264 and VP8 should be doable.
.NET and I know it's supposedly scheduled, but cross platform vectorization frameworks are EXTREMELY complex. And to avoid them ending up with a piece of crap VM design like Java's, I'm truly hoping they'll delay the feature until they get it right.
Apple delivers video through the Quicktime architecture and Microsoft delivers video either through DirectShow or MediaFoundation. These frameworks are pluggable and CODECs can be easily installed on these platforms.
What is missing is a method of delivering the CODECs to the users. Google can make the CODEC part of Google Toolbar, Google Desktop, Google Earth, etc... there are countless ways in which Google can proliferate the CODEC to the consumer. The real issue comes in mobile devices. Delivering to the Microsoft and Apple phones. On the desktop, the CODEC issue is already taken care of.
As for supporting the VP8 CODEC on iPhone, I don't recall seeing anything that specifically bans third party CODECs on the phone itself. In fact, given that the hardware encoder in slingbox appears to be either WMV9 or VC-1 (I haven't verified it, but I read it somewhere), SlingPlayer for iPhone almost certainly is delivering a 3rd party CODEC to the device. It might simply be an issue of making a new player that triggers on VP8 media.
As for the Microsoft phone, it's both easier and harder. I have implemented low complexity CODECs in
My greatest dreams at the moment is Microsoft implementing vectorization extensions in
All said and done, VP8 can be proliferated pretty easily. At least for a company like Google who has both the means to implement it as well as the means to deploy it.
http://www.on2.com/index.php?603 I found them on on2's site. I assume those VP8s are at maximum quality, but if those are real, and this is fully open sourced, Theora AND H264 are in for a beating. I imagine that this will replace a lot of the internet... video if it's really that good.
.... google can also just implement the new codec on youtube... the whole world will follow.
ensured that only someone else with equally deep pockets has the time and money to engineer something so clearly better that they can recoup the time investment by surpassing VP8.
Not at all. The cheapest and easiest way to surpass VP8 is simply to take VP8 and improve it. Minor investment, not that much to recoup that it's a problem. If you have a problem that needs a better codec, it might even pay for itself.
It's the restrictions of patents and copyrights that make that difficult; they make it harder to engage in mass reuse, necessitating the massive investment of rewriting things from scratch. Copyleft ameliorates the problem, but nowhere near as effectively as outright abolishing intellectual monopoly rights would.
Hmm, let's try to put it into a computer software context. If the only optimization level your compiler had was "-Op" which did perfect optimization by doing a brute-force search over all possible sequences of machine code of a certain size (let's assume that the input data distribution is known), but using this compiler option then required several years of computer time to finish the compilation, this wouldn't be "good" (i.e., useful) in most scenarios, and no one would do any optimization at all.
In other words, attaining (or even trying to attain) perfection in a specific goodness metric almost always causes other goodness metrics to give very non-optimal results. Another example of this is the "over-fitting" problem in machine learning.
There's no bigger software patent problem than the video situation, and Google's track record is good. They stockpile software patents, but I haven't found any cases of them using their patents aggressively. 29 patent holders are claiming to have a total of over 900 patent on h.264! There's just no way to invalidate them all.
The only way we can win this is by abolishing software patents (I'm working on it, but it won't happen tomorrow :-), convince everyone to move to Theora, or convince everyone to move to some super new format.
Expert in software patents or patent law? Contribute to the ESP wiki!