"Video compression is like making concentrated orange juice: water is removed from the juice to more easily transport it, and added back later by the consumer."In Video Compression for Multimedia , Jan Ozer describes Video Compression as "a process where a collection of algorithms and techniques replaces the original pixel-related information with more compact mathematical descriptions." Decompression, then, is "the reverse process of decoding the mathematical descriptions back to pixels for ultimate display." (p. 35) Raw images require so much storage that some type of data compression is used for storage. For example, a 1024 x 1024 24 bit image require 3 Mbytes of space. A 640 x 480 24 bit image requires 1 Mbyte of space so a video that runs at 640 x 480 resolution with 24 bits of color and 30 frames per second (fps) would require 30 Mbytes of storage per second. Some nice overview of Video Compression can be found at the following sites:
- An excellent one written by Elizabeth Cheesebrough
- Written by David K. Fubish at Tektronix, Inc.
- http://fast-multimedia.com/fast/html/press/background/Bdvcomp.I.html
- By Vaibhav Mangrulkar at Columbia University.
- One written by David Andrews at Dublin City University School
- Another one lies here
- Recent advances in Video Compression
Where audio is concerned, the market quickly realized that digital storage media are qualitatively better than analog. Audio CDs are now standard. For video, however, the differences in quality have yet to be defined. Which quality (and thus which method) is right for a specific application? It will take a while before digital video is as widely accepted as digital audio, specifically since an affordable solution has yet to be found. One of the keys to the technology is the compression of digital video.
Video compression is almost always a "lossy" procedure. This means that the decompressed file is not an exact duplicate of the initial uncompressed file. Some data is lost in the compression/decompression process.
There are two types of data compression algorithms, one that maintains data integrity and one that does not. Lossless compression maintains data integrity, i.e., after compression and decompression, the resulting image is exactly the same as the initial uncompressed image. These techniques are also used for compressing data files and executable program files. Lossy compression does not maintain data integrity, i.e., the uncompressed image is similar to but not exactly the same as the initial image. There is a tradeoff between amount of data lost and the amount of compression. Lossy compression methods provide a higher compression ratio than lossless methods.
According to Ozer, "the true measure of a compression technology is how little you notice its presence, or how effectively it can reduce video data rates without adversely affecting video quality." (p. 14)
Both software and hardware tools may be used to accomplish video compression. The software tools are called "codecs" an abbreviation of coder/decoder or compressor/decompressor.
For video, there are two types of compression - intraframe and interframe . Intraframe compression occurs within a single frame, while interframe compression involves the elimination of redundant information across multiple frames. More explaination of this types of compression with examples can be found at the following site.
Another characteristic of data compression methods is symmetric versus assymetric. A symmetric method compresses and decompresses images in the same amount of time. This type of technique would be used for data transmission as in interactive video. An assymetric technique might take a long time to compress an image but the decompression would be rapid. Assymetric techniques can achieve much higher data compression ratios than symmetric techniques. Video compression is a key element required for establishing a point-to-point digitized video connection. Compression is required for reducing the vast amount of digitized video data (about 0.5 GB/min. of video) into a more manageable size, allowing the storage and transmission of video within the limitations of today's technology storage devices and communication channels.
Some Popularly known Compression Techniques are:
- Cell Compression (From Sun Mirosystem Inc.): Cell compression is similar to MPEG and H.261 in that there is a lot of room for value-add on the compressor end.
- Lempel-Ziv Welch (LZW) Compression: Algorithm used by the Unix compress command to reduce the size of files, eg. for archival or transmission. LZ algorithms construct trees of strings and transmit strings as codewords. (The LZW Data Compression Library in C can be found at this site. More details about LZW Compression can be found in the paper published in Ziv, J. and Lempel, A. : "A Universal Algorithm for Sequential Data Compression", IEEE Transactions on Information Theory, May 1977.
- Markov Algorithms for Compression: Markov algorithms construct large numbers of contexts and fiddle with arithmetic ranges and probabilities. Both LZW & Markov compressions use the same probabilistic engine. More details about Dynamic Compression Algorithm can be read in the following article: Gardon Cormack and Nigel Horspool, " Data Compression using Dynamic Data Medelling", Computer Journal 30:6 December 1987. The Dynamic Markov Algorithm Compression Source Code can be found at this site
However, currently the standardized compression algorithms for the video are:
- Joint Picture Experts Group (JPEG): This is a standardized compression technique that applies several mathematical methods to reduce the information content in single pictures by removing spatial redundancy and thereby reducing the bit-rates requirement.
- Moving Pictures Experts Group (MPEG): This is the name of the family of standards used for coding audio-visual information (e.g., movies, video, music) in digital compressed format. The major advantage of MPEG compared to other video and audio coding formats is that MPEG files are much smaller for the same quality. This is because MPEG uses very sophisticated compression techniques. (On the Web, MPEG Video files have the extension .mpg and MPEG Audio files have the extension .mp2 or .mp3.)
- Indeo: Indeo is Intel's digital video capture, compression, and decompression codec. It compresses each frame something like raising a Venetian blind. The first frame is compressed line by line; then the second frame is compressed. Each frame has only a slight difference in action on the frame, so that you wind up dealing not with the total of each frame but the slight change. Indeo scans line 1 from frame 2 and then scans line 1 from frame 1 and subtracts to get the difference in the two frames. ( From "All about Indeo" by Ann Pederson)
- Cinepak: Cinepak is the widely used cross-platform, software-only, scaleable codec (compressor-decompressor) for creating video for distribution on CD-ROM, game titles, and over the Internet. Cinepak uses a vector quantization algorithm, which allows it to play back at higher frame rates on most systems. As a software-only codec, it requires no special hardware for compression or playback. The Cinepak codec allows generation of bit stream with a stable and predictable data rate. This facilitates distribution of compressed video on CD-ROM and on the Internet. On playback, the Cinepak codec uses very little processor bandwidth, leaving plenty of processor power available for other tasks. This is of significant benefit to developers of interactive content. ( CinePak VS Indeo
- H.261: H.261 is video coding standard published by the ITU (International Telecom Union) in 1990. It was designed for datarates which are multiples of 64Kbit/s, and is sometimes called p x 64Kbit/s (p is in the range 1-30). These datarates suit ISDN lines, for which this video codec was designed for.
One of the most challenging job is to select a proper compression/decompression technology. Here are some of the guidelines and other helpful information on how to evaluate a compression / decompression technique . A much more detailed comparision of Compression Techniques can be found here.
Video conferencing imposes an additional, and very demanding, requirement on video compression. Video compression and decompression must be performed on-the-fly in order to maintain the synchronization with audio and to provide a live point-to-point connection.