Theora, H.264, HTML5, and Why Software Patents Are Giving Everybody Fansub Ice Cream
DISCLAIMER: This post is mostly about debunking myths and incosistencies. I’m going to start off by stating that I don’t know all that much about software patents, and that I really don’t care about them or legality. If the GPL Legal Team wants to sent a van for me, go right ahead, I violate your shitty license daily and I’m not going to stop for some freetards and their dignity. Additionally, although I condone and support piracy in some circumstances, this does not include supporting piracy of most commercial applications, especially those of Adobe and Apple. I wholeheartedly support stealing whatever you want from Microsoft.
Recently, there has been a lot of talk of Mozilla and HTML5, specifically over the proposed video tag. Mozilla and Opera are opting for Ogg Theora while Apple and Google are going for AVC (H.264). While I am a long-time Opera user, the change away from Qt has not pleased me, and the 10.5 screenshots are ugly as sin, so it looks like I won’t be concerning myself with that any time soon. I hate GTK so Firefox isn’t really an issue either. That does of course leave me with no browser to use but I’ll figure something out. The important thing though is that Mozilla Firefox is the biggest open-source browser in the world, as far as numbers go, so using Theora as opposed to AVC is a bit of a problem, and that is where the issue that prompted this post came in.
There is what I like to think of as a communal uproar on the internet about this. A schism if you will. Everyone is divided on what Firefox should use, even though the team has said (for the moment) that they’re going with Theora. The one thing that really got to me is people assuming that OGG == Theora. This is not the case. Another problem is that people assume x264 is an open-source implementation of H.264, also not the case. This article really shows that off fairly well. While x264 is an encoder, H.264 is a standard. OGG is a container and Theora is a codec. People messing up their terms has made following articles like that one rather difficult at times.
The main problem as I see it is that people are disillusioned by what Theora is capable of, and exactly how the royalties for H.264 work. Freetards say things like “contribute to Theora to make it better then” but as the codec is patent-free, it is fairly limited in what can be added to it. There is very little more that Theora can do, and nothing it can do to even approach AVC’s quality.
H.264 on the other hand has some difficult to comprehend and confusing patents involved. As long as you don’t intend to sell your stuff publically enough to grab the MPEGLA’s attention, there is really no issue though. Not all patents are even valid outside of the US. A patent in America isn’t really going to mean much to someone in Europe as the European Patent Convention doesn’t allow software patents, and from the pool of developers I know quite a few are european. There are of course countries where AVC is patented in Europe, but I don’t think the MPEGLA isn’t going to track someone down to backwater Norway (or anywhere else) just to yell at them for using unlicensed H.264. If you encode something with AVC and stick it on your website, they’re hardly going to come after you. It certainly does explain a bit about why Madman and other silly companies use VP6 though.
Another thing I see a lot of is people going on about “x264 is ok to use, just not H.264!” As I wrote above, they are not comparable like that at all. Additionally, some people are writing that OGG/Theora have patents too, where they don’t at all. The whole point of Xiph is to have no patents, which is mostly why it’s so shit terrible. There is of course the ffmpeg project which sort of ignores patents altogether, although they are very heavy-handed on GPL violations, especially of their own work, to the point of a wall of shame. It just shows how childish and bigotted the FOSS community can be.
What it comes down to is that H.264 has royalties and patents, Theora does not. Theora can be used in anything but as it’s a piece of shit as far as codecs go, it shouldn’t be used under any circumstances. H.264 is free for non-commercial use, something people seem to either forget or ignore, and the fees for commercial use are usually covered by your software and/or hardware, and not as Ben Shwartz writes, completely separate.
For an Operating System or commercial encoder/decoder to say that distributing your AVC files may require an additional fee is entirely correct, and there is no problem with it. If you are using that software in the first place and distributing commercially, you can afford the fees anyway, they really aren’t that high, and they have thresholds on where they begin and are scaled depending on your needs. That is to day, if you distribute only one copy, or even more than one but still relatively small, say as a video editor for functions, the fees don’t really apply. The standard does have a royalty-free period to encourage adoption, which has also just been extended.
As far as royalties go for a browser to decode things, it would be far simpler for it to rely on the system. On windows that would mean using VFW to select a decoder, and in *nix, my guess is libavcodec. This really kills the argument that free browsers cannot decode AVC without having to pay for it. Nothing is stopping Mozilla from making a paid version of Firefox that links to MainConcept’s decoder but I hardly see the point in that: almost all video online currently is H.264 and the browser handles that perfectly well in the flashplayers, why does it need to suddenly stop handling it so well?
Furthermore, along with codec wars, people are starting to get into container wars. There has always been a cold war as far as containers go (Hi NUT) but the arguments that one cannot stream Matroska for example are just ridiculous. Almost all streaming now is just sequential downloading of the file or beginning from a specific point and then downloading, as opposed to ‘real’ streaming. Calling a container a codec or incapable of streaming just shows off people’s ignorance and stupidity.
Naturally there is some contestation in the business world, something Jason Garret-Glaser (Dark Shikari) covers extremely well over at his blog, mostly about Adobe trying to take over the world and how everything besides Windows is irrelevant. In Ben Schwartz’s article above, Aki Jäntti (Kuukunen) makes some interesting comments about comparisons of AVC and Theora, and how optimisation effects it.
I too was present during the discussion of the –tune option in x264, and the developers really did put a lot of thought into it, especially on the Touhou setting. Something to note is that a game like Touhou is excellent for comparing codecs, its rapid changes in motion and bright simple colour make it rather good for testing at lower bitrates, which is about the only thing Theora is capable of being compared against.
I believe that most people comparing codecs aren’t really good at optimising all the codecs they’re working with, and as such most comparisons are skewed. As far as commercial use goes, x264 is on the brink of nal-hrd being committed, and once VFR works with nal-hrd I would imagine x264 could then be used for mastering standards compliant blurays, and would become a real contender. As far as visual quality is concerned, x264 is by FAR the best encoder in the world at this point in time.
Finally, to link this all back to patents and ice cream, this comic shows what I am talking about rather aptly. People in the FOSS community are so anti-patent and buying ANYTHING that they will use any free alternative, no matter what. They shun people for deciding against free things even if there is no better commercial option purely because they believe too strongly in flawed ideals. This is the main problem in the argument against AVC and for Theora in Firefox. They are too hung-up on using something free, even though it’s terrible, to notice that they CAN use H.264 without any problems. The entire argument is pointless, but it still drags on.
I think this is the longest post I’ve ever written, I completely and utterly blame stupid freetards for this, especially the Mozilla foundation, which honestly needs to die. Firefox is a terrible browser and I’m going to be an opinionated little elitist and not use it and there is nothing you can do about it. Long live x264 and Qt based webbrowsers.
Comments
Leave a Reply