This article was previously published under Q139826
This article has been archived. It is offered "as is" and will no longer be updated.
This article provides tips you can use to help you compress AVI (audio-video interleaved) files. This article should help to clarify theinformation in the documentation. This article also provides hintsconcerning the settings for Interleave, Compression Quality, Key FrameEvery, and Data Rate - all settings available in the Video CompressionOptions dialog box.
Don't capture on low or medium end equipment.
Avoid noise. Noise reduces the quality of the image and can effect the compression.
Use a low-pass filter such as the LOWPASS sample included with Visual C++ Graphics and MultiMedia samples and with the Win32 SDK to eliminate some of the audio noise.
Use a low-pass filter such as the LOWPASS sample included with Visual C++ version 2.x and with the Win32 SDK to get rid of some of the audio noise.
Avoid compressing the movie more than once. Edit your uncompressed bits of video together before doing any compression, and then compress the final product. Editing always works faster with uncompressed video.
Video Dimensions and Frame Rate
When authoring, consider that most display cards support up to 320x240x15frames per second (fps). Larger images or faster frame rates increase theimportance of testing on multiple machines with multiple configurations (CD-ROM drive speeds, video boards, display monitors, and so on).
Full Screen Playback
If your movie is 320x240 or less, you should get excellent full-screenplayback that can handle 15 fps regardless of the video card. If your movieis bigger, it will play full screen, but performance may be poor. Testacross multiple configurations to help identify the impact of stretching onvarious displays.
Video Compression Options
The following options are presented in the Compression Options dialog box.To gain access to this dialog box, on the File menu, click Save Options inSDK samples such as Aviedit and Aviview. Similar options are availablein the Videdit utility from Video for Windows by clicking Save As on theFile menu.
The interleave option places audio data physically between video frame datain the AVI file to ensure the best performance and synchronization. Forexample, with a 1:1 interleave setting, each frame of a 15 fps video wouldhave 1/15 seconds of audio data. This setting does not matter when editingthe file. When saving for playback, interleave every frame for bestplayback performance. Interleaving multiple audio streams is not possibleusing this option.
Use the highest quality number to get the best quality, but use the entireallowable data rate. A lower quality may take up less than the requesteddata rate.
Key Frame Every:
Normally, use the default key frame value for a particular codec. Fewer keyframes could give a little better picture quality, but if your system can'tkeep up on playback, you'll stall for a longer time, and you won't degradeas gracefully. More key frames means fewer frames skipped when playbackcan't keep up.
The minimum data rate that can be achieved on most computers is 100K/secfor single spin CD-ROM drives, and 225K/sec for double spin CD-ROM drives.Most computers can do more (150K and 300K for single and double speedrespectively).
The AVIMakeCompressedStream(), AVISave(), and AVISaveOptions() functionsuse the AVICOMPRESSOPTIONS structure to specify some of the compressionoptions discussed in this article. The ICCompressorChoose() functionuses the COMPVARS structure for a similar purpose. See the documentationfor the products listed at the beginning of this article for moreinformation.