Codec Wars explained

Updated: May 14, 2011

Do you know what's more boring than browser benchmarks? Do you know what's even less exciting than the IPv6 adoption saga? Yes, you guessed right, it's the ongoing war between media giants over the future of digital compression of audio and video formats.

But let's put (most of) sarcasm aside. Again, for all the wrong reasons, the codec wars are marketed and written and talked about, without giving the reader what he really ought to know; not the name of the file or the codec used, but whether this will somehow affect his ability to enjoy music and videos on the Web. Today, I'm going to clear the fog.

Teaser

Let's explain things a little

The world of multimedia thingie is not a simple deal. Common people do not understand the difference between the container and the actual software. Container format is what you normally see when you grab a file, e.g. .avi or .mov. Codec is the software implementation, e.g. x264. Normally, media players contain codecs in the form of plugins and libraries, allowing on-the-fly interaction with media files and their compression and decompression in real time.

Software that can manipulate encoding/decoding as well as the video and audio containers includes popular programs like mencoder, transcode, ffmpeg, VirtualDub, Avidemux, Kdenlive, and many more. My Frankenstein movie article is a good example.

Codecs versus containers

Therefore, when people talk about codecs, they normally refer to behind-the-scenes implementation of algorithms in the software and media files, which are transparent to end users. This is the main reason why all the media buzz about the ongoing war between Google and Adobe is so pointless.

Let me explain, please.

The war, summarily summarized

It goes like this. Google does not want to be an Adobe hostage anymore. Having its users run the Adobe Flash Player to view every single one of Youtube movies encoded with H.264 codecs costs money and inhibits Google's growth. Instead, Google wants to move to an open implementation called VP8, which translates into WebM technology when twined with HTML5. Still confused? Rightly so.

webM

All right, let's try to be even more to the point. Flash/X.264 is old school. WebM is new school. Flash currently dominates the animation and media Web market. Google wants to change this reality. Companies like Mozilla, Opera and even Microsoft support this. Adobe sees the inevitable and unstoppable danger in HTML5 and will eventually allow its Flash Player to run VP8-encoded media.

As you may have guessed, it's about who controls the market and the technology, who dictates the pace, who sets the prices, and who has the biggest codec. Definitely a noble cause, but totally boring.

HTML5

What does this mean to you as a user?

Unless you are a developer, absolutely nothing. For all practical purposes, nothing changes. Modern browsers like Internet Explorer 9, Firefox 4, Chrome, and others all support HTML5 and WebM, hence any introduction of technology into the Web arena will be transparent. Likewise, if you use the Flash Player, you will still be able to see Flash media online. In fact, you can watch both Flash and HTML5 video on the same page at the same time.

Youtube playing

If you want to learn more how things will look like when HTML5 finally launches in full steam, then you could roadtest Youtube HTML5 trial. This is a good opportunity for you to decide what you prefer more, if anything.

Who should you support?

Let's assume you have some spare time on your hands. Who should you support then? Naturally, the underdog attitude wins. It's always the champion of freedom and openness that ought to win our hearts. This war is no exception. Having a well known and open format helps standardize things, reduce monopoly and improve technology.

Now, as a developer or a website owner, you may have a special interest, since the technology could govern your revenue or success. It's more than just which algorithm is used. It boils down to Flash versus HTML5. In your case, it's not just fancy words, it's the quality of audio and video delivery, it's the scripting language, the backend, the debugging tools, the ease of use, the portability, everything. Can you be impartial? Hardly.

In this case, you should support what works best. And this has yet to be determined. Flash has been around for a while. H.264 family of codecs has been around for a while. WebM is a new kid on the block and has a lot of fighting ahead.

War ahead

Some more reading

Here's a very not so simple article summarizing the differences between various video codecs. It will confuse you, most likely, which is a good thing, so you need not bother with this kind of things anyway.

Conclusion

And that's it, another confusing topic de-mystified. You now walk the walk and talk the talk. Next time a geek asks you whether you support Vorbis, Theora, Matroska, XviD, or something else entirely, you won't look dazed. You tell them, straight.

For end-users, the outcome of this war is not that important, although, if Google wins, it could bring about a digital revolution of openness that might propagate into other segments, forcing media moguls to reconsider their packaging formats and usage models.

We might yet see a total demise of DRM, as a direct result of the Web battle. This should be good for all of us, which means we ought to give Google our support. Now, 'tis a big company, so it automatically draws heat. But in this case, it seems like it's championing for the underdog. Well, I guess that means something. Oh, wait a second. Or so I thought before April 11. Now, I'm not so sure. I guess it's all about money, after all.

P.S. Iwo Jima gun fire and the Crusade images are in public domain.

Cheers.