Click the logo at any time to return to main index
      Click The Logo At Anytime To Go Home

Video Compression Information

This was a post to the Metacreations mail list back in March of 1998, and things have changed quite a bit in the field of Codecs for video compression. According to some professional animators, Apple's QuickTime is the only way to go. Also, the Sorensen Video Codec has become very popular too. I guess everyone has their preferences for these things. 

I've tried to find Mark to see if he would like to update this, but I can't find him anywhere. I'm posting this here as more or less one man's thoughts about it, hoping it may provide some clues as to how all of this stuff works. 
Steve Lareau

Date: 31 Mar 1998 12:09:09 -0800
From: Mark Fedasiuk
Subject: B3D Video Compression Tutorial

Hi Bryce Gang,

Before I started working for MPG (Intel's Microprocessor Design Group), I used to work for the Multimedia group, there I was working on the design of the early real time video capture boards, while the software engineers were working on inventing and developing 'Indeo'.

Here is a short tutorial to help everyone understand the tricky concepts of video compression.

For more technical information on Indeo software, FAQ's and downloads, go to our site at: http://developer.intel.com/ial/Indeo/video/index.htm


Start the good stuff:

So you want to do 20min animations with B3D, but don't have 50 GIGS of disk space on hand huh? Maybe I can help. 

****************
What is a Codec?
****************

Codec is short for compression/decompression. I don't know much about Mac, but in Win95, you can see all of your available codecs by clicking on 'multimedia' in the control panel, and then clicking the advanced tab. There you will see a list of all of your codecs.

Bryce will only list the ones that support compression and decompression. Some will only do decompression an will not appear in your list. In case you didn't know, before you animate, you must tell Bryce what codec to use. Select 'render animation' and then click on the middle edit tab to get the list.

If you can afford the disk space, just use full frames uncompressed. This is the best quality, and you can edit/compress it later if you have something like Adobe Premiere.

If you won't be doing post processing, and want to do long animations in 'sane' amounts of disk space, you will need to select a codec.

***********************************
Codecs Win 95 and B3D
***********************************

If you will be compressing anything that looks like 'photo realistic scenes, you will want to go to the Intel site above and download the and install the Indeo 5 DEVELOPERS compression suite. Don't download the playback only ones or Bryce can't use them! More on this later.

There is a Win95 bug which will confuse 16/32 bit codecs and double list them and other nasty stuff. If you fool around with them and then B3D gives you an error when you try and animate, go to the control panel, and blow away all of your redundant codecs and reinstall them. Each name can only be listed ONCE or you will be sorry! If you do download the Indeo codecs, blow away all other Indeo ones first, as the 5.03 suite is the best, and it WILL reinstall the most updated versions of Indeo 3, Indeo4, AND Indeo5 so you will have them all.

*****************
Selecting a codec
*****************

There are hundreds of different compression algorithms to choose from the trick is to pick the right one for the right task. Indeo is NOT the best choice for all of them so I don't want you to get the impression that I'm doing a commercial here. I'll explain what you need to know if you read further.

Here are the four best codecs I know of, and what to use them for:

Indeo 5.03:

Good at-

Best compression ratio. Very good for photo realistic images, or anything that resembles real motion video (camcorders stuff). Detailed textures, natural tones.

Bad at-

Deep saturated unnatural colors like much computer animation stuff. If you are doing simple geometric objects with bold saturated colors this will not do well. The reason is it uses luminescence info for compression instead of chrominance, this certain colors (especially red) will get very blocky when mapped back. We may fix this.

Cinepak:

Good for scenes with a mix of photo realism and brightly saturated objects. Not as good compression factor, but this codec changes it's compression scheme based on the type of animation. Good as a general codec if you don't know what to use, and aren't looking for the best compression/data rate factor.

Microsoft Video 1:

Good at deeply saturated computer animated stuff. Not nearly as good as Indeo for photo realism.

Microsoft RLE:

This is Run Length Encoding. May be even better then Video 1 for saturated computer animation like stuff, but worst  compression ratio of them all. Haven't done much experimentation with this.


My favorites:

Indeo for realistic Bryce scenes, and Microsoft Video 1 for computer animation like stuff.

************************
How to get good quality?
************************

Selecting a codec is not enough. YOU NEED TO SET IT UP!

Go into configure codec if available. There is a quality slider, but this is defeated if you manually set the data rate. Data rate is VERY important to balance compression quality and PLAYBACK SPEED! Read the tech info at the Intel site as it will teach you a lot!

For very simple scenes which compress very well...like a white
ball on a black background, you can use a very low data rate
like 100k bps. For complex scenes, that might need to go up to about 200k bps. If you render at 160x120 full frames uncompressed, your data rate will be about 833k bps.

Data rate is the rate at which the decompressor must stream the data to the cpu for decode. There are a lot of variables to determine how high of a data rate your system can support. If you encode with a data rate too high, you will have problems playing back and or quality will suffer. You can either experiment and pick the the data rate which gives you the best balance of quality/speed, or just use the slider and let the algorithm do the work for you.

Set the sliders to 100% quality should work for most cases.

For Video one, there are 2 sliders, quality, and something like
temporal locality or something like that. Setting both of these
to 100% gives me great quality for saturated simple animations, and about 10:1 compression ratio. Indeo 5 gave me 30:1 compression, but unacceptable quality for saturated reds in my test scene. A saturated red ball on a pure black background is the absolute worst case quality for Indeo and the algorithm does crazy mapping, and quality goes to hell. You have to use one of the others for scenes like this, on the flip side, the compression ratio of Indeo was stellar.

******************
More info
*****************

I have to go for now, but please browse around the Indeo site and read all the FAQ's and support info you can as there are some excellent tutorials already published on how to balance quality, data rate, key frames, transparency, scalability.


Happy Compressing!

Mark Fedasiuk
Intel

Get here 
from outside?

Click here to return to my main site.