Two days ago we posted a comparison by Greg Maxwell of low and medium resolution YouTube videos vs. Theora counterparts at the same bit rates. The result in that test was that Theora did much better at the low bit rate and more or less the same at the slightly higher bit rate. The conclusion being that Theora is perfectly appropriate for a site like YouTube.
Now Maik Merten has done the same with videos at HD resolution, comparing videos encoded by YouTube and a video encoded with the new Theora encoder at a managed bitrate. The results? Go have a look at the images in the post. Tell us if you can honestly see a major difference. We can’t.


The ogv’s actually appear slightly superior in sharpness from what I’m seeing here… hello YouTube?
The person’s hair is much, much crisper in Theora.
The hair and the tree branches both, yeah.
Furthermore, according to the previous post, this encoding used the official Theora encoder. The one in FFMPEG does even better.
In the images in the post, the Theora quality is better, particularly for the person and his hair. But with the 1280*720 images I can’t notice differences.
Actually, his face (skin) also looks much better in Theora. Look also to his ear, there is slightly more detail in the Theora version where it in H.264 looks blurrier.
“Tell us if you can honestly see a major difference. We can’t.”
Fishing for compliments?
The hair and the skin texture looks sharper on the Theora picture.
the grain of the picture, the aspect of the hair, details on the cars, and even subtle contrasts on each color zones, theora seems more pleasant.
But this is a still image. Better haver a comparaison in moving images.
The tree is also better in theora.
Thanks.
Interresting… With Media Player Classic, the HD ogv is using nearly 10% less CPU. Although seeking is slightly longer…
Yeah right, let’s compare the worst h.264 encoder in the world with the latest theora encoder.
Even quicktime h.264 encode it’s better than that.
Obviously, the Theora image is sharper.
There is a stronger “blocking” artifact on the sweater in the Theora screenshot given.
I can, in fact, see quite a difference there. The colors, and brightness are quite different, and look much better in the first one, in my opinion, but it is indeed hard to tell which one is the more correct without a reference rendering, I guess. The ‘HD’ screenshots look pretty much the same, though.
Anyway, that’s not the whole point: if Apple and Google make using ogg theora a goal, I’m pretty sure the encoder will gain enough love to have the quality everyone desires.
As for WebKitGTK+, ogg theora is certainly our primary target! Keep rocking!
@Damiog – We don’t know what settings YouTube is using, but we do know that most people see that as the standard for video on the web today. And it wasn’t so much about being the most awesome quality for video, you can tune H.264 to produce higher quality videos at much higher computational cost. Miak says that in his post. This is about 1. showing that Theora is fine for a site like YouTube (it is) and that it wouldn’t cause YouTube to explode. (it wouldn’t.)
I visited the page and clicked on the Theora example, but it just started downloading in my Download manager.
YouTube let’s you watch the videos right away.
I am using the latest in browser tech, Safari 4.
@enefekt – Install the xiph plugin for quicktime and it will likely work for you: http://www.xiph.org/quicktime/download.html
The H.264 looks “better” – smooths the skin to have a much better taint without akne/wrinkles – just like a good make-up
.
Encoding wise, of course, Theora looks crisper in this particular image in the post.
@enefekt: also, notice that Safari 4’s behavior comes from the fact that Apple decided not to support ogg Theora by default; this is exactly what this discussion is about: if all the major vendors commit to support this open standard instead of only supporting closed/patent-encumbered codecs, everyone will benefit.
Also, notice, that if you did not have Adobe’s Flash installed (I’m not sure whether Apple ships that by default), you’d not be able to view videos on Youtube.
@Damiog, that’s not the point. The point is *not* “Theora is better than H.264″ (it is not, and if you read carefully you’ll see nobody tried to make that point) or “YouTube is using the best H.264 encoder”. YouTube *cannot* possibly use the “best” available H.264 encoder at the best available quality parameters because they need a) high encoding speed and b) streaming-compatible “spike-free” bandwidth (ruling out e.g. traditional 2-pass encodings or plain “constant quality” VBR).
The point is that YouTube isn’t delivering best-possible quality (they can’t) but still grew to a very very popular service and that one can have comparable quality with free codecs.
Wow. Clearly on the smaller image, Theora is much better. It shows low-contrast details much better (sweater, hair, etc). On the larger one, the theora may be better, but it’s hard to tell without the original frame for comparison. I say it may be better, because there is higher fine-detail contrast (look around the mouth, corner of his lips). But this could just be perception, it could be achieved by applying a filter to the .h264 version. You really need to see the original to know for sure.
Since i have good enough connection + FF3.5 i tried to watch theora video and here what i think.
Looks good and promising.
But currently:
1. No controls for resizing (full screen ?) but this is FF.
2. No HW acceleration for the theora codec. I mean C2D was near 100% usage.
Are those frames from “Steal This Film 2″?
Theora is definitely better here – but h264 uses about half of its bitrate to put a new keyframe every 60 frames, while Theora seems to have a keyframe interva of 10 seconds. I really hate to be a Theora-basher but I can’t see how this is fair.
h264 also uses several other low-end settings (no cabac, no b-frames, etc) but it’s just a youtube’s weirdness.
Still, I can’t see how this comparison can be seen as Theora vs h264 comparison – it’s a my-best-Theora-settings vs Youtube comparison. Use x264 and encode stuff yourself if you want to compare technologies.
@sysKin – once again, this isn’t a comparison of H.264 at its best vs. Theora – it’s a question of whether or not Theora is appropriate for the world’s most popular video delivery services.
@sysKin: The keyframe setting of 170 frames was chosen because in the current alpha Theora encoder the bitrate management window is directly coupled to the keyframe frequency. Once there’s an API to change those independently one would perhaps choose a keyframe frequency to be more like 60-80 frames and a bitrate management window for ~8 to ~10 seconds (to be more-or-less similar to typical buffer sizes). Thus the keyframe interval of 170 frames is merely provisional a tradeoff.
Greg’s idea of using Youtube to do the H.264 encoding was a stroke of genius.
It’s amusing to see people argue that Youtube doesn’t know how to encode H.264 properly.
Hi again,
> once again, this isn’t a comparison of H.264 at its best vs. Theora
Yes you’re right, I apologise – it was referred to me as such comparison and I didn’t read it with open mind.
> The keyframe setting of 170 frames was chosen because in the current alpha Theora encoder the bitrate management window is directly coupled to the keyframe frequency
I was actually wondering about that, but are you saying you encoded using some kind of single-pass rate control? If so, you can definitely boost quality even further by encoding “properly”, using two passes (unless I’m missing some technicalities here).
> It’s amusing to see people argue that Youtube doesn’t know how to encode H.264 properly.
Yes it is. In fact if Google says Theora would cost them bandwidth, the easiest way to laugh them off is to point out that their h264 could easily be twice as efficient. I don’t know what encoder they use (most likely an early fork of x264) but number 2007 gives a clue.
@sysKin: Yes, the Theora encodes are using a single-pass rate control and yes, with a multipass encoding setup one could squeeze more quality for any given bitrate out of it. However, I feel that “classical” 2-pass encoding isn’t an option for streaming video (neither for H.264 or Theora) because the very reason multipass-encoding approaches increase quality is that they dynamically distribute available bits to those frames that can benefit most and saves bits on the “easy” frames. This means the video can have plenty of bitrate spikes that may empty the client’s buffer if the encoder has no buffering model in place to detect and prevent this – one would need a “buffer-aware” multipass encoder, and I’m not aware of such a thing being in existence (there for sure currently isn’t such a thing for Theora). It may be a worthy improvement provided one can afford the speed-hit of going multipass.
Hi Maik,
> one would need a “buffer-aware” multipass encoder, and I’m not aware of such a thing being in existence
Any multipass DVD encoder has that – because DVD also has buffer constraints. The thing is called Video Buffer Verifier. Let me assure you it’s commonplace in encoders. If you want to look it up in opensource then for example XviD uses VBV any time you specify a profile and level.
> This means the video can have plenty of bitrate spikes that may empty the client’s buffer
Yup, I suppose the distinction is whether client has restricted bandwidth or restricted data transfer. I’m an Aussie so I have plenty of bandwidth (~6 Mbit/s now) but every byte is counted towards my limited quota, so I want bits to be distributed as efficiently as it gets.
Hi sysKin,
ah, right, should have thought about DVD encoders, those clearly need a restricted buffer management. Thanks for pointing that out.
Traffic quotas for sure are a good argument for putting bits to maximum use, so having multipass Theora encoders for sure would be a worthwhile long-time goal.
So it looks good. But which codec produces a smaller file? Are the theora files smaller or larger than the H.264 files?
Probably should have compared the two with the names of their encoders hidden first…
Hmm, yes, let’s use STILL IMAGES TO COMPARE VIDEO ENCODING. Fucking idiots. Why are you doing this? Why would you decide to push Theora of all things? There are tons of better alternatives out there, the best one probably being H.264. Theora can’t handle HD video, which definitely is essential for this to succeed.
Also, LEAVE NVIDIA OUT OF THIS.
Having worked and published in the area of image quality for years, I feel the Theora codec has produced a significantly better image than H.264.
That said, evaluating codec quality is a complex task… H.264 only
standardizes the bitstream and decoder. Encoder improvements might improved the image quality over what has been shown (same thing for Theora!)
At a minimum, I would say the two codecs are at least comparable.
Well, this is most likely falling victim to a troll, but then…
@A: If you would have cared enough to discover that the pictures in the blog post are actually links to a more elaborate comparison page you may have noticed that you are invited and advised to download the video files and have a look for yourself beyond still images. This comparison page also features encodes at HD resolution. Theora can handle content up to 1048560 × 1048560 pixels (but that’s an insane theoretical limit).
“1. No controls for resizing (full screen ?) but this is FF.”
Isn’t full screen but
video {
left:0;
position:fixed;
top:0;
width:70%;
z-index:99;
}
applied via greasemonkey, firebug, or web developer toolbar works pretty well.
Come to think of it, gametrailers.com uses this approach for “full screen” even though they use flash.
Maik, you’re doing great job, keep it up! Those idiots like the one named “A” are not even worth of your precious time. He didn’t even take few seconds of his time to click on those images, read through the page you prepared and posted… so why should you waste your time on him? Because if he did in the first place, he wouldn’t post those stupid remarks. Oh well, this World is full of trolling morons. Let him live in his own world and enjoy his stupidness in full. Maybe, but just maybe… one day he’ll leave his troll-room and finally meet a girl, and possibly soften a little bit so he won’t be wandering these pages bugging other people.
I need glasses
I can’t see oOH any differences
Thanks
This is a Historic Moment !!!
… Open Video with out plug-in and free!!!
Bye bye flash player …
I just have one question… Where can I find the video encoder?
Not to be a wet blanket, because Theora does very well, but this is an overcast day. To do a complete assessment, you’d have to do a comparison in all lighting conditions, and all states of the codecs, all resolutions, one-pass, multiple passes, etc.
I don’t mean any disrespect on the guy in the example but… I can see his spots on the Theora encoding!
I don’t mean any disrespect on the guy in the encoding but… I can see his spots on the Theora encoding!
color saturation in H.264 is a little nicer… that might be controllable in preferences tho.
Hi Everyone,
Clarification WHY USE THEORA + VORBIS:
1.Theora should be used instead of patent an royalties constrained Adobe Flash. Adobe Flash sucks very much, because:
a)for the playback of same quality video material it requires muuuuch more CPU power than any other decoder (Theora for that matter or Xvid);
b)it crashes everything on its way (no matter what browser or operating system you use- I tried them all, really);
2.Flash is closed source- speaks for itself and partially explained the above. Three words: security, quality, spyware;
3.The profile used by google sucks all the way and any h.264/AVC takes way too much CPU power to compress and achieve the same (or as in case of youtube worse) quality for a small web video than any other encoder (vide Theora).
4. Theres no point to use any AVC for the web as you have to pay royalties from 2010 to mpegLA even if they havn’t written a single line of code. The same goes for open source Xvid- they havn’t written a single line of code but claim its their patent. (Xvid is so good that some companies even tried to steal it an conceal the code, they failed miserably).
5.In order to achive good results in Theora you need two passes, but even with one pass its GREAT. For compressing DVDs I use sth. like this: QPel+ Extreme Quality Profile+ Trellis Search Quantization+ Some Image Noise Reduction+ Gauss Scaler. I also use Vorbis for Audio (Q=3). To my surprise it produced sharper image than Xvid without Qpel (rest settings the same).
What is most important?
Create a default Audio & Video codec for WEB that can be open directly on browser.
But this codec MUST be open source, with quality and low CPU power use. THEORA is a candidate. Let’s test him!
Well said,
I’m so glad we have native support and the codecs improving all the time, hopefully one day we can get rid of adverts that use flash to redirect you anywhere they like and flash LSO cookies and have code that’s ratified by responsible browser developers that is as cross platform as can be and make life easier for developers by only needing to support one open format.
Great thanks for new VIDEO tag. I use ogg for web TV streaming. But how I did understand, new VIDEO element not yet support stream video – infinite file. This element can only single files play. It is thuth?