On Ogg, Vorbis, and Theora

A few weeks back, I read an interesting take on the Ogg format, which basically claimed it was a terrible format for streaming video and audio streams. Personally, I know very little about the problems that they’re trying to solve here. However, I’ve been using Ogg (and specifically, Vorbis), for years, but it had never really gained much traction (outside of the Free Software community, and a lot of games). The lack of traction suggested that maybe, just maybe there was a legitimate technical reason behind this lack of adoption.

Fortunately, the creator of the Ogg format took umbrage to the analysis above (probably in part because it was Slashdotted), and decided to offer a point-by-point rebuttal. It comes down to the fact that, as far as Monty is concerned, Ogg works very similarly to other container formats, even ones that the original author held up as gold standards, like Matroska. Clearly, if there are any weaknesses, it’s not likely with Ogg.

And yet, the standard for audio interchange and online music quickly became MP3, a format well known to be patent and license encumbered, instead of the (to the best of anyone’s knowledge) un-encumbered Vorbis. Why? The two formats are really similar in performance characteristics (sound quality vs. bitrate). Yet, MP3 is by far the standard. Hell, the Ubuntu One Music Store, or rather the store that backs the U1 Music Store doesn’t even offer Vorbis as an option.

I think the most likely cause of this was simply that MP3 was the format that everyone learned about digital music through, specifically due to Napster, since Napster only worked with MP3, and Napster was big almost two full years before Vorbis’ first release. Plus, the first runs of portable audio players only supported MP3 as well. Between these two factors, how could Vorbis possibly have taken off? Note: I don’t count M4A/AAC. It’s still, to this day, only used on the iPod and with iTunes. Yes, it’s big, but that’s a factor of the iPod’s success, which is an completely non-technical issue. Before M4A, MP3 was (and is) king. The other problem Vorbis faced, was simply that Tremor, it’s fixed-point version suitable for embedded use, wasn’t available until 2002, almost a full year after the iPod had begun to dominate the market, and to date, no iPod has included a Vorbis decoder.

By 2002, when Vorbis had all the pieces necessary to be a real contender (a better sounding release, and fixed-point version), MP3 was so deeply entrenched that it didn’t have a chance to unseat the king. Plus, the MP3 patent holders have, to date, sworn not to enforce their patents on open-source projects, and they charge their fees to the hardware/software producers, so to most people, the encumberedness of the format is apparently a non-issue.

Then, came Theora, a video format based on the VP3 video codec. It’s been in process since 2004, and frankly been mostly usable since that time, even though it wasn’t considered final until 2008. This means that the extensions to VP3 that became Theora didn’t even begin until the current King of video interchange, H.264, was completed in 2003.

And why is H.264 King? Well, most people encode in H.264 because the standard mechanisms to distribute video via the Web, Flash. And now, Safari, Chrome, and IE9 are all committed to using H.264 for video. Firefox, trying to make a stand, only support Theora at this time (to be fair, so does Chrome).

The corporation that owns most of the patents around H.264, MPEG LA, has promised not to charge royalties on use of the format for freely distributed content until 2016. What will happen then? Well, we’ll see in 2015 (when they’re likely to make a new announcement). But either it will remain free, or a lot of people will be frantically re-encoding to try to avoid going into violation.

Plus, while using the format may be free (in certain circumstances), creating software or hardware to encode or decode the codec is absolutely not free. So, anytime you have something that uses this hardware, you’re paying that cost somewhere. With Flash, at least, that cost is being paid by the people buying the developers tools from Adobe (not to mention buying the encoders). Google, Apple, and Microsoft are all paying licensing fees to distribute H.264 decoding code with their browsers. Mozilla and Firefox know that they can’t do that without limiting the ability of re-distributors (like Ubuntu) to distribute Firefox, which is unacceptable to them.

However, the current great hope to deal with the encumbrance issues with H.264 isn’t to look at Theora, but hoping that Google may open source the VP8 codec they bought with On2, later this year. While that would be an awesome development, the question still remains: Is VP8 really any better than Theora?

From a technical standpoint, I have no idea. But I don’t think it has anything to do with Technical issues. A person contacted Steve Jobs to ask about Theora on the iPad, due to Jobs’ comments about Flash’s lack of openness, when Flash uses H.264 like Safari does for video. His response was simple:

All video codecs are covered by patents. A patent pool is being assembled to go after Theora and other “open source” codecs now. Unfortunately, just because something is open source, it doesn’t mean or guarantee that it doesn’t infringe on others patents. An open standard is different from being royalty free or open source.

This is clearly a case of ‘better the devil you know, than the devil you don’t’. No one’s willing to trust Theora because they don’t know for certain that it’s covered under any patents. Meanwhile, H.264 is known to be encumbered, even though it could (as likely as Theora, at least) be covered by patents we don’t know about yet.

Plus, apparently people have been blowing smoke about a patent threat against Theora for years. So far, Xiph’s lawyers don’t see any credible threats on the horizon.

Personally, I’m with Monty. For one thing, Theora is an extension of VP3, which is older than H.264. If someone was going to make a patent claim on Theora, they need to do it before they lose their ability to enforce any such claim. Plus, MPEG LA doesn’t want anyone to develop competing codecs, so keeping up this fiction that you’d be hard pressed (they won’t say “can’t”) to create a Video codec that doesn’t violate their patents greatly helps their bottom line. Unfortunately, they had a lot of money, which gives them unfortunately advantage in the legal system.

Ogg, and it’s children Vorbis and Theora, have been the unfortunate victims of one of the most effective FUD campaigns, I’ve ever seen. And it’s been largely successful, in large part because the Hardware support has been lagging behind. Until we start seeing Vorbis and Theora in more hardware (and Android is definitely helping with Vorbis), it’s going to be difficult to gain any traction. And I tend to agree with those who feel that we can’t build Open Standards on closed platforms, despite what Steve Jobs might feel.