How does MPEG compression work

I don’t know if this really should go in the Newbie forum so feel free to move it. I understand that video information has 100% of the pixels change from frame to frame and MPEG2 compression basically just changes the pixels that change from frame to frame in order to cut down on the bandwidth (and filesize). My question is what do programs like DVD Shrink and DVDFAB do to decrease the filesize further. I mean the video they compress is already MPEG2 compression so they cant just change the pixels from frame to frame since thats already been done. Do they drop frames? Or change the bitrate on frames that don’t change?

This really has nothing to do with nothing. I am just interested in furthering my knowledge of MPEG compression and how it really works.

Ok no.


Very few video types nowadays contain ALL of EVERY frame. That would be ridiculously large.

There are several types of compression. For example:

  1. Run length encoding (RLE). This compresses for blocks of color. For example, if there’s a lot of RED on the screen (cartoons, for example), you can mark a block of red by saying “465 pixels of red here”, instead of “red pixel, red pixel, red pixel” over and over. Complex, sharp, detailed video doesn’t compress well this way, but Anime does VERY well this way.

  2. “Only show what changes”. Most codecs nowadays use SOME variation of this.

  3. Lossy compression. This is VERY complex, and everyone does it differently. Suffice it to say that MPEG uses one type of lossy compression, and DIVX for example uses another.

What DVD Shrink and others do is called “transcoding in the compressed domain”, or more commonly “transcoding”. It doesn’t decompress the video. Instead, it works with the transform data, and squishes that down. This is why the maximum amount of compression you can get out of DVD Shrink is often only 40% or so. That’s just all the transform data there is to work with!

Hope this helps a bit, feel free to question further.