Slashdot Mirror


In-Depth Look At Video Codecs

johnsee writes "Atomicmpc has an incredibly in- depth look at a wide range of video codecs. It looks not only at their inner workings, but also shows the quality produced by each at a variety of settings and situations."

149 comments

  1. so which one wins? by datapharmer · · Score: 4, Funny

    Oh wait I'm "new" here.... let me go RTFA. Be right back.

    --
    Get a web developer
    1. Re:so which one wins? by datapharmer · · Score: 5, Informative

      Apparently some people have no sense of humor. BTW I am back.

      For those not wanting to read the article:
      Rated best to worst with default settings
      Low Bitrate go with XVID, DIVX, h.264, WMV
      Medium: XVID or h.264 depending on lighting and motion, WMV, DIVX
      High: h.264, WMV, XVID, DIVX

      --
      Get a web developer
    2. Re:so which one wins? by Silverlancer · · Score: 4, Insightful

      Xvid is horrible at low bitrates in my experience. For example, I did a test encode of a 1680x1050 FRAPS video at 1000kbps. H.264 was actually quite watchable (!!!) and you could even read the size-12 text in the chat windows. Xvid couldn't even get below 1400kbps or so with every frame at quantizer 31 with max motion search settings and the like. So I'd say Xvid is the opposite--good at higher bitrates, worthless at low ones.

    3. Re:so which one wins? by datapharmer · · Score: 1

      I agree with you from personal experience, I was just trying to sum up the article. Looking back at the article there were a few situations where xvid did horribly at low bitrates, but some it did better than others. I do agree with the article about WMV though. That codec has come a long ways since its early days. I still don't use it much as h.264 is still better, but I am impressed with how far it has come.

      --
      Get a web developer
    4. Re:so which one wins? by tomstdenis · · Score: 1

      I'd like to point out that 1680x1050 is huge. For ref, DVDs are encoded ~9000kbps at 720x480. Granted with an inferior codec, but still.

      I wouldn't expect many codecs to handle that size frame spectacularly well. That any of them did [h.264 in your case] is amazing.

      Tom

      --
      Someday, I'll have a real sig.
    5. Re:so which one wins? by DigitAl56K · · Score: 1
      Hey,

      Product manager for the DivX codec here :)

      It's always very difficult to run a comprehensive codec comparison because each of the competing codecs offers a wide range of settings, and to test comprehensively over many different clips and bitrate is extraordinarily time consuming - so kudos to the author of TFA. However, I'd like to offer some brief feedback:

      • It would be my expectation (based on a lot of experience!) that Xvid and DivX should always be grouped tightly together. If this is not the case it suggests some degree of error in the testing. Certainly at medium bitrate DivX should be side by side with Xvid - both codecs are based around similar technologies.
      • DivX and Xvid ought to be much more competitive with H.264 at higher bitrates and higher resolutions, but it looks like these results show the inverse
      • I recommend taking a look at the swatches on page 4 of TFA to check some of the results yourself


      Finally, I think it's very worthwhile mentioning that while comparing codecs can be interesting, comparing platforms is more so. For example, one benefit of the DivX codec is that it is supported by many CE devices, across most desktop platforms, and new Internet services such as DivX Stage6.
    6. Re:so which one wins? by SeaFox · · Score: 1

      For those not wanting to read the article:
      Rated best to worst with default settings
      Low Bitrate go with XVID, DIVX, h.264, WMV


      Wow, thanks for saving me from the time I would have wasted reading this article. As I know it has to be junk to say that XviD is better than h.264 at low bitrates,
    7. Re:so which one wins? by cafucu · · Score: 1

      Dude, I know what you mean.
      I did a test encode of a 1680x1050 FRAPS video at 1000kbps. H.264 was actually quite watchable (!!!) and you could even read the size-12 text in the chat windows. Xvid couldn't even get below 1400kbps or so with every frame at quantizer 31 with max motion search settings and the like. So I'd say Xvid is the opposite--good at higher bitrates, worthless at low ones.

      --
      :%s:work:/.:g
    8. Re:so which one wins? by Freultwah · · Score: 1

      every frame at quantizer 31 Dude, that IS the whole problem. Should've instructed to keep it in the sane range of, say, 2-8. The higher the quantiser, the more the codec is allowed to ruin the picture.

  2. Summary by Silverlancer · · Score: 1

    You don't even have to read the article to guess that H.264 destroyed everything. Even VP7 doesn't stand a chance, though from my experience its the closest codec there is to H.264.

    1. Re:Summary by Anonymous Coward · · Score: 0

      Actually, if you RTF, you'd find that WMV came close and in some cases surpassed H.264 at low bit rates, doing way better than one would guess.

    2. Re:Summary by molarmass192 · · Score: 1

      At the heart of it, they're both variants of MPEG4 video, however, H.264 is an open standard while WMV is a proprietary wrapper around that open standard. I'm not surprised that H.264 beats WMV however. There are about a gazillion different options/combinations of options for encoding H.264 so you can define specialized profiles for particular video types. Given this fact, H.264 will always outshine WMV, it's simply that much more flexible.

      --

      Good people do not need laws to tell them to act responsibly, while bad people will find a way around the laws-Plato
    3. Re:Summary by Goaway · · Score: 1

      WMV3/VC-1 is definitely not MPEG-4. You are confusing the ancient MS-MPEG4 codecs with the ones currently in use. And there are certainly areas where it might beat h.264.

  3. but i don't see.. by mrzaph0d · · Score: 5, Funny

    ..any of the codecs the porn..i mean video sites i visit ask me to install before i get to see the videos..

    --
    this is just a placeholder till i send back my real sig from the future.
  4. OT: Divx Pro is free by reaktor · · Score: 3, Informative
    1. Re:OT: Divx Pro is free by Mononoke · · Score: 1

      I guess I'll hop in my time machine and do just that.

      --
      NetInfo connection failed for server 127.0.0.1/local
    2. Re:OT: Divx Pro is free by Anonymous Coward · · Score: 2, Informative

      The windows version is free too
      http://www.divx.com/dff/index.php?version=win

      and everyone gets sent the same serial number:

      Windows

      SMYCU67X83BBA68TIT48

      Mac OS X

      358DSZ7D96C5X66BI48E

    3. Re:OT: Divx Pro is free by Anonymous Coward · · Score: 1, Informative

      Some helpful Digger posted the serial that was given out yesterday, though, in case you missed it:

      SMYCU67X83BBA68TIT48

      Haven't tested it personally though.

    4. Re:OT: Divx Pro is free by Beaker74 · · Score: 1

      The download is still available. Both Mac and Windows versions are available.

      Just downloaded it at 1:20 pm Central.

    5. Re:OT: Divx Pro is free by twentynine · · Score: 1

      Grab it while you can. that's what SHE said

  5. ascii and zip by Anonymous Coward · · Score: 5, Funny

    I've found the best way to highly compress movies on OS X is to use the ASCII Movie Player codec to display the video in Terminal.app, capture that to a text file using a pipe, and then zip it all up.

    1. Re:ascii and zip by smbarbour · · Score: 5, Funny

      After looking at it for years, you don't even see the code anymore. You just see redhead, blonde, brunette...

    2. Re:ascii and zip by Anonymous Coward · · Score: 0

      I so have to go home and modify the ascii viewer to use the matrix font set, darn you its friday, my weekend is now over!

  6. H.264 isn't a codec, it's a standard by Noose+For+A+Neck · · Score: 1

    What would be more interesting is, "which H.264 codec performed the best?" They probably answer this question in the article, but I can't read it because it seems to be Slashdotted right now.

    --

    Software piracy is victimless theft.

    1. Re:H.264 isn't a codec, it's a standard by Silverlancer · · Score: 4, Informative

      There are a number of comparisons around the internet, and the last ones from 2006 show that x264 and Mainconcept are basically tied as the best, with Mainconcept having a tiny lead. However, x264 now has Adaptive Quantization available, an experimental feature that can help eliminate blocking in dark scenes which is pretty much impossible to avoid without AQ unless you use absurdly high bitrates. This feature alone puts it way over the top, IMO.

      --aq-strength for the win!

    2. Re:H.264 isn't a codec, it's a standard by Anonymous Coward · · Score: 1, Informative

      Do you mean: "Which H.264 encoder works the best?"? Or are you talking about the different profiles and features within the codec?

      I believe that there is only one H.264 (but you might correct me) however different encoders and decoders have been created for it. All decoders should be equivalent (although some might choose to add some post processing) but the developer can vary the encoding method as long as the output still meets the standard.

    3. Re:H.264 isn't a codec, it's a standard by Noose+For+A+Neck · · Score: 1

      Yes, thank you for pointing that out. I was referring to encoders in this instance.

      --

      Software piracy is victimless theft.

    4. Re:H.264 isn't a codec, it's a standard by NorQue · · Score: 1

      > I believe that there is only one H.264 (but you might correct me) however different encoders and decoders have been created for it. All decoders should be equivalent (although some might choose to add some post processing) but the developer can vary the encoding method as long as the output still meets the standard. No, unfortunately not. The widely used CoreAVC cuts some corners during decode, hence it has slightly worse picture quality then the other decoders. -> http://forum.doom9.org/showthread.php?p=973294#pos t973294 and http://forum.doom9.org/showthread.php?t=119187

    5. Re:H.264 isn't a codec, it's a standard by benwaggoner · · Score: 1

      Note that adaptive quantization isn't something particularly magic in x264. Our released VC-1 (WMV9) codec supports Differential Quantization and Adaptive Deadzone.

      I just wrote up a blog post about using them in a downloadable 1080p version of the Elephant's Dream clip:

      http://on10.net/Blogs/benwagg/elephants-dream-samp le/

    6. Re:H.264 isn't a codec, it's a standard by Silverlancer · · Score: 1

      It is something special about x264, because no other H.264 encoder has it. VC-1 is a joke though; its quality is absolutely laughable compared to H.264. Microsoft should be able to do better.

    7. Re:H.264 isn't a codec, it's a standard by benwaggoner · · Score: 1

      I think our qualty is very competitive with H.264! Bear in mind that the majority of HD optical (HD DVD and BD) discs use VC-1. Did you check out my sample encode?

      http://on10.net/Blogs/benwagg/elephants-dream-samp le/

      I've got lots of bandwidth - feel free to suggest a scenario where you feel VC-1 isn't competitive, and I'll see if I can come up with a counterexample.

    8. Re:H.264 isn't a codec, it's a standard by Silverlancer · · Score: 1

      I did an encoding test of WMV9 and WMV9 Advanced Profile (VC-1) against x264-encoded H.264 High Profile using SSIM as the metric. The quality of WMV9 Advanced Profile was about the same as WMV9 but it dropped frames (!!!) and so it broke the SSIM measuring tool after 10-15 seconds of measurement, so I compared WMV9 and H.264 only. Let's just say that H.264 at 2000kbps was much better quality than WMV9 at 4000kbps, by a considerable margin.

    9. Re:H.264 isn't a codec, it's a standard by GeffDE · · Score: 1

      What is laughable, however, is the fact that the H.264 codecs run on anything (mulitple OSes and processor architectures) while WMP is restricted solely to...Windows. VC-1 is completely uncompetitive, by default, for anyone not using Windows (and not using the latest version of WMP, which precludes anyone not using Vista or XP SP2 "Genuine.)"

      That being said, will VC-1 ever make it to a wider audience?

      --
      It has been a nervous year, with people beginning to feel like Christian Scientists with appendicitis.
    10. Re:H.264 isn't a codec, it's a standard by Goaway · · Score: 1

      ffmpeg already supports VC-1. That's about as broad an audience as you get these days.

    11. Re:H.264 isn't a codec, it's a standard by benwaggoner · · Score: 1

      We've done lots of testing, and that hasn't been our results.

      Can you share what settings you were using? If you're seeing a lot of dropped frames, one possibility is you cranked the Quality slider up to 100. That sets the minimum quality of each frame really high, telling the codec to drop frames in order to maintain data rate. A quality of 90 will give you much less trouble.

      WMV9-AP is a superset of WMV9, so there shouldn't be any cases where you get fewer frames out of AP.

      Also, the current codec has some useful parameters available as registry keys (I'm sorry - they came up late enough in development that we couldn't get them integrated into the Format SDK API, but it will be supported in our forthcoming SDK's API).

      Here are some utilities you can use to set them, or even batch script with them:

      http://www.citizeninsomniac.com/WMV/

      My general best practices for quality-emphasized encoding:
      B-Frames 1
      2-pass encoding, or Lookahead=16 for 1-pass encoding
      Full Chroma Search
      Adaptive Motion Match
      Adaptive Motion Search Range

      And you want to run in Complexity 4 (one less than the max).

      Depending on the content, DQuant and Adaptive Deadzone can help a lot, especially with film sources

    12. Re:H.264 isn't a codec, it's a standard by benwaggoner · · Score: 1

      VC-1 Main and Simple profiles *are* WMV9, and so are compatible to out of the box WMP9, 10, or 11, which gives compatibility down to Win 98 and 2K. WMV9-AP/VC-1 Advanced Profile, which is really only needed when you're doing native interlaced encoding, is an automatic free download for WMP 9 and 10, and installed with WMP 11.

      On Mac, Flip4Mac is our recommended solutions for playing back WMV files, and we distribute it free for Telestream.

      For other OS's, many companies have licensed WMV playback, like the Kinoma Player for Palm, the Amp'd Mobile phones, the VBrick internet video appliances, etcetera.

      More broadly about VC-1 (not specific to a .wmv file), that's just a SMPTE standard licensed by MPEG-LA (who also handles MPEG-2 and H.264). From a business and porting perspective, it's just like any other codec. We're seeing broad use of VC-1 in HD DVD and Blu-ray, in IPTV, and it's not part of the DVB-H television standard in Europe. So all kinds of devices will have VC-1 built in.

      We're also seeing WMV and VC-1 support in some open source players, like VLC (I think derived from ffmpeg). With VC-1 being an open standard, we don't need to (or have) any involvement in those projects.

    13. Re:H.264 isn't a codec, it's a standard by Silverlancer · · Score: 1

      I just used the Windows Media Encoder with the quality slider maxed (not the one that affects quantizer, the one that affects motion precision and so forth). I should probably try a more fully-featured VC-1 encoder. Are there any VC-1 encoders that support multiple reference frames, mixed references, rate-distortion optimization, and trellis quantization? Those are the main features that I find really help in H.264 over most other codecs (along with CABAC, of course).

    14. Re:H.264 isn't a codec, it's a standard by benwaggoner · · Score: 1

      Actually, go ahead and use one less than the max complexity. It's actually ever-so-slightly better, and quite a bite faster, in the current verison.

      As for most of the other feaures, you can get them via that PowerToy tool, or they're already on:

      Multiple Reference Frames: Not explicitly supported in VC-1 (they're a huge decode complexity hit). Instead, we get the same benefit for stuff like flashes and strobes by using BI frames - an intra-only encoded B-frame, which then lets the frame after the flash refer to the frame before. You get that automaticlaly by turning B-frames on, and either encoding in 2-pass mode or using Lookahead with 1-pass.

      Mixed References: You get the equivalent when the above is enabled.

      Rate Distortion Optimization: On automatically at complexity 3 or higher, or you can set it with a registry key.

      Trellis Quantization: No real equivalent, since we use a different entropy coding method.

  7. Uncompressed Codecs by Doc+Ruby · · Score: 4, Interesting

    The article makes some serious errors in overgeneralizations. It says that all codecs have in common that they make bitstreams shorter for transmission. But not all codecs compress (or otherwise reduce) their data. Some codecs transmit uncompressed raw data, increased in size by adding encoding data. For example, HD video monitors connected by HDMI (or DVI) use TDMS encoding not for compression, but to increase reliability in transmitting large raw data streams (10.2Gbps) quickly enough (340MHz) over cheap HW.

    And though humans learned stone tools remarkable close to finally learning to load CD-ROMs, the stone tools were paleolithic ("old stone"), while the CDs were at worst neolithic ("new stone"). Someday we'll look at the modern era as a new age, probably "hualic", or "glass" age. These silicon chips and glass fibers have changed us as much as we've changed the glass from which we make them.

    Just for kicks, I note that we've encoded the Si atoms into the new tools that define our age.

    --

    --
    make install -not war

    1. Re:Uncompressed Codecs by Anonymous Coward · · Score: 0

      I completely agree... silicon has certainly changed us

    2. Re:Uncompressed Codecs by autophile · · Score: 1

      And though humans learned stone tools remarkable close to finally learning to load CD-ROMs, the stone tools were paleolithic ("old stone"), while the CDs were at worst neolithic ("new stone").

      In keeping with the naming of capital-A Ages after prevalent use of materials, I like to refer to the period from 1912 to 2045 as the "Plastic Age" (or possibly the "Polymer Age" or "Polyfantasic! Age"), covering the use of Bakelite on up in consumer goods.

      Your guess as to what happens after 2045 :) (Hint: Ray Kurzweil has something to say about that)

      --Rob

      --
      Towards the Singularity.
    3. Re:Uncompressed Codecs by forkazoo · · Score: 1

      In keeping with the naming of capital-A Ages after prevalent use of materials, I like to refer to the period from 1912 to 2045 as the "Plastic Age" (or possibly the "Polymer Age" or "Polyfantasic! Age"), covering the use of Bakelite on up in consumer goods.

      Your guess as to what happens after 2045 :) (Hint: Ray Kurzweil has something to say about that)

      --Rob


      No, it seems like all the materials that are whizzy and new now days are "Space Age Materials." Stuff like carbon fiber. So, that makes this the "Space Age Materials Age."
    4. Re:Uncompressed Codecs by defro · · Score: 1

      TDMS is not the same type of "codec" like those described by this article. Technically yes, it is a codec in the broadest sense - it does encode data for transmission and decoded it at the receiving side. However, TDMS is a PHYSICAL layer encoding scheme, and as you mentioned, it's function is to aid in data transmission. Video codecs are generally an APPLICATION layer encoding scheme that may or may not implement some kind of compression. Generally video codecs do use compression because the progression of digital video data is always quality vs. size. Because of this, I think the authors generalization is valid, as one would not group codecs like H264, XVID, MPEG4 in the same category as codecs like 8b/10b, TDMS, Manchester. Cheers

    5. Re:Uncompressed Codecs by Doc+Ruby · · Score: 1

      There are plenty of software only codecs that don't compress, like G.711. The fact that TDMS is hardware, and is a physical layer rather than application layer encoding, is irrelevant to the falsity of the statement that all codecs compress. TDMS shows that even high bandwidth video can be encoded but not compressed. And it shows that sometimes size isn't as important as a cheaper codec (and downstream data processing) that handles uncompressed data at full bandwidth.

      There are plenty of video codecs, such as most container codecs (like MPEG4), which don't compress encapsulated data that's already compressed. Their generalization is a mistake.

      --

      --
      make install -not war

    6. Re:Uncompressed Codecs by Tab+is+on+Slashdot · · Score: 3, Informative

      Exactly. I'll copy/paste my response to this highly innacurate article on Digg:

      "Some other major inaccuracies:

      This site says that motion compensation was introduced in MPEG-4. What? Motion compensation and motion estimation are at the core of every MPEG and most other codecs.

      Also, his understanding of the DCT is way off (and no, you don't need a degree to understand it -- I was building JPEG encoders in 11th grade).

      "During an encode, every number in a series is simply halved and the remainders thrown away." ... What? The DCT is a complex algorithm that converts an array or matrix of values into frequency space, producing a set of frequency coefficients that represent respective values of cosine waves at different frequencies along the set. Halving the data has nothing to do with it unless you're using a quantizer of two and a quantization matrix of all ones (or a QM of all twos and a quantizer of one...).

      This is also wrong:
      "Think of a quantisation matrix as a palette of values that controls how the pixels in a macroblock are converted from pixels to a formula."

      That's the DCT that he's describing. The quantization matrix simply defines what values the frequency coefficients are divided by. I think he has quantization and the DCT mentally swapped.

      Oh also, he acts like QPel and GMC are Xvid inventions. In actuality, most MPEG-4 codecs implement these. Granted, DivX's GMC is inferior to Xvid's implementation (one warp point vs three), but it certainly does have it."

      Of course, this got dugg down to hell because my comments about the DCT were mistaken for boasting. Hopefully the same won't happen here.

    7. Re:Uncompressed Codecs by BitterOak · · Score: 1

      Codec stands for COmpression/DECompression algorithm. There certainly are data formats for video which are uncompressed, but they are not Codecs.

      --
      If I can be modded down for being a troll, can I be modded up for being an orc, or a balrog?
    8. Re:Uncompressed Codecs by Doc+Ruby · · Score: 1

      No, CODEC stands for "coder/decoder", of which de/compression is only one kind of encoding.

      As the article said, as I said, as the TMDS article to which I linked said.

      --

      --
      make install -not war

    9. Re:Uncompressed Codecs by toddestan · · Score: 1

      I still think that the "Silicon Age" is what is ultimately going to stick.

  8. Image Algorithms by Rac3r5 · · Score: 3, Interesting

    Does anyone have a similar link to imaging and sound compression algorithms?

    1. Re:Image Algorithms by Anonymous Coward · · Score: 0

      TIFF and PCM win in their respective categories.

    2. Re:Image Algorithms by Silverlancer · · Score: 1

      You hardly need a link: most of the popular low-to-mid bitrate sound algorithms are pretty straightforward in effectiveness. Low bitrate, AAC-HE is the king. Ogg is close though. At higher bitrates AAC and Ogg become more equal and eventually Lame MP3 catches up at the highest bitrates (192+).

    3. Re:Image Algorithms by Rui+del-Negro · · Score: 1

      If by "similar" you mean "completely clueless", yes, I know a few, but can't really see the point in propagating them. :-) If you want an article with some theory and a visual comparison of JPEG and JPEG-2000, here:

      http://digitalproducer.digitalmedianet.com/article s/viewarticle.jsp?id=109739

      (disclaimer: I wrote it, but I don't get any $$$ from page views... unfortunately :-P)

      There are lots of articles about sound codecs, but most of them seem a bit too "mystical" to me (as is typical with all things audiophiliac).

      In double-blind tests most people can't really tell the difference between uncompressed audio and the main codecs (WMA, MP3, OGG, etc.), beyond a bitrate of 256 kb/s or so. Some people can, but most just think they can... and get it wrong half the time (which is why double-blind tests are important).

    4. Re:Image Algorithms by Anonymous Coward · · Score: 0

      Its very much material dependent when you can identify the flaws in codecs and you will need the raw reference unless you know the material very well or it encodes really badly.

      Also I presume you are talking about 2 channel stereo where it will be hard to tell any problems over 256Kbit/s, more data may be required for surround.

    5. Re:Image Algorithms by Rui+del-Negro · · Score: 2, Interesting

      Yes, I was talking about stereo (which is still how >90% of music reaches the end users).

      For audio production, lossy compression is a no-no (bandwidth and space are seldom issues), so there's no point in comparing lossy codecs.

      For the vast majority of consumers, what matters is their perception of quality.

      The point of quality comparisons is not to say "I recognise this version as the uncompressed one". It's to listen to several versions and pick the "best" one. And for that you don't need to know the piece at all. In fact, I'd argue that if you know a particular recording of that piece, you won't be judging abstract "quality"; you'll just be judging similarity to the version that you're used to.

      In other words, like you say, (in a proper double-blind test), you'll only see consistent results if something "encodes really badly" (i.e., has obvious compression artifacts).

      For image and video, where compression is often a requirement due to bandwidth and space issues (even during the production stages), it makes more sense to do comparisons to the original, rather than abstract "quality" evaluations. Which is not to say that consumer perception isn't still important. For instance, point & shoot digicams frequently over-saturate and over-sharpen images, because many consumers prefer that "look". Professional photographers prefer raw (or at least rawer) images, because they preserve more of the original information.

  9. AVP beats ASP, no surprise. by Kadin2048 · · Score: 3, Interesting

    XviD is an H.263, aka MPEG-4 Part 2 "Advanced Simple Profile" (ASP) encoder, no?

    This is quite different from the newer H.264 (MPEG-4 Part 10 "Advanced Video Profile" (AVP)) encoders like x264 (which is part of ffmpeg, at least recently, I believe). H.264 is a much better match for high-definition video that's going to be played back on HD equipment.

    I think it's been known since the AVP codecs arrived on the scene that they pretty much kicked the crap out of the ASP ones; their only major downside is the processing requirements both to encode and decode, and (more true in the past than now) limited installed base of people with the codecs.

    --
    "Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
    1. Re:AVP beats ASP, no surprise. by russ1337 · · Score: 2, Informative
      I've had some guys at my work try to tell me that H.263 = MPEG4. It actually got quite nasty.

      I recognize their are similarities, but I do not believe they are the 'exact same'. My evidence is that the video cards we use have Mpeg4 hardware encoders, yet will not 'hardware decode' the H.263 stream.

      also, FTFA's reference:

      The resynchronization approach adopted by MPEG-4, referred to as a packet approach, is similar to the Group of Blocks (GOBs) structure utilized by the ITU-T standards of H.261 and H.263. In these standards a GOB is defined as one or more rows of macroblocks (MBs).......
      ...... The video packet approach adopted by MPEG-4 is based on providing periodic resynchronization markers throughout the bitstream. In other words, the length of the video packets are not based on the number of macroblocks, but instead on the number of bits contained in that packet. If the number of bits contained in the current video packet exceeds a predetermined threshold, then a new video packet is created at the start of the next macroblock.
      Bold emphasis mine.

      Can any video experts comment? Can you provide me with a reference or some more information that would stand up in court? (not that it will get to that)

    2. Re:AVP beats ASP, no surprise. by JohnnyLocust · · Score: 5, Informative

      I've had some guys at my work try to tell me that H.263 = MPEG4. It actually got quite nasty. I recognize their are similarities, but I do not believe they are the 'exact same'.
      H.263 is a part of the entire MPEG4 specification (as is H.264).

      ie the following statement is always true:
      H.263 is always MPEG4

      However the the folloing statement is not always true:
      MPEG4 is always h.263

      My evidence is that the video cards we use have Mpeg4 hardware encoders
      Not true at all. There are some hardware MPEG4 encoders on the market, but it is for the most part, not included in modern GPUs. For decoding purposes, portions of the h.263 (IDCT to be exact) has been implemented in hardware on video cards for quite sometime. However, combined with programmable shaders, a good deal of h.263 decoding can be greatly accelerated by most modern GPUs (nVidia's PureVideo DirectShow codec is an example of this). ATI's AVIVO XCode app does use a great deal of shaders to speed up the encoding process for several codecs. Even though it's been shoehorned to work with other GPUs, it was intended to work thier X1X00 line of video cards.
    3. Re:AVP beats ASP, no surprise. by Rui+del-Negro · · Score: 1

      H.263 is indeed not the same as MPEG-4. H.263 was published in 1995 by the ITU, MPEG-4 (first "official" draft) was published in 1998 by the MPEG. H.263 is based on H.261 and MPEG-2, but was developed without the MPEG's help.

      It uses similar concepts to MPEG-4 (all BMC-based algorithms do), but several details in stream structure are different (which is not to say parts of a MPEG-4 codec can't be used to accelerate H.263 compression or decompression).

      H.264, on the other hand, was developed by the ITU in partnership with the MPEG, but it's still not "the same" as MPEG-4. MPEG-4 is a generic term for a set of guidelines that are somewhat flexible and effectively still under development. No codec (soft- or hardware) that I know of implements all of it. Anyone implementing a part of MPEG-4 (no matter how limited) can claim they have a "MPEG-4 codec".

      If you want guaranteed (well, sort of) compatibility, look specifically for "H.264" or "AVC", not the generic "MPEG-4" term. Most modern software decoders will chew through any MPEG-4 flavour, but hardware codecs (on set-top players, etc.) expect a more constrained standard.

    4. Re:AVP beats ASP, no surprise. by Rui+del-Negro · · Score: 1

      Not exactly. H.263 is not the same as the MPEG-4 ASP. XviD is indeed based on the MPEG-4 ASP, and can also produce H.263 files, but the two things are different (albeit similar, especially if you consider H.263 v2).

      Also, bear in mind that video compression standards focus on "what" the encoders must create, not "how". Even if a certain standard supports more advanced features, a "smarter" encoder using a "lesser" standard can produce similar, or even better results.

      As H.264 encoders improve, they should clearly surpass MPEG-4 ASP, but right now that is not necessarily true for all encoders, at all bitrates, with all types of footage.

    5. Re:AVP beats ASP, no surprise. by russ1337 · · Score: 1

      Thanks for your response. I really appreciate it. If i've got this straight you're saying H.263 is a subset of MPEG4. I'm still a little confused though as I've been reading through the page linked: http://www.chiariglione.org/mpeg/standards/mpeg-4/ mpeg-4.htm, which says...

      H.263 uses 'Group of Block' (macroblock) resync, and Mpeg 4 uses ' the packet approach'

      H.263 also puts information on the macroblock in the header, the document says MPEG4 uses a 'picture start code'. These appear to be different and the page indicates they are used by hardware decoders to tell them apart.

      Same page references H.263 using 'spatial resynchronization' which is more susceptible to errors in high motion environments (so ideal for video conference, but maybe not motor racing), and states the resync markers may not be equally spaced. The MPEG4 appears to use video packets for resync with markers in the bit stream which allows them to be equally placed. Also states MPEG4 use a second method called "fixed interval synchronization" which requires start codes and resynchronization markers to appear at 'legal' fixed interval locations in the bit stream which is not supported by H.263

      H.263 packets are determined by the number of macroblocks (variable). MPEG4 is based on the number of Bits (not variable) and will spill over to the next packet if required.

      Because of the major difference in macroblock vs fixed number of bits and regularly timed markers, I just cant see how H.263 can be a subset of an MPEG4 standard.

      I'd appreciate any comments you (or anyone else) has.

    6. Re:AVP beats ASP, no surprise. by russ1337 · · Score: 1

      Thanks for your comments. After having read your articles that you posted later in this thread it is obvious you know your stuff. Thanks.

      I would be interested if you had a reply to JohnnyLocusts reply above...? http://slashdot.org/comments.pl?sid=237843&cid=194 40487

    7. Re:AVP beats ASP, no surprise. by Kadin2048 · · Score: 1
      That page is either oversimplifying, or just wrong. I'm not sure which.

      MPEG-4 is a group of specifications. It's not just one video format, or one codec. Just talking about "MPEG-4 video" is bad, because it could refer to any one of several video formats, and any of those formats could have been produced with a variety of codecs.

      Within "MPEG-4," you have multiple "parts" which are actual specifications for video encodings. Wikipedia explains slightly:

      MPEG-4 is still a developing standard and is divided into a number of parts. Unfortunately the companies promoting MPEG-4 compatibility do not always clearly state which "part" level compatibility. The key parts to be aware of are MPEG-4 part 2 (MPEG-4 SP/ASP, used by codecs such as DivX, XviD and 3ivx and by Quicktime 6) and MPEG-4 part 10 (MPEG-4 AVC/H.264, used by the x264 codec, by Quicktime 7, and by next-gen DVD formats like HD DVD and Blu-ray Disc).


      So basically, you have two common flavors of MPEG-4. One is Part 2, also called ASP, for "Advanced Simple Profile." This is, I think, either the same or very close to "H.263". Usually when people talk about "MPEG-4 video," they mean ASP-encoded content. So this is what's probably being discussed in the article you linked to.

      The other Part of MPEG-4 that's widely used is Part 10. MPEG-4 Part 10 is also called "Advanced Video Profile," or AVP. Part 10 is H.264 (at least, I think so -- I think the MPEG-4 P10 and H.264 standards are developed in parallel and kept in synchronization).

      There are also, as the numbering implies, a whole bunch of 'parts' within MPEG-4 that aren't widely used. I have no idea what MPEG-4 Part 7 would be, but doubtless if you bought the standard you could find out. I also don't know whether most "MPEG-4 decoders" support anything besides Part 2 and Part 10. I kinda suspect not.

      Anyway, so to sum up, you have "MPEG-4," which is sort of a broad specification for a container (.mp4 files) and various video formats that can be put into that container (the 'Parts'). The two common parts are Part 2, ASP, and Part 10, AVC. AVC is the newer, more sophisticated, more processor-intensive, and higher-quality encoding. Either type of video can be produced by many different codecs. XviD is an ASP codec, for example; x264 is an AVC one. But you can also produce AVC video with Apple's Quicktime H.264 codec -- just like you can produce MP3 files with LAME or Fraunhaufer, and play it back anywhere.

      Anyway, this is my understanding after reading the Wikipedia articles; there seems to be a lot of confusion regarding MPEG-4 floating around, but WP is at least consistent.
      --
      "Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
    8. Re:AVP beats ASP, no surprise. by Rui+del-Negro · · Score: 1

      Not really, beyond telling him to read the H.263 specification...

      http://www.itu.int/rec/dologin_pub.asp?lang=e&id=T -REC-H.263-200501-I!!PDF-E&type=items ...where he won't find any reference to the MPEG (let alone MPEG-4, which was published after H.263).

      MPEG-4 is "H.263 compatible" in the sense that a basic H.263 stream can be correctly decoded by a "complete" MPEG-4 video decoder, but MPEG-4 decoders aren't required to be "complete" (which is not to say that a lot of them don't cover what's required to decode ITU H.263). And a MPEG-4 encoder certainly isn't required to produce H.263-compatible streams.

      Of course, he might be saying just that the full MPEG-4 standard "covers" everything you need to decode basic H.263, in which case he's correct. But H.263 is not "a part of MPEG-4" (it was developed before MPEG-4, by a different organisation), unlike H.264 which was atually developed along with and is part of the MPEG-4 standard (it's "part 10", a.k.a. "AVC").

    9. Re:AVP beats ASP, no surprise. by LarsG · · Score: 1

      So if I'm reading you right, would it be correct to say that h.263 is a subset of Mpeg4 part 2 (SP/ASP)?

      --
      If J.K.R wrote Windows: Puteulanus fenestra mortalis!
    10. Re:AVP beats ASP, no surprise. by CryoPenguin · · Score: 1

      Yes, h.263 is a subset of MPEG-4 part2. Note, however, that h.263 has some extensions of its own called h.263+, and h.263+ is not a subset of MPEG-4 part2.

    11. Re:AVP beats ASP, no surprise. by Rui+del-Negro · · Score: 1

      Saying that could seem to imply that H.263 was "extracted" from MPEG-4, which was not the case. It would be more accurate to say that MPEG-4 part 2 was drafted in such a way that it covers everything required to decode "baseline" H.263 (there are some variations of H.263 not covered by MPEG-4).

      In other words, basic H.263 is "covered" by MPEG-4 part 2 (but the two are not identical), whereas MPEG-4 part 10 (AVC) and H.264 are identical (they're separate standards, but there's a working group that keeps them "in sync").

    12. Re:AVP beats ASP, no surprise. by russ1337 · · Score: 1

      Again, thanks. I appreciate your comments and I've certainly learned something.

    13. Re:AVP beats ASP, no surprise. by NoMaster · · Score: 2, Informative

      Almost right, but the "Part"s are descriptive standards or references, not implementations. H.264 is not "MPEG-4 Part 10" - Part 10 describes a standard which is technically the same as H.264, but does not provide an implementation (beyond pointing at the ITU-T's H.264). It's a subtle difference, but important, and Wikipedia is not always clear on this.

      It's a bit like reverse-engineering in a cleanroom environment - the various MPEG-4 parts describe exactly how things should work, then you'd pass it off to the developers to re-implement without being tainted by the original. The only real difference between MPEG-4 and what the PC BIOS cloners did (and the wireless / video firmware hackers in Linux / BSD development are doing) is that the MPEG-4 references themselves are covered by copyright and patent law. You can't take the specs and use them to produce an implementation, because that runs afoul of their licencing provisions. You could take an implementation, reverse-engineer it, and produce descriptive specs - but you'd want to be damned sure the descriptive specs you produced didn't look even remotely like the MPEG-4 group's specs...

      FWIW, Part 7 is set aside for optimisations to the reference examples given in Part 5 (and I think Parts 2 & 3).

      --
      What part of "a well regulated militia" do you not understand?
  10. In this case, don't RTFA by Rui+del-Negro · · Score: 4, Interesting

    I've just read a bit of the article and the only thing I can think of is to paraphrase Stanislaw Lem: "it always amazes me that people need a license to drive a car but can write and publish all sort of nonsense without any clue about the subject".

    His descriptions of "temporal compression" and "motion compensation" (to name just two of the fundamental building blocks of modern video codecs) are so wrong they don't even qualify as an error. He confused delta compression with motion compensation, thinks MPEG1 lacked the latter, doesn't understand why the former is virtually useless for video... sigh... even trolled Wikipedia articles manage to be more accurate than that.

    I feel truly sorry for the people who read that and think they've learned something about the subject.

    1. Re:In this case, don't RTFA by Rui+del-Negro · · Score: 5, Interesting

      God, I've just read his description of DCT. It's even worse. He seems to think that DCT consists of "dividing numbers by two" (he doesn't even use the word "quantization", that probably has too many syllables). And people complain about Wikipedia...

      Time to shamelessly plug my articles about compression. Some parts are simplified (they're aimed at "end users") but, compared to this Atomic article, anything is flawless:

      Lossless (data, image, audio)
      http://digitalproducer.digitalmedianet.com/article s/viewarticle.jsp?id=106309

      Lossy + Hybrid (image, audio)
      http://digitalproducer.digitalmedianet.com/article s/viewarticle.jsp?id=109739

      Video (lossless, lossy)
      http://digitalproducer.digitalmedianet.com/article s/viewarticle.jsp?id=125089

    2. Re:In this case, don't RTFA by russ1337 · · Score: 1

      Wow dude. Those are some great, fantastic articles.

    3. Re:In this case, don't RTFA by Rui+del-Negro · · Score: 1

      Glad you liked them.

      The original plan was to write a single article with two pages or so, but then I kept thinking "normal people won't understand this, I have to go more slowly / add more examples / start further back / etc.", and then "well, since I've included X, I might as well mention Y and Z", so they kept growing.

      They're still pretty vague on implementation details (except for RLE, which is probably simple enough that everyone will understand), but I hope they'll at least give people an idea of the differences between the various "families" of algorithms.

    4. Re:In this case, don't RTFA by catmistake · · Score: 1

      I second a thank you... and just letting you know that since the Digg debacle with that stupid number, diggers have been showing up here more and more with their insidious blog spam masqurading as news... I don't understand it, but it needs to be stopped. Since that day, Slashdot's IQ has plummeted.

    5. Re:In this case, don't RTFA by kinglink · · Score: 1

      Even worse is the fact they have 5 codecs? Indepth look at video codec? More like "really fast look". I've used more codecs when I was converting old tv shows. Divx, Xvid? WMP7? x264 and Cinepak?

      How about these tests....

      Which one is the least hassle to set up?

      Which one is the least hassle to convert from or to?

      Which one is the most accepted format? (let's be honest, APE and FLAC might be good audio codecs, too bad only a handful of players play them but Mp3s play on every player out there that I know of).

      The one thing I've learned with codecs is the one that looks best tends to be the biggest hassle and least supported. And it's not because people are pig headed, it's usually there's issues with the format. Same thing with the container classes. MKV? OGM? WMV? I'm still getting AVIs 90 percent of the time because it's the most acceptable container. I liked MKV but until people support it, there's no use. I can't easily convert a MKV to the PSP format so it loses it's functionality.

    6. Re:In this case, don't RTFA by Rui+del-Negro · · Score: 1

      Well, using the "must play anywhere" metric, I'd say MPEG-1 ranks the highest.

    7. Re:In this case, don't RTFA by kinglink · · Score: 1

      Divx has been gaining enough support there that it's worth looking at. I'm not looking for stuff to work on antiquated devices, but can it work on the Ipod Video, is it easy to get codecs for use with software? Can you transcode it easily (minimal processor power)? Or even can you convert it easily?

      The biggest problem any audio codec has is getting people to realize that while it might be better than MP3 for what ever reason you want to sell us, the new codec also has to be around the same size, and able to be converted to MP3 or AAC easily enough (that means 1 step processes)? or be playable in Mp3 players (it won't be but this is an option)?

      Basically assume I have 1 million files in a directory with any tagging system that is available for the system (Movies don't have this to my knowledge). Assume I need format X which is a widely used format (let's go with Mpeg1/divx/or xvid, as they all are fairly large).

      How long will it take to convert your file into the format assuming I have 1 million hours of video? This is called a magnitude test, but I've had to deal with 20 gigs of APE at one point. The format turned out to be worthless because people were doing all sorts of odd things with .cue files, and no ape converter understood this. Then it turned out that either the ID3 or APE itself got boned because the ID3 tags had Japanese characters instead of English characters. And so on. End result, I ditched the APE format, got rid of the 20 gigs of files and will never use APE again, it might be a perfectly suitable format, but converting it should have been a 1 time easy to do thing and it turned into a monstrous situation.

      This stuff CAN be handled by well-crafted software, but the codec should work with the software not having the software work around the codecs limitations (Aka Transcoding. NEVER require it, but always allow it. If a device can only play WMVs, you'll have to convert your files to the correct codec (what ever the 360 allows) but I still have trouble transcoding .mov files, and it's the format's fault, not the software, so don't disallow transcoding but don't force it to be the only way to get data out.) If possible find ways to allow users to encode from your format to their target format.

    8. Re:In this case, don't RTFA by Rui+del-Negro · · Score: 1

      If it's wrapped in a common container (ex., AVI, Quicktime) and if downloading and installing the codec is an option, then pretty much anything can be converted into anything (at least within the same container format), so the point becomes more or less irrelevant. I thought you meant "will play anywhere right 'out of the box' ", that's why I mentioned MPEG-1.

      It's rarely necessary to have faster-than-realtime transcoding, so "how long does it take" is usually less relevant than "can it be done dynamically, during streaming / recording / etc.?".

      Of course, I work in post-production so I tend to look at things from a slightly different POV (having a "master" archive - determined by the original production format - and creating "distribution" copies when needed). But I'm pretty sure that most people don't need to transfer 1 million hours of video into their iPod on a daily basis. ;^)

    9. Re:In this case, don't RTFA by Anonymous Coward · · Score: 0

      Sorry to be 90s AOL, but "me too" -- excellent articles.

    10. Re:In this case, don't RTFA by Man+Eating+Duck · · Score: 1

      Time to shamelessly plug my articles about compression.
      I agree with the others here, incredibly good articles!
      A very thorough introduction, and still easy to follow for a lay-person. Recommended!
      You wouldn't happen to have written any other works of similar quality you'd like to share with us? :)

      A question as well: Do you know if this Photoshop plugin (j2k) is a good implementation of jpeg2000? Maybe it's a stupid question, but I have no idea how strict the standard is, or if there are differences between implementations at all.
      --
      Are you a grammar Nazi? I'm trying to improve my English; please correct my errors! :)
    11. Re:In this case, don't RTFA by Rui+del-Negro · · Score: 1

      Well, in English, for Digital Media Net, I've also written an article about the exciting subject of... alpha channels:

      http://digitalproducer.digitalmedianet.com/article s/viewarticle.jsp?id=135386

      And I'll probably write a couple more, the first of which will be about HDR (high dynamic range) digital imaging. The problem with DMNet is they pay the same for a 3-paragraph article about "how to make your photos sharper in Photoshop" and a 20,000-word article about "how to build a working time machine and fix global warming", so I obviously don't have a big incentive (apart from "educating the masses") to take time off my normal job(s) to write for them.

      I've also written a few guides & tips for my DVD site:

      http://dvd-hq.info/Compression.html
      http://dvd-hq.info/FAQ.html
      http://dvd-hq.info/forum

      BTW, despite a couple of thousand hits a day and a pretty decent search ranking for the relevant terms, the site has what financial experts call "negative profits". Turns out that educating the masses isn't very good business (even BBC Prime has replaced its "Learning Zone" documentaries with soap operas). On the plus side, I'm pretty sure I'm going to heaven... oh, wait, I'm agnostic. Damn. :-P

      I'll probably write a couple of chapters (and do most graphics) for a book about photography that might get published within a year (depends on the main writer), but that'll be in Portuguese, and I doubt it'll ever get translated into English.

      As to that JPEG 2000 plug-in, there are pretty big differences in implementation, yes. I don't know j2k, so I really can't say how it ranks. I've been using Luratech's plug-in on the grounds that it was the only one available when I got it. :-) Their browser plug-in is pretty bad, but the compressor seems to be quite good. In this comparison it ranked as the best (for Photoshop), only slightly behind ACDSee's built-in implementation:

      http://www.compression.ru/video/codec_comparison/p df/jpeg2000_codec_comparison_en.pdf

      Until all browsers (and some digital cameras) come with JPEG 2000 support, I don't see it taking off. Part of the problem lies with the JPEG 2000 specification itself, which is vague about some things, and lacking some basic features (like EXIF, to store camera data). Microsoft's WMP / HDPhoto format is pretty civilized (support for HDR, etc.), but it has somewhat lower quality than JPEG 2000 (it's optimized for speed), and the actual compression and decompression has to be done through Microsoft's APIs. Maybe if they improve it an open-source it (yeah, right), it'll get support from browser and camera makers.

  11. The description of DCT is pretty funny by Hoplite3 · · Score: 4, Interesting

    I'm a bit skeptical of information in that article after reading the DCT description that described it as a rounding trick. What, is frequency-space too hard of a concept? Doesn't everyone get some Fourier analysis in college these days? You need to know it to be informed about a lot of modern data analysis.

    --
    Use the Firehose to mod down Second Life stories!
    1. Re:The description of DCT is pretty funny by Overzeetop · · Score: 1

      If you grabbed 1000 people at random - heck, I'll even give you 1000 people between the ages of 20 and 40, you'd be hard pressed to find 20 that have ever heard of DCT or Fourier analysis, and phenominally lucky to find one that could actually describe what it means.

      Oh, and the answer to your question is "yes." Saying "Frequency Space" as part of a description to anyone who is not involved in either said data analysis, compression, or vibrations (my former, and sometimes current, field) is guaranteed to be met with a blank stare.

      --
      Is it just my observation, or are there way too many stupid people in the world?
    2. Re:The description of DCT is pretty funny by Miseph · · Score: 1

      Nope, only the people who learn how to do modern data analysis. You can pretty much assume that anyone with a liberal arts background 9literature, history, law, psychology, etc.) has not.

      --
      Try not to take me more seriously than I take myself.
    3. Re:The description of DCT is pretty funny by Rui+del-Negro · · Score: 5, Informative

      And so you should describe it as "dividing numbers by two and then multiplying them again"...? In other words, a "simple" description is preferable, despite the fact that it's completely wrong...? Hell, "dividing numbers by two" isn't even an accurate description of quantization, let alone of a DCT.

      I think I made a pretty decent job of explaining what "frequency space" is, and why it can be used to improve compression, here:

      http://digitalproducer.digitalmedianet.com/article s/viewarticle.jsp?id=109739-2

      (scroll down to "The transformers")

      It also explains why DCT isn't a form of compression per se, it simply makes it possible to use quantization in a way that does not affect quality as much as it would in "pixel space".

      Several "non-techies" have read that and, although they realised the transform itself is not something trivial, they understood what it did and what it was used for. Something that you can't really say about the Atomic article (or its author).

    4. Re:The description of DCT is pretty funny by Anonymous Coward · · Score: 0
      It's been a while, but isn't there a difference between a Discrete Cosine Transform and a full Fourier (sin and cos terms) Transform? Granted, they can be mapped onto each other, but the quickest way to pull off a DCT is not the same as the quickest way to pull off a FFT, IIRC. I'll even grant you that they are both ways to take a data series, and re-map it onto "frequency space", but they are not, exactly, the same critters (i.e. in the FFT, you have an e^(j*u) which, using Euler's rule, can be translated into cos(u)+j*sin(u). the DCT, IIRC, does not include the j*sin(u) term, thus the name : Discrete Cosine Transform).


      If you're going to be pedantic, why not do it properly?

    5. Re:The description of DCT is pretty funny by Anonymous Coward · · Score: 0

      If you grabbed 1000 people in the video compression industry and ask them, I bet you'd have much better luck.

      But it isn't a complaint over him not using the right terms. It is a complaint over not having the right concepts either.

      The whole point of DCT is to get the image in a form that you can compress out the least important parts of an image. His description implies that you just throw out random parts of the entire image.

    6. Re:The description of DCT is pretty funny by Anonymous Coward · · Score: 0

      Pedantic? No, the guy was completely wrong. The linked article implied that it was just a simple linear transform on the original image. The difference between FFT and DCT for the purpose of this discussion is minimal. Both of them are used to pull the frequency information out of the image for better compression.

      It is like comparing a motorbike and a motorcycle. In a discussion about two wheeled motored vehicles there is a difference. They are pretty much the same thing when compared with a pogo stick.

    7. Re:The description of DCT is pretty funny by bodrell · · Score: 2, Interesting

      If you grabbed 1000 people at random - heck, I'll even give you 1000 people between the ages of 20 and 40, you'd be hard pressed to find 20 that have ever heard of DCT or Fourier analysis, and phenominally lucky to find one that could actually describe what it means.

      Oh, and the answer to your question is "yes." Saying "Frequency Space" as part of a description to anyone who is not involved in either said data analysis, compression, or vibrations (my former, and sometimes current, field) is guaranteed to be met with a blank stare.
      I first came across Fourier transforms in chemistry--specifically IR spectroscopy. I had the unfortunate experience of using a non-Fourier Transform Infrared Spectrometer (FTIR), a.k.a. a single-wavelength IR. It was a pain, and very time consuming, since the instrument scanned through each individual wavelength measuring absorbance of the sample. When I first used an FTIR, well, wow. It was explained to me that the FTIR measured all wavelengths at the same time, then crunched some numbers to calculate the absorbance at each wavelength. That's not so hard to understand for something that is time-invariant, but audio and video don't fit that description. That's why I'm still trying to figure out codecs, DCT, etc.

      All chemical and electrical engineers, at the very least, know what frequency space is. Not just the small subset of occupations you mentioned. Wrapping one's brain around the Laplace transform is trickier than grasping the Fourier transform, in my opinion. The Dirac delta function is counterintuitive, to say the least. And frequency space--that at least has some physical sense. But s-space? WTF? It is only used to solve tricky differential equations, then you transform back into the time domain. If there is a physical interpretation for s-space, someone please correct me.
      --
      Si la vida me da palo, yo la voy a soportar Si la vida me da palo, yo la voy a espabilar
    8. Re:The description of DCT is pretty funny by ChrisA90278 · · Score: 1

      Doesn't everyone get some Fourier analysis in college these days?

      No, The people who study English, Journalism and Education don't have to take any math past finger counting. OK, well maybe decimals and fractions. It's quite rare to find someone who can understand "technical stuff" and write well enough to explain it.

    9. Re:The description of DCT is pretty funny by anno1602 · · Score: 1

      I think I made a pretty decent job of explaining what "frequency space" is, and why it can be used to improve compression


      Yeah, I think you did. Thank you for that article series.

  12. I thought there was too much information... by CaptainPatent · · Score: 4, Funny
    So I compressed it for ease of reading:

    "Atmcmpc has n n-krdibly n-depth lûk ata wide rng of video codcs. It lûks not nly at ther iner wrkngs, but also shws thá kwality produced by each ata vriety of settngs and situashuns."

    please note a lossy codec was used for paraphrasing

    --
    Well, back to rejecting software patent applications.
    1. Re:I thought there was too much information... by autophile · · Score: 1

      You forgot the start- and end-markers for compression: o hai, and kthxbai.

      --Rob

      --
      Towards the Singularity.
    2. Re:I thought there was too much information... by Anonymous Coward · · Score: 0

      Every repost is repost repost.

  13. They missed 3ivx by azav · · Score: 4, Informative

    This is not "everything you wanted to know about codecs." In fact, 3ivx just released 3ivx 5.0 for encoding to MPEG4 a few days ago.

    A bit of a bummer that an Australian website missed reviewing an Australian created codec.

    FYI, here's the press release. And YES! It does do Linux!. Tux be praised.

    http://www.3ivx.com/pr/pr20070607_50.html

    Cheers

    --
    - Zav - Imagine a Beowulf cluster of insensitive clods...
  14. This article is so full of... by Anonymous Coward · · Score: 0

    This article is so full of errors that i'm only going to point out this particularly peculiar part:

    Reverse-engineering industry standards is a great open source tradition, and x264 is the result of the video industry's new wonder codec, H.264, being given the treatment.

    1. h.264 is not a codec. It's a standard, e.g. a series of papers describing what a codec should do in order to compress video.
    2. x264 devs did not reverse-engineer anything. They just used the standard to write an h.264 compliant codec like everybody else.
    3. If you actually reverse-engineered a standard you would get the language used, which is quite frankly well documented already ;p

  15. A wide range? by jd · · Score: 4, Interesting
    I've seen more codecs on the back of a postage stamp. Seriously, one "modern", effectively one "old" (DivX and XviD are forks of the same original design), and one "archaic" does not make for much of a range. It doesn't even cover the spectrum of eras, never mind the spectrum of codecs.

    For those who like laundry lists, here are some codecs not listed: Dirac, Theora, Huffyuv, Lempel-Ziv-Oberhumer Codec, MNG, Cell, NV, WaveCodec, Motion JPEG and MSU Lossless Video Codec. The wikipedia page doesn't list all of these, it took some scouting to find others and some of the early early ones are apparently only listed in the documentation on Open Source videoconferencing software I had back in the early 1990s.

    Are any of these significant, though? Well, Dirac (BBC) damn well should be - we're only talking a high-definition TV quality codec by a major broadcaster with on-site offices in most countries that would be a logical choice for their remote bureaus to use and be a good candidate for competing with digital broadcasters in general.

    Theora - well, it would be the ideal desktop videoconferencing codec in many ways. Those in common use today are heavier than necessary but the quality you buy with that at the bandwidth generally available just isn't worth it.

    Huffyuv is said to be the fastest codec on the planet by some, which is entirely possible. That would make it good for most things where CPU power is expensive but bandwidth is cheap. (Embedded systems would probably fall into that category a lot.)

    MSU's Lossless Codec is probably the slowest codec ever written, but gives by far the best compression. It makes a great reference codec to compare others against, apparently. If you could develop a decent hardware implementation, it might be a serious competitor to HD-DVD and Blu-Ray, as you could pack a comparable volume of material onto a standard DVD and therefore use already-existing commodity disks and players. All you'd need is a patch kit to add the decoder. This would likely appeal far more to consumers, as they wouldn't need to spend as much, but the studios and the manufacturers would hate and despise it for the same reason.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    1. Re:A wide range? by ebonkyre · · Score: 1

      HuffYUV is also "lossless" in a roundabout sort of way (think MJPEG + gzip'd error matrices), but only gets at best 2.5:1 compression as a result. Great for editing, wouldn't use it for distribution.

      --
      "Time is an abstract concept devised by carbon-based lifeforms to monitor their ongoing decay." - Thundercleese
    2. Re:A wide range? by CryoPenguin · · Score: 1

      How is that roundabout?
      HuffYUV is lossless in about the simplest way possible: it uses a reversible transform (gradient or Paeth prediction), and doesn't quantize the residual.

      Now, if you want a roundabout lossless codec, see WavPack's hybrid mode. It's a lossy perceptual audio codec, that also supports putting the information thrown away by the lossy compression into another file, and the two files can be combined for lossless reconstruction.

  16. Standards change by dazedNconfuzed · · Score: 1, Informative

    I'd like to point out that 1680x1050 is huge.

    [Ahem] The new standard is 1920x1080. Cope.

    --
    Can we get a "-1 Wrong" moderation option?
    1. Re:Standards change by tomstdenis · · Score: 4, Informative

      At 1mbps? Um hell no. HDTV is 19mbps for a reason (which of course is probably sent over the wire at ~8mbps or so ... cheap bastards).

      Tom

      --
      Someday, I'll have a real sig.
    2. Re:Standards change by Silverlancer · · Score: 3, Informative

      1080p works pretty well at 3-4 megabits with H.264 High Profile. You can fit a full-length movie on a DVD5 that way. Of course, it'll be completely unplayable without CoreAVC.

    3. Re:Standards change by ncc74656 · · Score: 1

      1080p works pretty well at 3-4 megabits with H.264 High Profile. You can fit a full-length movie on a DVD5 that way. Of course, it'll be completely unplayable without CoreAVC.

      mplayer works well enough playing HD H.264 on my MythTV box, and it's just an Athlon 64 3700.

      --
      20 January 2017: the End of an Error.
    4. Re:Standards change by Silverlancer · · Score: 1

      With CABAC, 16 reference frames, and 1080p resolution? Wow.

    5. Re:Standards change by WuphonsReach · · Score: 1

      At 1mbps? Um hell no. HDTV is 19mbps for a reason (which of course is probably sent over the wire at ~8mbps or so ... cheap bastards).

      Yes, it's sent at 19mbps (or so) for a reason: they're using a MPEG2 codec to do the compression. Not a more modern codec.

      --
      Wolde you bothe eate your cake, and have your cake?
  17. The meaning of "print" by autophile · · Score: 2, Informative

    "Print" does not mean stipping out all graphics and ads, but leaving the number of pages the same.

    >:(

    --Rob

    --
    Towards the Singularity.
  18. What about Wavlet CODECs? by SpinyNorman · · Score: 1

    Leaving aside how crap the article is in terms of what it does cover, it didn't even include any Wavelet CODECs (Dirac, Snow, etc, ...) which outperform the DCT based methods, both for video and for still images (JPEG 2000).

    1. Re:What about Wavlet CODECs? by jdfx · · Score: 1

      Outperform in what sense? Computational complexity? Is any of those named being used in real life?

    2. Re:What about Wavlet CODECs? by imsabbel · · Score: 1

      Wavelet based codec SUCK for video. REALLY REALLY REALLY suck.

      You can get a bit of boost by compressing the I-frames with wavelets, and doing P/B frames classically, but that aint giving you much of a benefit, at the cost of having to worry about the convolution of 2 completely different error sources.

      (and yeah, i know stuff like snow. Those actually prove that point)

      --
      HI O WISE PRINCE. WHT TOOK U SO DAM LONG?
    3. Re:What about Wavlet CODECs? by SpinyNorman · · Score: 1

      I can't claim to have tested either myself, but the BBC seems to be pushing Dirac pretty hard, and seems to think it's mature enough to be moving into hardwar (VHDL) implementations as well as software:

      http://www.bbc.co.uk/rd/projects/dirac/index.shtml

      I'm not sure what you mean about not getting much of a benefit - surely better compression and not getting block artifacts is pretty major.

    4. Re:What about Wavlet CODECs? by Tab+is+on+Slashdot · · Score: 1

      "which outperform the DCT based methods"

      Not so fast. None of the current wavelet codecs (Dirac, Snow) outperform H.264 at this time. Probably in the future, but not just yet.

  19. Results: (spoiler) by Anonymous Coward · · Score: 0

    If you're simply looking for a definitive answer as to what the best quality encoder is, you won't find it here - or anywhere else for that matter.

  20. H.263 baseline==MPEG-4 short header by benwaggoner · · Score: 1

    I'll take a whack at it.

    H.263 baseline is the same bitstream as MPEG-4 pt. 2 short header (and forms the basis of the Flash Spark codec). Both H.263+ and ++ and MPEG-4 pt. 2 Simple Profile and Advanced Simple Profile have further (and different) enhancements to that core bitstream.

    Being based on H.263 proved to be much more of a limit for MPEG-4 pt. 2 development than was original determined, which led to the development of newer codecs like VC-1 and H.264.

  21. We Don't Care!! by Anonymous Coward · · Score: 0, Insightful

    We don't care about all of these redundant codecs. Just pick a high quality format with good compression and make it an OPEN STANDARD for all playback devices. Computers, Web, mobile phone, home theater, whatever. Just make it standard so we don't have to waste time with hundreds of incompatible formats and all the stupid codecs, drivers, and devices to play them! GAH!

    1. Re:We Don't Care!! by Rui+del-Negro · · Score: 2, Insightful

      I don't know who the "we" you're talking about is, but some people do understand that different situations correspond to different needs. Sometimes you need lossless quality, sometimes you need the lowest possible data rate, sometimes you need a format that can be decoded with very little CPU power.

      Do you also think that there should be a single type of paint, a single type of tire, a single type of lightbulb, and so on...?

    2. Re:We Don't Care!! by Constantine+XVI · · Score: 1

      You mean like H.264?

      --
      "I think an etch-a-sketch with an ethernet port would beat IE7 in web standards compliance."
  22. WMA 10 Pro LBR! by benwaggoner · · Score: 1

    Oh, I'm really a big fan of our WMA 10 Professional low bitrate modes (

    And on a practical level, we support rate control modes rarely seen in other audio codec implementations, like 2-pass CBR and 2-pass VBR. This lets us get more bang for the bit compared to 1-pass CBR and VBR modes.

    1. Re:WMA 10 Pro LBR! by Movi · · Score: 2, Insightful

      I know youre kind of on-topic but this is the 2nd time ive seen you in this thread waving about what cool codecs you have. Thats fine, however, what good is it when i can't hear it/see it since i use Linux and Mac OS X. I _hate_ it when some doofus encodes something i want to see into wmv9 - this means extra hassle for me - either with maplyer and binary codecs, or WMVPlayer from flip4mac. The upside of _all_ other codecs mentioned here is that theyre all open source (ok, exclude divx, its superseeded by xvid anyway). So please, stop astroturfing.

    2. Re:WMA 10 Pro LBR! by PitaBred · · Score: 1

      And how does that help me, as a Linux user? Let me know when WMA is portable.

    3. Re:WMA 10 Pro LBR! by benwaggoner · · Score: 1

      The codec has already been licensed by vendors of Linux-based devices. We offer a complete source code implementation as a porting kit.

    4. Re:WMA 10 Pro LBR! by Anonymous Coward · · Score: 0

      So fucking what, as long as wma remains the preferred method for spyware to ask for plugins to hook the damn trojan into your system wma is dangerous. I refuse to load it on any PC I own.

  23. You mean the Reverse Engineered H.264 ripoff.... by benjin · · Score: 1

    So why is it that Windows Media Player started to get a remarkably better codec just about the same time that the first drafts for MPEG 4 were coming out? It would appear from the outside like they took the code and because it didn't have to pass a slow IEEE ratification board anymore, was able to be put straight to market in the same way that DivX was. Then as new improvements in the MPEG 4 code were made, suprisingly there was a new release of Windows Media Player aswell. WMP 7,8,9 were all rapid fire released and then finally when H.264 was getting close to being ratified and released lo and behold Windows Media Player gets a brand new spankin' HD codec later be to named VC-1 so as not to remind everyone that it came directly from Microsoft as Windows Media Player 10 Video Codec. If this is wrong then please elucidate because that's a whole lot of coincidences in a row. Why would a company hand over their codec for standards? Because they know that no more improvements are going to be made and that the code base from which you were working has been frozen as H.264 AVC Level 10. Meaning you can't review the code anymore as it's updated by being on the IEEE board.

  24. Re:You mean the Reverse Engineered H.264 ripoff... by benwaggoner · · Score: 2, Informative

    Are you aware that VC-1 in the SMPTE spec for VC-1? So both codecs have fully publshed specifications, and reference source code for both encoding and decoding.

    All the info about algorithms in the video codecs is fully public. The same body, MPEG-4 LA, handles licensing for both technologies, and handling patent issues around them.

    Going back to the paleolithic era, Microsoft made the original reference encoder for MPEG-4 (hence the venerable MPEG-4v3 codec). Windows Media Video 7 and later were about going beyond what MPEG-4 was capable of, since we and everyone else started hitting our heads against its architectural limitations. Microsoft was also quite involoved in H.264 as well, including a Microsoft employee who chaired the committe that developed the standard.

    That said, we find VC-1 is a better codec for many uses. H.264 was really designed more for an ASIC environment, and uses computationally and bandwidth intensive techniques like CABAC and a really strong loop filter that make it much more expensive for PC playback (in CPU requirements and battery life in a laptop) than a VC-1 encode of equivalent quality and bitrate. Also, VC-1's simpler loop filter design makes it easier for us to preserve textures like film grain at lower bitrates. This lower horsepower needed for decode makes it possible for us to do stuff like software-only decode of HD content inside the Silverlight brower plugin, where we have no access to hardware acceleration.

  25. Nothing more expensive than free by Lead+Butthead · · Score: 1

    DiVX demands your e-mail address to receive "reg key," then immediately sells your e-mail address to douche bag spammers.

    --
    ELOI, ELOI, LAMA SABACHTHANI!?
    1. Re:Nothing more expensive than free by Anonymous Coward · · Score: 0

      DiVX demands your e-mail address to receive "reg key," then immediately sells your e-mail address to douche bag spammers.


      With my ISP I get Yahoo mail with AddressGuard disposable addresses. I gave an address unique to them that I can turn off when I want. No need to have my own mail domain or use one of those disposable address sites.

      I've only twice seen spam to an address I gave to a website.

    2. Re:Nothing more expensive than free by Anonymous Coward · · Score: 0

      Nice advertisement.

      Any email service will do. Jackass.

    3. Re:Nothing more expensive than free by DynaSoar · · Score: 1

      > DiVX demands your e-mail address to receive "reg key," then immediately sells
      > your e-mail address to
      [AHEM]
      > douche bag spammers.

      That didn't happen when I got their free codec. It didn't happen when I got their free package with the player and converter. It didn't happen when I bought the Pro version with the VOB conversion extension. It didn't happen when I registered an account with their site. It didn't happen when I changed my registration to add the fact I got a DivX capable home DVD player. I didn't get any spam at the address I gave them.

      But then, I'm not a douche bag. Sorry to hear of your problem.

      --
      "I may be synthetic, but I'm not stupid." -- Bishop 341-B
  26. Non-Windows VC-1/WMA Pro playback by benwaggoner · · Score: 2, Interesting

    Well, the OP was about how good codecs are :).

    Actually, there are more non-Windows playback options than you think.

    First, Flip4Mac can play back all VC-1 flavors and WMA Pro today. It doesn't play back the higher frequencies of WMA Pro, but they continually improve their support every release (full VC-1 Advanced Profile came in 2.1.1 last month). Downloading it seems pretty simple, but it isn't open source. And it nicely integrates with QuickTime, so once it's installed, WMV beccomes just another file format that QuickTime Player and the QuickTIme browser plugin can use. Can you go into some more detail as to why it's a painful option for you?

    VLC 0.8.6 added WMV playback support, including VC-1. It's got some glitches around playing back B-frames, but I'm sure they'll address those. I haven't tried WMA Pro in it yet, I must admit.

    Since VC-1 is a SMPTE standard, with full decoder reference source code avilable, adding decoding for it isn't harder than any other codec.

    And of coures Silverlight will provide WMV playback on Mac and Windows as a browser plugin. We haven't committed to doing a Linux port post 1.0, but we've certainly gotten a lot of feedback from people who'd like to see it.

    1. Re:Non-Windows VC-1/WMA Pro playback by GNious · · Score: 1

      VLC 0.8.6 added WMV playback support, including VC-1. It's got some glitches around playing back B-frames, but I'm sure they'll address those. I haven't tried WMA Pro in it yet, I must admit.

      Shame that WMV is not so commercial as to warrent the original developers spending time to get it out to all platforms.

      now, if you'll all excuse me, I'll go (and not) look at my national TV station transmitting in WMV online, and thus failing misserably in living up to their charter about Public Service :(
      /G
  27. It's official... by u0berdev · · Score: 1
    ..this article has been truly /.'ed:

    Problem loading page....the connection has timed out -RC
  28. Theora?? by Anonymous Coward · · Score: 0

    Rather than talk about that terrible article, I have a question about codecs.

    I've only recently started looking into video codecs. Until now I've just dumped everything to ".avi" and it was good enough. Lately I've been consolidating my data and I need to pick out a good standard format. Anybody got any preferences or ideas?

    I'm leaning towards .ogg, with theora video and vorbis audio, for the sake of patent safety, and because it feels nicer not to have different parts of the same file encoded by software from different projects.

    1. Re:Theora?? by Rui+del-Negro · · Score: 1

      "AVI" is a container format, AVI files can use hundreds of different codecs.

      If you want the best possible quality, stick to the original format (ex., if your source are DV tapes, use DV-compressed AVI or MOV files).

      If you want the best quality vs. size ratio, a MPEG-4-based codec (ex., XviD, x264, etc.) is probably the best choice. Using an AVI / MOV container will give you compatibility with a lot of existing software.

      Good luck using Theora with video editing / compositing software...

    2. Re:Theora?? by steve86-ed · · Score: 1

      I would suggest MPEG-4 Part 10, AVC also known as H.264. The reason being that your gonna want good compression options for your media and you're gonna want to be able to play it back somewhere. There are currently multiple devices that already support MPEG-4 Part 2 SP/ASP, but if your building your library now, you might be concerned that AVC will be getting a significant push while ASP support will be diminishing what with HDDVD and BR useing AVC.

      As far as your wrapper for content, I prefer Matroska, .mkv because of the support for menus and chapters, but I don't know of any playback support on anything but a PC. The DLINK DSM-750 will have playback support for H.264, but what containers will it support? Xbox Media Center on a modded xbox (old one) will playback ASP like a dream, but will choke on AVC. The xbox360 will have support for both (or has, I haven't checked out the Live update yet) but I still think future dvd/hddvd/br players will have better support for AVC as well as network media players, which hopefully we'll see more of soon.

  29. Man, is that a useless article! by benwaggoner · · Score: 2, Informative

    The Slashdotting finally eased up enough for me to finally get to Page 4. Earlier complaints about the complete absence of accurate facts in the technical part were dead-on. But in the proceudre, wow, it's hard to know what relevant of the test would be.

    40 FRAME clips? The default GOP length of most of these codecs is longer than that! There's no useful test of rate control in there, or keyframe supression popping.

    And as far as compression setings, all they say is "we used the defaults, but set it to highest quality". There isn't just ONE defualt in these products. We don't know if they're even comparing CBR and VBR, 1-pass or 2-pass. And there are lots of tweaks appropriate to different kinds of content that would be used in practic - one doesn't compress film source like cel animation!

    Sheesh, there's really no useful information here at all. The average reader would probably wind up knowing less about compression after reading it...

  30. Digital Cinema compression is NOT "lossless" by Anonymous Coward · · Score: 0

    I encourage anyone interested to read up on JPEG2000.

  31. Re:You mean the Reverse Engineered H.264 ripoff... by benjin · · Score: 1

    So basicaly what your saying is that becasue they submitted and got approved the codec for SMPTE it some how did not derive from MPEG 4? Does the MPEG LA get paid for the use of VC-1 or does payment go directly to the members who hold essential patents on the format. It says that there are 15 other companies mentioned but Microsoft is the only one putting out codecs for it. I don't hear of a Hitachi or Toshiba VC-1 encoder. Every reference to VC-1 looks like this, "SMPTE VC-1/Windows Media® Video 9". Looks obvious who it belongs to. Ah yes, the venerable MPEG-4v3 codec, It's weird how the data rates it used were around the same as Sorenson's codec at the time. I could swear that Sorenson joined the consortium and were one of the guys who actually brought code to the table. Then about 6 months later we have MPEG-4v3. Wow. I say that because Sorenson then started touting their MPEG 4 codec about the same time but had troubles with it because it was not any better than their proprietary codec and gave yet another code base to keep up with. What's Sorenson doing these days? Keeping their mouths shut that's what. All along ON2 opted for their own glory and have a codec that is atleast close to H.264 and VC-1 but only recently do they have the market share they thought they would 5 years ago through flash. I don't know if you can talk about processor intensity these days because the level needed for software play back is so much that HD playback is only useable with in the last year and a half for the average PC anyways. The sheer size in pixels of the image was part of the problem. Let alone the math behind what to decrypt. I'm sure the Silverlight browser plug in can play back HD because hell even Flash can do it these days. 1080p is still a theoretical for most people let alone for a website unless its on an internal network over Gigabit for more than 20 users. The processors are just faster that's all. Why would they sit on a body like the MPEG 4 and then release a competing product with the same functionality? Because they can provide a better service? It seems a bit disingenuous and looks like they were there to keep an eye on the competition and to slow them down with patent disputes while they got VC-1 WVC-1/WMVa/WMV3 to market. I can see how there might be a different way of looking at this but damn, Ben it looks like it was on purpose from some points of view. MS's codecs have always been a bane to me because there's always a catch to using them and maybe that is changing but beyond that I would like to say that I really respect your knowledge in this area and used to pour over your books for how to make stuff look great. You helped me out in many situations over the past few years doing compressions just by experimenting with the data rates like you did. So thank you for your hard work and your skill.

  32. Re:You mean the Reverse Engineered H.264 ripoff... by benjin · · Score: 1

    replied to my self on this one sorry. It was meant for this post... So basicaly what your saying is that becasue they submitted and got approved the codec for SMPTE it some how did not derive from MPEG 4? Does the MPEG LA get paid for the use of VC-1 or does payment go directly to the members who hold essential patents on the format. It says that there are 15 other companies mentioned but Microsoft is the only one putting out codecs for it. I don't hear of a Hitachi or Toshiba VC-1 encoder. Every reference to VC-1 looks like this, "SMPTE VC-1/Windows Media® Video 9". Looks obvious who it belongs to. Ah yes, the venerable MPEG-4v3 codec, It's weird how the data rates it used were around the same as Sorenson's codec at the time. I could swear that Sorenson joined the consortium and were one of the guys who actually brought code to the table. Then about 6 months later we have MPEG-4v3. Wow. I say that because Sorenson then started touting their MPEG 4 codec about the same time but had troubles with it because it was not any better than their proprietary codec and gave yet another code base to keep up with. What's Sorenson doing these days? Keeping their mouths shut that's what. All along ON2 opted for their own glory and have a codec that is atleast close to H.264 and VC-1 but only recently do they have the market share they thought they would 5 years ago through flash. I don't know if you can talk about processor intensity these days because the level needed for software play back is so much that HD playback is only useable with in the last year and a half for the average PC anyways. The sheer size in pixels of the image was part of the problem. Let alone the math behind what to decrypt. I'm sure the Silverlight browser plug in can play back HD because hell even Flash can do it these days. 1080p is still a theoretical for most people let alone for a website unless its on an internal network over Gigabit for more than 20 users. The processors are just faster that's all. Why would they sit on a body like the MPEG 4 and then release a competing product with the same functionality? Because they can provide a better service? It seems a bit disingenuous and looks like they were there to keep an eye on the competition and to slow them down with patent disputes while they got VC-1 WVC-1/WMVa/WMV3 to market. I can see how there might be a different way of looking at this but damn, Ben it looks like it was on purpose from some points of view. MS's codecs have always been a bane to me because there's always a catch to using them and maybe that is changing but beyond that I would like to say that I really respect your knowledge in this area and used to pour over your books for how to make stuff look great. You helped me out in many situations over the past few years doing compressions just by experimenting with the data rates like you did. So thank you for your hard work and your skill.

  33. mod up all the parents and grandparents by PopeRatzo · · Score: 1

    See, now this is why I read Slashdot. Thank you,Kadin and your progenitors for the excellent primer on codecs. If not a full course, it gives me enough to use.

    --
    You are welcome on my lawn.
  34. Not this again... by Anonymous Coward · · Score: 0

    I'm sick of this Microsoft tactic, trying to repeat something over and over to make it a fact.

    I find it offensive when I hear claims about "H264 quality, MPEG-2 speed". Not even close. I've seen a lot of WMV encodes (professionally done too, in HD-DVD discs, those rare WMV HD discs, and "official" trailers and propaganda material), and I've never been impressed. It looks just a bit better than XviD (ASP). Not so with H.264: 2+ hour movies at 720p with incredible sharpness (Casino Royale comes to mind) and no artifacting whatsoever, at just over 4GB.

    About the speed: no comment. On my machine, libavcodec (in ffdshow) decodes MPEG-2 three times faster than Microsoft's decoder decodes WMV, and MPEG-4 ASP (no qpel or GMC) deocdes about twice as fast. The max I can watch with WMV is 720p (this is OK according with the hardware requirements Microsoft states), however 1080p is no problem with MPEG-4 ASP and trivial with MPEG-2.

    To top it off, the incredibly fast CoreAVC makes AVC decoding just a bit slower than WMV, so I can watch 720p AVC too (mild slowdowns with bitrate peaks >10Mbps when using CABAC). If I disable the inloop deblocker, it becomes FASTER than WMV, at the cost of generally tolerable artifacting.

    I believe the WMV decoder is heavily optimized with Pentium IVs in mind, so I think it'll fare a little better in one, but I don't expect very big changes.

    So WMV offers a a bit more quality than ASP, significantly lower than AVC; and a bit faster decoding than AVC, significantly slower than ASP. Not a very good deal if you ask me.

    It's just another case of Microsoft playing deaf and repeating the same marketing materials over and over (anybody remembers the "CD quality at 64Kbps" claims, when they still had problems competing with MP3 at ~128Kbps? A bigger MDCT window will fool normal people, but it was laughable in formal tests). I've heard your claims, and you have given me no reasons to believe it. WMV is not competitive, it doesn't fit in the sweet-spot quality/speed curve.

    About the low-bitrate stuff: it looks terrible. In WMP it looks good but only due to the external postprocessing, which is excellent but:

    * It's not a formal part of the codec if I'm not mistaken
    * It's very undeterministic, it turns on and off as WMP feels like it (although you can force it with registry settings)

    One thing that has been bugging me it whether as more powerful machines become available, this external postprocessing will start turning on on HQ encodings, blurring them.

  35. an easier way to do this by cinnamon+colbert · · Score: 1

    I think there was a much easier way to figure out what to do with this story: look (look) at the home page; the aesthetic sense is so bad, you know it is crap going forward.
    no one who could write a decent sentance would be associated with such bad layout.

  36. Re:You mean the Reverse Engineered H.264 ripoff... by benwaggoner · · Score: 1

    Actually, there are a number of independent implementations of the VC-1 encoder not based on any input from Microsoft. Main Concept and Sonic Cinevision are probalby the most prominant. There's also an open source one that came out of a "Summer of Code" project.

    I'm not really sure what you're getting at about Sorenson and all that. Sorenson Media had many generations of popular codecs. You're right about a connection between that and H.263 - reverse engineering determined a few years ago that the original Sorenson Video codec was basically H.263 + YUV-9 color + Vector Quantization. Sorenson the company poured most of thier codec development into real-time H.264 encoders for their videoconferencing systems, but spun off the compresion tools business, which continues to do quite nicely (and they're a fine partner of ours).

    As for why VC-1 and H.264? Different codecs for different goals. VC-1 was designed for high-performance PC playback as the #1 goal, and with high def scenarios as a big factor. However, H.264 was designed with a much bigger relative focus on videoconferencing and device implementations. Different codecs with different goals, and hence different sweet spots.

  37. Factual errors... by evilviper · · Score: 1
    From TFA:

    an uncompressed two-hour film in digital cinema resolution and quality will clock in at about 12 terabytes,

    That number doesn't sound REMOTELY reasonable.

    4K is 4096 x 2160 = 4,527,360 pixels/frame

    32bpp per pixel == 144,875,520bits == 17,685 kilobytes/frame

    4K is 24fps == 424,440 kilobytes/sec.

    2 hours == 7,200 seconds

    Which makes 3,055,968,000 Kbytes total or 2.846 Terabytes for 2 hours of uncompressed video.

    And I agree with everyone who's already said how useless this article is. If you don't understand video encoding going in, their explanations won't help. And if you do, you'll feel stupider for reading it... The writer certainly doesn't seem to understand it himself.
    --
    Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
    1. Re:Factual errors... by Steavis · · Score: 1
      You're right about almost all of it.

      4K is 4096 x 2160 = 4,527,360 pixels/frame

      I think your calculator had a meltdown. Unless I'm missing something, an image 4096 pixels wide X 2160 pixels high is 8,847,360 pixels per frame.

      Still, that puts a film at 6.115 TB, about half their number, so you're right about it being BS. I work with uncompressed video from time to time, and haven't seen any 64bit color depth frames yet either...
      --
      If Star Trek had the internet: Captain, we've received an IM from the romulans. "Surrender or be destroyed. LOL. o.O"
    2. Re:Factual errors... by evilviper · · Score: 1

      I think your calculator had a meltdown.

      Good catch. I imagine that number was due to a typo.
      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
  38. Re:You mean the Reverse Engineered H.264 ripoff... by benjin · · Score: 1

    A better way to express the concern I was talking about is that the partners that are making this are after the fact. They did not add to the code and help create the codec. This was Microsoft's baby because everyone was focused on the ratification of H264. They didn't see this one coming. Everyone was surprised when the VC-1 Code came out as the original WMV codec. I think even you would have to admit there was a big "what the hell" from the MPEG committee. Support came after the fact not in anticipation of it. Again it's not the VC-1 encoding, because your right that's free(not really only under 100,000 people) and open to anyone to replicate that was suspect but the creation of a codec that ran parallel to H264 as it was stabilized each and every step of the way as was demonstrated by the three iterations of WMV through VC-1 which was where the code freeze happened on H264 AVC. You stopped development when they did because you knew there wouldn't be anymore advantageous progressions of code that had to be trumped.

    What I was getting at with Sorenson is that you used their code as a platform to launch WMV7.0 after you saw Sorenson Video 3 compression techniques from the code they gave the Consortium which from what you say makes sense that they added and hacked the h.263 back when it was in development in 1997 or so. If I remember right, Sorenson hit their stride with Quicktime in 1998-99.

    I'm curious what you do as partners with Sorenson? Do you guys co-develope Codecs or are they asking you how to better integrate their systems with your OS and media platforms. There's a big difference.

    When you say stuff like "VC-1 was designed for high-performance PC playback as the #1 goal" it smacks of marketing vernacular. I know... I've done it for 10 years. What that translates to is "We know that it takes a brand knew system to fully use our program." and because its a program, you can always up the ante just a little more so that you need newer hardware. Remember that your first argument as for why you came up with VC-1 is that H264 was too intensive for computer playback. Now your saying that VC-1 was firstly made to take advantage of new hardware that easily plays back all the codecs you can throw at them including H264. So in that respect I think you can just say that it was in your best interest not back MPEG but to create your own codec that is more compatible with the philosophy and design techniques of the company. One that can grow with the demands of your customer and give them a more versatile user experience. H264 was never going to be for video conferencing as its primary goal, it was a side mention in 1998 as a possible use scenario for overlaying meta data like you would find in a weather report. AVC was specifically designed for HD digital carriers as the next major jump in distribution for broadcasting standards. The two codecs don't have different goals because if they did they wouldn't both now be on HD-DVD and Blu Ray discs. Or be touted in Windows Mobile 6 , or be the main codec for the Xbox... Wait a minute maybe that last one would fall more under the IPTV transmission aspect of H264 signaling. That sure seems like a lot of device implementation to me. By the way where is the support for h264 that you helped create? I think you left some friends at the door on your way to the show.

    You have to push MS solutions... I get that. It's your devision so it comes first but this is the very real reason that no one trusts your company. They'll take your money sure but everything is laced with this poison of pickpocketing the best part of a collaboration and leaving the rest in litigation until it doesn't matter any more. I think that is one of the major under currents in the comments made on Slashdot. I say this because your really good at what you do but you happen to be part of something that is a little too much business and not enough ethics.

  39. Re:You mean the Reverse Engineered H.264 ripoff... by LarsG · · Score: 1

    "Microsoft made the original reference encoder for MPEG-4 (hence the venerable MPEG-4v3 codec)."

    The 'reference encoder' that doesn't even manage to output a valid MPEG4 bitstream? My hat off to Microsoft for the way they fragmented MPEG-4 part 2.

    --
    If J.K.R wrote Windows: Puteulanus fenestra mortalis!
  40. Re:You mean the Reverse Engineered H.264 ripoff... by LarsG · · Score: 1

    Dude, use [enter] once in a while.

    MS has submitted VC-1 as a standard because they wanted an alternative to h.264 (aka Mpeg4 part 10 and Mpeg4 AVC). Their main selling point was that VC-1 would have lower licensing fees. Unfortunately for them, they underestimated the number of patents held by other companies. http://www.theregister.co.uk/2007/04/14/microsoft_ vc-1_codec_analysis/

    As for MSMPEG4v1/2/3.. MS did originally participate in the MPEG4 process, and during that time they released the MSMPEG4 codecs. Which, as we should be used to by now, did not conform with the final MPEG4 spec. As to why MS called the non-standard codecs 'MPEG4' and why they didn't immediately release a standards compliant codec when MPEG4 was finalized, well.. And when they finally did release a proper ISO MPEG4 part 2 video codec, they decided to only support Simple Profile.

    Container formats is also interesting to look at. MS wanted asf to be the container format for mpeg4, but the mpeg4 working group picked Apple's Quicktime container as the basis for .mp4. Now riddle me this - why is the MSMPEG4v3 codec limited to encode to asf files only?

    There is more, but I digress. Suffice to say that MS has a history of only providing token support for audio/video standards while at the same time pushing hard on their own proprietary stuff.

    --
    If J.K.R wrote Windows: Puteulanus fenestra mortalis!
  41. Re:You mean the Reverse Engineered H.264 ripoff... by benjin · · Score: 1

    Yea...that would be a slashdot newbie thing that happened there. Drive by punk just came in my office and hit the html formatting button instead of the plain text. Your right though, it was a hell of an interesting thing thing to watch. It was like seeing two politicians jockey for top position in a debate. ASF was the worst format to deal with. You always new something wasn't right.

      I seem to remember something about diferent patent holders wanting a certain amount and then others that came back with some silly gadgillion type number and this is what they settled on. I remember Quicktime being delayed or at least in controversy when they first released MPEG-4 because they did it before the liscensing was settled. It is a hell of a coincidence that MPEG4 got bogged down in legality while MS was developing their own in house alternative on the side. It's kinda their MO.

  42. You're a little on the history by benwaggoner · · Score: 1

    I'm not sure what you think really happened, but you've got some of the major facts wrong here.

    First, the presentation of VC-1 to SMPTE always hat the explicit goal of standardizing WMV9, and everyone knew it. The working name for it for quite a while was VC-9 in explicit recognition that it was a standardized version of WMV9. WMV9's bitstream was locked down with the Corona launch back in 2001, well before H.264 was complete. If anything, H.264 got more from WMV9, for example the addition of variable block sizes to H.264 High Profile (although just 4x4 and 8x8, not including the 4x8 and 8x4 modes from VC-1). I wasn't at Microsoft at the time, but was part of c24, and saw how all this unfold. You really should go back and research this point - what happened was exactly according to the plan all parties signed onto in the first place. For example:

    http://www.microsoft.com/presspass/press/2004/apr0 4/04-19BroadcastOverallNAB04PR.mspx

    Sorenson Media licenses our Format SDK for incorporation into their product to make WMV files. There's also good guys, and we cooperate in a number of ways.

    We use VC-1 because it was a codec designed to do what we wanted a codec to do :). We certainly support H.264 where appropriate, for example in the Zune (for podcast playback), in the Xbox 360 (file-based playback, and in the HD DVD player), and in the MSTV IPTV solutions.