Slashdot Mirror


VP8 and H.264 Codecs Compared In Detail

An anonymous reader writes "Moscow State University's Graphics and Media lab have released their sixth MPEG-4 AVC/H.264 video codecs comparison. Also of note is a recently added appendix to the report which compares VP8, x264, and Xvid. The reference VP8 encoder holds its own against x264 despite the source material offering x264 a slight advantage. The VP8 developers comment in the report: 'We've been following the MSU tests since they began and respect the group's work. One issue we noticed in the test is that most input sequences were previously compressed using other codecs. These sequences have an inherent bias against VP8 in recompression tests. As pointed out by other developers, H.264 and MPEG-like encoders have slight advantages in reproducing some of their own typical artifacts, which helps their objective measurement numbers but not necessarily visual quality. This is reflected by relatively better results for VP8 on the only uncompressed input sequence, "mobile calendar."'"

45 of 170 comments (clear)

  1. In the real world by DrXym · · Score: 5, Insightful

    Input content *will* usually have been compressed with H264. Even the likes of Google will find itself transcoding 99% of its content into VP8 from some other codec. That might suck for comparison tests but its a fact of life.

    1. Re:In the real world by TheKidWho · · Score: 2, Insightful

      For now at least.

    2. Re:In the real world by Jah-Wren+Ryel · · Score: 3, Insightful

      Input content *will* usually have been compressed with H264. Even the likes of Google will find itself transcoding 99% of its content into VP8 from some other codec. That might suck for comparison tests but its a fact of life.

      That's not relevant to the point - the problem is that the tests measure how well each codec reproduces the input, but there is little value accurately to reproducing errors. So what if VP8 fudges macroblocked input? If it was macroblocked to begin with, then short of doing something crazy like xor-ing the colors, it doesn't really matter if VP8 fudges it up a little bit, its still going to look all blocky anyway.

      --
      When information is power, privacy is freedom.
    3. Re:In the real world by westlake · · Score: 4, Informative

      For now at least.

      You have to be realistic.

      H.264 isn't just about the cell phone phone and the web.

      It's a broadcast, cable and sattelite video standard, a Blu-Ray standard. It is deeply entrenched in industrial and security video.

      A search of Google Shopping for "H.264" will return 40,000 hits.

      There are 847 AVC/H.264 Licensees

      The Asian industrial giants like Mitsubishi are very well represented.

    4. Re:In the real world by shutdown+-p+now · · Score: 2, Insightful

      Since when did Chinese hardware manufacturers cared about patents? And yet, they seem to be selling DVD players that completely ignore CSS, region coding etc here in the West just fine...

    5. Re:In the real world by prockcore · · Score: 3, Informative

      It's a broadcast, cable and sattelite video standard, a Blu-Ray standard. It is deeply entrenched in industrial and security video.

      Except that in the US at least, the only one of those things that use it is BluRay. Broadcast, Cable, and Satellite still use mpeg2. Even many Blu-Ray's use mpeg2.

    6. Re:In the real world by westlake · · Score: 2, Interesting

      Except that in the US at least, the only one of those things that use it is BluRay.

      ...and every camcorder among the 40,000 items you'll discover in a quick search of Google Shopping for H.264 video.

      YouTube receives 24 hours of amateur video every minute of every day - and inevitably more and more of that video will be H.264 recorded at 720p or 1080i.

    7. Re:In the real world by sglewis100 · · Score: 3, Interesting

      Except that in the US at least, the only one of those things that use it is BluRay. Broadcast, Cable, and Satellite still use mpeg2. Even many Blu-Ray's use mpeg2.

      Huh? I believe ALL of the HD offerings on DIsh and Directv are now h.264 only. For awhile, after the near completion of the migration, the NYC and LA locals remained MPEG-2, but I think even that's done. Also, uVerse is h.264. Also OTA high def. supports h.264 Wikipedia link. Don't know much about cable, to be honest, but h.264 is pretty common... everywhere. Flash videos use it, most HTML 5 videos use it, your satellite receivers use it, your MKVs use it, your BluRay's use it...

    8. Re:In the real world by gravis777 · · Score: 2, Interesting

      http://en.wikipedia.org/wiki/Dish_Network#Broadcast_technology

      Back to the original article, VP8 does have a point - I have noticed myself when I have to recompress material (for whatever reason) in the same format, I get faster speed and less artifacts introduced than I do when I convert to another format. This is nothing new - been dealing with this since I started messing with video 14 years ago.

      And, duh, if the video is uncompressed, it is always going to yeild faster processing times and less artifacts than something converted from another format.

      To comment on the parent, assuming that content will usually already have been compressed in H.264 is short sited - still plenty of people compressing in WMV, Indeo, MJPEG, and other implementations of MPEG4 that are NOT H.264.

      I think the parent should have said "The source content is usually already in some comrpession format" rather than saying its h.264. In fact, I haven't seen in years something that doesn't default to some compression format. Even HDV encodes in MPEG-2 http://en.wikipedia.org/wiki/HDV#Video_and_audio_coding

      My last couple of analogue video capture cards default to MJPEG. My last card that even offered uncompressed video was an All In Wonder.

      The only way you are going to get uncompressed video this day and age, that I know of, is to use a film scanner, or to output your video project uncompressed. Which really is still probably going to have been compressed at some point - where did the source video come from?

      The going saying in video editing used to be (dont know if it still is) to not compress your video at all until you are ready to export it to your final format. Avoiding compression at some point in the chain is almost impossible. What needs to be done is try to recompress as few times as possible, try not to change formats, to use the best encoder possible for your situation, and to use the highest bitrate you are able to spare.

  2. Very simple by dimethylxanthine · · Score: 3, Insightful

    One is an extorsion accessory, the other is not (yet).

    1. Re:Very simple by Shark · · Score: 5, Funny

      Torsion is what you feel when someone twists your balls.

      Extorsion is that lingering pain afterward.

      --
      Mind the frickin' laser...
    2. Re:Very simple by LaRainette · · Score: 2, Insightful

      Getting money out of people using leverage you should have.

      The mafia extorted money from the shop owners in the 30s, using leverage it got from the monopoly of the usage of strengh it had taken from the state authority (the police which was unable to fight the aforementioned mafia)

      MPEG LA will extort money out of us and any video content provider/creator using leverage it will have gotten from abusive patents and technological monopoly reached through lobbying.

    3. Re:Very simple by bonch · · Score: 2, Insightful

      And once again, idealistic people get behind an inferior technology for ideological reasons while everyone else moves forward.

    4. Re:Very simple by wannabgeek · · Score: 2, Insightful
      --
      I'm much more funny, interesting and insightful than the moderators think
  3. Misleading statements by Lunix+Nutcase · · Score: 5, Insightful

    Unfortunately their statement is very misleading considering how VP8 and H.264 and other MPEG codecs use basically the same transform so their statements of bias against VP8 ring untrue. One of the professors who was part of doing this test even confirmed that the VP8 developers statement was untrue and misleading.

    1. Re:Misleading statements by unix1 · · Score: 4, Informative

      First, that claim was made by an x264 developer. Second, that comment in itself is misleading. VP8 developers didn't claim the bias affected visual quality. Here's the exact quote:

      H.264 and MPEG-like encoders have slight advantages in reproducing some of their own typical artifacts, which helps their objective measurement numbers but not necessarily visual quality.

      x264 developers need to take it easy and let their implementation speak on its merits rather than attempt to discredit VP8 at every opportunity.

    2. Re:Misleading statements by Lunix+Nutcase · · Score: 2, Insightful

      First, that claim was made by an x264 developer.

      And was backed up by the professor doing the test when he responded saying: "Yes, you are absolutelly right".

      x264 developers need to take it easy and let their implementation speak on its merits rather than attempt to discredit VP8 at every opportunity.

      Then maybe the VP8 developers need to stop making misleading statements about the capabilities of their codec?

    3. Re:Misleading statements by unix1 · · Score: 2, Insightful

      Then maybe the VP8 developers need to stop making misleading statements about the capabilities of their codec?

      I'm not convinced anything was misleading in the original comment. It was made clear they were not talking about visual quality. But there were no technical details presented on either side, so take it with a grain of salt, that's all.

      On the other hand, I've seen more than one misleading claim made by x264 developers against VP8 since it was announced as WebM by Google. It's like they are on a crusade or something. Take it easy guys - your implementation is one of the best, if not the best. Just keep up the good work and try to not make it look like you are on a personal mission to bury VP8.

    4. Re:Misleading statements by Aboroth · · Score: 2, Interesting

      At what point will you "buy" the claims? You aren't an expert, so you can't decide, but here we have an independent expert disputing the claim that the VP8 developers made. Why isn't this expert good enough? You just assume that they don't know enough about VP8, when this is his specialty. Why? I'm all for learning as much about a topic as possible before forming an opinion on it, but that doesn't mean you *have* to form an opinion on everything. At some point, you have to allow the specialists to do what they do. And if you have no idea what they are doing or talking about (like here), maybe you shouldn't bother being in the discussion, as you add nothing to it.

    5. Re:Misleading statements by unix1 · · Score: 2, Interesting

      In what way is it not fact?

      It's a fact that it's his opinion. I saw nothing where he backed up his claim (or counter-claim) with any actual facts. And given the x264 developer hostility against VP8 ever since it was announced by Google, that kind of opinion does not hold much weight with me.

      They both use an almost identical transform of any claims of bias against VP8 when it comes to MPEG artifacts is bunk.

      Do they? VP8 for me produces artifacts that are visibly different from x264.

      Basically all you are doing is being contrarian with no actual facts to back it up.

      Really? I merely stated that the original VP8 comment was not misleading. It didn't mislead me into anything, that's for sure.

    6. Re:Misleading statements by unix1 · · Score: 5, Interesting

      At what point will you "buy" the claims?

      Is that a rhetorical question? Because it doesn't help their case that x264 developers have themselves made misleading comments about VP8 since it was introduced by Google.

      here we have an independent expert disputing the claim that the VP8 developers made. Why isn't this expert good enough?

      No that's not what you have. What you have is an x264 developer complaining about the comment made by a VP8 developer.

      The professor replying to the complaining x264 developer agreed with the complaint but let the comments stand.

      You just assume that they don't know enough about VP8, when this is his specialty. Why? I'm all for learning as much about a topic as possible before forming an opinion on it, but that doesn't mean you *have* to form an opinion on everything.

      I didn't form an opinion about the claims either way, but merely stated the original VP8 comment was not misleading. It did not mislead me into anything.

      The original poster of this thread, on the other hand, had actually taken the x264 developer's opinion as statement of fact when there was no evidence presented to support it. And based on that assumption, he formed an opinion that the VP8 comment was untrue.

      At some point, you have to allow the specialists to do what they do. And if you have no idea what they are doing or talking about (like here), maybe you shouldn't bother being in the discussion, as you add nothing to it.

      I always "love" these types of remarks where people are asked to shut up because [insert an assumption/generalization here]. If you believe I didn't add anything to the discussion, then you certainly didn't either - so why did you bother replying, or even reading to this point in this thread?

    7. Re:Misleading statements by evilviper · · Score: 5, Interesting

      VP8 and H.264 and other MPEG codecs use basically the same transform so their statements of bias against VP8 ring untrue

      An x264 developer may have said it, but that doesn't make it true. He contradicts himself often enough, anyhow...

      Yes, the macroblock size is the same, however, that's just about it... VPx codecs use rather different quantizer matrices, never use B-frames, store motion vectors differently, and in general just have a very different and unusual encoding method. There are many ways in which it is different, and more to the point, far more different from H.264 than H.264 is from MPEG-2... Of course it can be over-stated, but it's very, very real.

      And BTW, what the hell is a "transform"? If you're going to pretend to be knowledgeable about a subject, you could at least have the decency to use precise terminology, so I can more efficiently ridicule you... If you're talking about the "T" in DCT, then I've got bad news for you. While nearly all lossy codecs are indeed using DCT, that's about as relevant as saying all vehicles burn fuel.

      I'll see your x264 developer quote, and raise you one ffmpeg/Adobe Flash developer quote: http://multimedia.cx/eggs/dct-pr/

      While he's talking about Theora, all points apply directly to VPx. Highly relevant quotes below:

      "Theora is rather different than most video codecs, in just about every way you can name"

      "As for the idea that most DCT-based codecs are all fundamentally the same, ironically, you can't even count on that with Theora- its DCT is different than the one found in MPEG-1/2/4, H.263, and JPEG (which all use the same DCT)."

      But you can ignore him if you like. He's just the guy who actually wrote the VP3 and Theora decoders for FFmpeg, and has reverse engineered numerous other codecs, so I'm sure he doesn't have a clue... You know, unlike a vocal x264 developer...

      And just to push further off topic, DCT isn't all that good, anyhow. The default in FFmpeg encoding isn't DCT, but SAD (Sum of Absolute Differences). SAD happens to be much faster, and more importantly, doesn't leave strangely colorful 16x16 blocks (usually green, but often red or other colors) as artifacts in low-bitrate encodings, which then have to be masked, wasting bits which could be better used elsewhere.

      One of the professors who was part of doing this test even confirmed that the VP8 developers statement was untrue and misleading.

      Facts aren't determined by popular opinion... And 2 people isn't much of a vote, anyhow.

      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
  4. VP8 holds its own? by Anonymous Coward · · Score: 5, Insightful

    "The reference VP8 encoder holds its own against x264 despite the source material offering x264 a slight advantage."

    Um, sure, if VP8 on its "best" preset being roughly equivalent to x264 on its "high speed" preset means it's holding its own, I guess that's a fair statement.

    1. Re:VP8 holds its own? by Sycraft-fu · · Score: 4, Interesting

      Well if your demand is "In every way as good or better," then no, VP8 is not that and probalby never will be. If that's your criteria go use H.264. Just don't come crying if you get smacked with a large licensing fee for your stuff.

      However, if you ease off and say "Can it produce a good looking image, something of similar subjective quality, at a reasonable bitrate?" then yes, VP8 holds its own. So does VC-1 for that matter. In all cases you can encode a video at a similar bitrate and still have it look good. The H.264 will probalby look a bit better, but not so much as to really matter a lot. Also, perhaps more importantly in some applications, it is a similar bitrate when encoding artifacts start to drop below human perception. So if you need something that's "lossless" as far as the view is concerned, you are doing it in around the same amount of space. Sure, H.264 can squeeze it down a bit more, but not a massive amount.

      To put it in sports terms they may not all be the best hitter, but they are all playing in the major leagues. This is as compared to an older codec like, say MPEG-2 or especially MPEG-1. For those, you need a substantially higher bitrate to look as good, and something even then it just isn't possible.

  5. It doesn't matter how good VP8 is. by LWATCDR · · Score: 2, Interesting

    It will all come down to support. Which codec has the widest support.
    Even Firefox will eventually add H.264 support even if it is with a plug in.

    --
    See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    1. Re:It doesn't matter how good VP8 is. by prockcore · · Score: 2, Informative

      You're thinking of it like there's dedicated h264 hardware in, say, the iPhone. There isn't. There's hardware that accelerates decoding of h264... that same exact hardware can be used to decode VP8.

      Think of it like how your desktop uses SSE3 to speed up h264 decoding... SSE3 doesn't contain an h264 decoder.

  6. Reading Bitrate/Quality Graphs by Anonymous Coward · · Score: 5, Insightful

    I don't understand the "VP8 holds its own against x264".... The graphs show that it certainly does not hold it's own against x264. For example, if you look at the best quality settings of x264 vs VP8 for the Ice Age clip, at the same quality (SSIM=0.97), x264 takes 800Kbps while VP8 takes ~1.2Mbps... So VP8 takes 50% more bits to achieve the same quality. This shows that VP8 is not nearly as efficient as x264. (Also, note that x264 is only one implementation of an H.264 encoder. There are other implementations that will make different tradeoffs to get better compression efficiency at the cost of performance).

    1. Re:Reading Bitrate/Quality Graphs by DJRumpy · · Score: 4, Insightful

      Agreed, this reads as if it's nothing more than a promotional ad for the VP8 codec. How do they expect everyone to take this seriously?

      I don't understand the "VP8 holds its own against x264".... The graphs show that it certainly does not hold it's own against x264. For example, if you look at the best quality settings of x264 vs VP8 for the Ice Age clip, at the same quality (SSIM=0.97), x264 takes 800Kbps while VP8 takes ~1.2Mbps... So VP8 takes 50% more bits to achieve the same quality. This shows that VP8 is not nearly as efficient as x264. (Also, note that x264 is only one implementation of an H.264 encoder. There are other implementations that will make different tradeoffs to get better compression efficiency at the cost of performance).

    2. Re:Reading Bitrate/Quality Graphs by braeldiil · · Score: 3, Interesting

      The money quotes from the article: "Movies Comparing VP8 to XviD, VP8 is 5-25 times slower with 10-30% better quality (lower bitrate for the same quality). When comapring VP8 and x264 VP8 also shows 5-25 lower encoding speed with 20-30% lower quality at average. For example x264 High-Speed preset is faster and has higher quality than any of VP8 presets at average." Real competitive.

  7. Near enough by curmi · · Score: 2, Insightful

    Since when did "near enough" become "good enough"? We might as all switch to Windows...

    1. Re:Near enough by SheeEttin · · Score: 5, Insightful

      Since when did "near enough" become "good enough"? We might as all switch to Windows...

      It's not just "near enough", it's "near enough and unencumbered by patents". (Of course, MPEG LA will contest that...)

    2. Re:Near enough by Klinky · · Score: 4, Insightful

      Well if you're into the FOSS philosophy, "near enough"(WebM/VP8) is better than "not at all"(H.264).

  8. Re:It's also almost never H264 first by Lunix+Nutcase · · Score: 2, Informative

    You can do realtime, baseline H.264 encoding on Cortex A8 and A9 chips with x264.

  9. Something to think about by joe_cot · · Score: 3, Informative

    While looking at encoder comparisons, keep in mind this post from a x264 developer about cheating on encoder comparisons. I'm not saying that these guys are cheating, just things to look out for.

  10. Re:It's also almost never H264 first by zim2411 · · Score: 3, Informative

    iPhone 4 records video at 10.8 Mbps baseline 3.1, 1280x720 at 29.97fps. Most of the DSLRs that shoot video, shoot in h264 and consumer cameras are increasingly switching to h264 as they dump tape based recording methods. It's nice that the authors didn't really bother trying to find properly high bitrate stuff as source materials. Oh well.

  11. Re:DCT by mbone · · Score: 2, Interesting

    H.264 doesn't actually use a DCT, but a non-exact integer approximation to a DCT, the Integer Cosine Transform, which is exactly invertible,, at the cost of a slightly loss of accuracy in the transform coefficients . (Floating point DCTs have rounding errors, and thus are not exactly invertible. If content is encoded multiple times, then the numerical noise introduced by this will accumulate to troublesome levels.)

  12. Cameras = MPEG, for now by mbone · · Score: 3, Insightful

    Most video material comes, originally, from a camera of some sort. (Obviously, this isn't the case for animation.) All of the HD camera systems I know of record in H.264, MPEG-4 or MPEG-2. (It might be called HD-DV or something else, but it's MPEG compressing under the hood.) So, if that gives H.264 an advantage, there isn't much that can be done about it. It will take a long time to replace all of the camera gear out there...

    1. Re:Cameras = MPEG, for now by Undead+Waffle · · Score: 2, Insightful

      Most video material comes, originally, from a camera of some sort. (Obviously, this isn't the case for animation.) All of the HD camera systems I know of record in H.264, MPEG-4 or MPEG-2. (It might be called HD-DV or something else, but it's MPEG compressing under the hood.) So, if that gives H.264 an advantage, there isn't much that can be done about it. It will take a long time to replace all of the camera gear out there...

      As I understand it the argument is that when you're comparing the final result to the source material the results will show H.264 being more "accurate", but since we are talking about "accuracy" of artifacts it may or may not be an indication of video quality.

      There is also this little piece of text on the bottom of the page (from the VP8 developers):

      Even with this limitation, VP8 delivered respectable results against other encoders, especially considering this is the first time VP8 has been included in the test and VP8 has not been specifically optimized for SSIM as some other codecs have.

      To date, WebM developers have focused on the VP8 decoder performance and are only starting to optimize the encoder for speed. The WebM project has only been underway for three weeks, and we believe that our encoder speed will improve significantly in the near future.

      Yeah it sounds a little bit like they're making excuses but their claims are believable. We'll see if they are telling the truth about these "significant speed improvements in the near future".

  13. Re:It's also almost never H264 first by RobertM1968 · · Score: 2, Informative

    It's also almost never H264 first but MJPEG/XVid/MPEG2/etc and NOT H264. For a start, encoders for mobile phones don't have the power to encode H264 live. So the OP assertion is obviously and trivially wrong.

    Really? My team works with a lot of Prosumer cameras that output H264. There's a quickly growing amount of content on YouTube and elsewhere that's filmed on such cameras, or even their lower end brethren - which also often output in H264.

  14. 10 cents a dance by westlake · · Score: 2, Informative

    And there's almost two billion chinese trying to make hardware that doesn't infringe pattens so they can sell obscenely cheaper here in the west.

    The manufacturer's license for H.264 is $0 - for sales of 100,000 units or less each year.

    20 cents a unit - for sales of 100,001 to 5 million units a year.

    10 cents a unit - for sales above 5 million a year.

    With an "Enterprise Cap" of $5 million a year.

    SUMMARY OF AVC/H.264 LICENSE TERMS

    The Korean Samsung Group - for comparison - has about a quarter of a million employees and annual revenues of $170 billion.

  15. Encoding 'standard' by TimothyDavis · · Score: 2, Insightful

    I was under the impression that there is no standard for encoding a video stream, and that the standard is in the decoding of the stream.

    It makes it unlikely that this comparison of codecs shows the full potential of one standard over another - and I would be wary of drawing any conclusions.

  16. Re:DCT by PybusJ · · Score: 2

    What's more VP8 also uses an integer approximation to the DCT, but a different one to H.264 (quite possibly the H.264 version is patented).

  17. which brings us back to "for now" by KingSkippus · · Score: 3, Insightful

    ...Which brings us back to the "for now" part of the comment.

    If you're a camcorder manufacturer, chances are you're using H.264 (and paying licensing fees to do so) precisely because it's convenient for people to upload to YouTube and otherwise muck with the video without having to transcode it. If that changes because YouTube and other mainstream sites and software support VP8, and you have the ability to offer consumers the option of doing the same thing without paying licensing fees by encoding in VP8, you'll likely do so to increase your profit margin.

    Your logic here supports the chicken-and-egg scenario that MPEG is praying for: manufacturers unwilling to support a format not in common use, and a format won't get in common use because manufacturers won't support it. As Google and other companies break the cycle by convincing people that the format will come into common support, manufacturers will be more willing to jump on board, bringing consumers with them.

    1. Re:which brings us back to "for now" by Lars+T. · · Score: 2, Interesting

      Sure. They also know that their products aren't licensed for anything except personal use.

      Is this so? (spoiler: no it isn't)

      --

      Lars T.

      To the guy who modded me down from perfect to terrible Karma - Apple haters still suck

  18. Also many cameras are MPEG-2 by Sycraft-fu · · Score: 4, Insightful

    While most of the card ones are AVCHD which is H.264, HDV cameras are MPEG-2. They are quite popular as there's reason to want tape as a storage medium.

    Then of course in terms of pro video, it is still compressed, raw video is just too daunting to store, but again with different codecs. They are often takeoffs of DV where there is just very light per frame compression as well as chroma downsampling. That offers better quality on subsequent recompression and editing, as well as lower hardware requirements to encode.

    This idea that everything will be H.264 as a source is inaccurate. It is popular no doubt, and I believe it will continue to be, but it isn't universal and probalby won't be.