login | register

VP8...

VP8...
21st Sep 2010 - 11:53by jansic
Google's new VP8 codec is possibly the biggest pile of rubbish I've ever seen.

The spec is unclear, unspecific and in some places entirely incorrect; it's more like a teen's A-level CS project than something a team of computer professionals would produce. VP8's bitstream layout is x86 centric and carries all sorts of multi-core x86 optimisation baggage making it much less suitable for ARM implementations. The probabilistic decoder is nether as simple and speedy as CAVLC nor as comprehensive as CABAC - it's more like somebody's typed in an example of a huffman coder straight from an information theory text book. The result is a decoder whose performance and capabilities have been limited by the platform it was designed on.

The core of the decoder's prediction modes would be a carbon copy of H264, if it hadn't had all the good parts (like 8x8) taken out. A theme that makes it technically inferior to H264 in a number of ways, including a dumb loop filter, no B-frame prediction, lack of YUV 422, 444 and Monochrome support; and bizarre design decisions like overpowered chroma filtering and a minuscule number of reference frames. I question its robustness when streaming for video conferencing too, as there seems to be no way to add redundancy to the video stream.

I'm all for open standards but what annoys me most is that it'll be forced down our throats regardless; because it plays well with open source and the company behind it has huge amount of influence in the web world. It's retrograde step in video coding. What's with the name too, WebM? Come on, why rename the Matroska container? Is this some kind of ploy to make something sound better than it is to people who don't know any better?

It's like Web 2.0 all over again.

</rant>
Replies: