Concrete Comparisons of Theora Vs. Mpeg-4
icknay writes "With the upcoming Firefox 3.5 and HTML5 video, there's natural interest in Theora vs. Mpeg-4, but without much evidence either way. Here's clips encoded at various rates to provide concrete comparison between Theora and Mpeg-4. Theora performs decently, but requires more bandwidth than Mpeg-4 (although this is a 1.1alpha release of Theora and Theora has a much better license than Mpeg-4). The quality comparisons are very subjective, but you can try the clips yourself and see how it breaks down. There was an earlier discussion about this, but it lacked much concrete evidence. (Disclosure: it's my page.)"
Both make terrible concrete. I recommend you buy some mix at the hardware store instead.
Disclosure: I'm trying to stress test my server. Please nuke it into the slag of its constituent parts.
Politics is the art of looking for trouble, finding it everywhere, diagnosing it incorrectly and applying the wrong fix.
I sort of knew Theora was a bit behind than Mpeg-4, but I didn't realize by how much. The Theora clip that has a 60% higher bitrate than the Mpeg-4 still looks fuzzier to my eyes (especially the moving grass).
Subjective measures are really the best way to evaluate video quality. There are (objective) quantitative measures such as PSNR, but they don't really tell you what the impact of video compression does for the eye. Video quality evaluations mostly involve showing clips (like these) to a large amount of people and asking them which they liked better. There is a lot to consider in terms of how the video responds to packet loss, jitter, etc.
The important line from the article: "Theora uses 1600kbps, or about 60% more bandwidth than Mpeg-4 to reach about the same quality."
Also useful to get some scale: "The uncompressed clip is 349 megabytes, while the 1600kbps Theora clip is 2 megabytes -- Theora may lag Mpeg-4 at this time, but it still yields great compression."
and "Theora is significantly better than Mpeg-2. Mpeg-2 required about 2400 kbps to hit the subjective quality level above, 50% higher than Theora's bandwidth."
Some things I would have liked to have seen: 250kbps, 500kbps, 2mbps, 8mbps videos, with subjective quality difference (rather than same subjective quality at different bitrates). Theora is apparently very good at lower bitrates, and not everybody has an awesome broadband connection, so they may be forced to watch lower-bitrate streams. Does the HTML5 video tag support selecting streams based upon available bandwidth?
The situation seems pretty clear to me.
Theora is just not as good as H.264; you can get better quality with the same bits in H.264, or similar quality in fewer bits.
Theora is, however, good enough for general use for Internet video. It's at least as good as H.263, which actually has been used for years. (Breathless claims that Theora would need twice as many bits as H.264 are just silly.)
Since Theora is free in all ways, browsers can just build it in, and sites like Wikipedia are going to use it. Since H.264 is better, sites with money will pay the H.264 fees to save money on bandwidth. And, if I had a web business, I'd hesitate to paint myself into a corner with H.264; the patent owners have the power to jack up the royalties if they decide to.
In short, both Theora and H.264 will be found on the Internet in the near future. And we can all just get along.
(Now watch Theora fanboys and H.264 fanboys team up to mod this post down through the floor... :-)
P.S. Ogg Vorbis never toppled MP3 from the throne. However, the existence of Vorbis may have exerted some downward pressure on the licensing fees for the paid codecs. In a similar way, the existence of Theora may cause the patent holders for the other video formats to not try to charge quite as much.
steveha
lf(1): it's like ls(1) but sorts filenames by extension, tersely
The license is the single most important thing. It determines whether or not you can use the software at all, or for your specific purpose, whatever that is.
When we're talking about establishing a standard for the Web, which everybody is expected to be a) able and b) allowed to use, there is nothing more important than the license.
60% is bit of a price to pay, however IMHO the point of the video tag is tighter integration with your website than is easily achievable with flash. Hopefully theora will improve and compete with mpeg-4, but there are still many advantages to using it over flash for embedded video (for stand alone pages, it doesn't matter so much as most users have a plugin to handle mpeg-4)
*Interacts with the rest of the page easily (TBF actionscript, et al can achieve this)
*Much lower cpu usage. While flash is particularly bad, theora is particularly good
*Cross architecture. As people browse the web on phones, pdas, etc, this does actually matter
*Much less likely to be exploitable (TBF webhosts don't care, but users should)
*Open standards.
I don't think theora should be seen as simply a tool to replace flash videos but it should be seen as an opportunity to better integrate video into sites and/or make video content available to more people annoy people with video backgrounds
IranAir Flight 655 never forget!
There are three things that this test doesn't consider:
For real life examples, that also include sound see "YouTube / Ogg/Theora comparison" and "Another online-video comparison".
There's a hidden treasure in Python 3.x: __prepare__()
The license means that every product that includes an encoder or decoder for MPEG-4 (including AVC / H.264) needs to pay the MPEG-LA a small free for every version they sell (or give away). This is incompatible with Free Software. Imagine that FireFox included an MPEG-4 implementation. The Mozilla Corporation makes enough money that they could afford to pay the maximum annual fee for this license, but what happens after you download it? If you give a copy of FireFox to someone else, then you need to pay the license fee (except you can't, because the MPEG-LA doesn't offer licenses except in large quantities). Maybe Moz. Corp. could pay that license too, but what happens in a few years time when they decide to stop? Suddenly, no one can redistribute any copies or derived works of FireFox. The root problem is that it is not possible to get a license for MPEG-4 that permits the kind of arbitrary redistribution that Free Software entails. Although the license fees are capped, they are capped annually, so each year you need to pay again or you no longer have a license to distribute code implementing the patents.
This is why Theora is better as a standard format. Anyone can implement it, at no cost and with no restrictions. H.264 is better quality, and so makes sense as an optional format for HTML 5 to support, but requiring it would mean that it would be impossible for the second-most-popular web browser to be HTML compliant. Of course, in an ideal world, the W3C, Mozilla Corporation, Google, or some other interested party would just buy the H.264 patents outright and let them lapse, but somehow I don't think that's very likely.
I am TheRaven on Soylent News
Only one point I wanted to mention (since the article and comments have all been--- oddly balanced for Slashdot)
The article points out that current Thusnelda is not as high quality as the best available h264 encoder at high bitrate video and unlimited encoding time. No argument there, it's true. Thusnelda still has a ways to go, despite the distance it's come; the current alpha still has no Adaptive Quant whatsoever, which will go in before final release.
However, the vast majority of users are not using x264. If you look at the h264 YouTube encoder, which has been designed for speed rather than 'work as long as you like to optimize the output', suddenly Theora is exactly on-par. In short--- Theora is every bit as good as the way that the real world is going to end up using h264 for the forseeable future. And the users of that 'inferior' h264 encoder seem pretty happy with it.
Anyway, this isn't disagreeing with anything you've said, it's simply a practical way to look at the difference.
Monty
Could somebody please explain to me why the license matters?
Because $x per copy costs a lot when you're distributing an infinite number of copies, as most Free Software programs are.
People providing decoders have to pay the license fee.
"Royalties to be paid by end product manufacturers for an encoder, a decoder or both (âoeunitâ) begin at US $0.20 per unit after the first 100,000 units each year. There are no royalties on the first 100,000 units each year. Above 5 million units per year, the royalty is US $0.10 per unit."
This causes issues for free software especially with the gpl because there is a clause which says you cannot restrict the distribution of the code but by having to pay a license fee this is a restriction.
Basically, open source projects that weren't initiated by a commercial vendor suck.
Huh? This is an utterly ignorant claim, almost not worth replying to.
But if you look at good open source projects, I doubt you can find even a significant minority (much less majority) that were initiated by a commercial vendor.
Anything from things like Linux to most libraries should in no uncertain terms confirm the idea that no, it's not commercial entities that seed most good open source products or projects. It is useful to also have companies starting OS projects, and sometimes taking ownership. But it's not much of a requirement. Just icing on the cake.
What is much more useful is the opposite: good open source projects resulting in new companies. That is much more common than the reverse.
I like paying taxes. With them I buy civilization -- Oliver Wendell Holmes