
Digital video compression

The number of different formats for presenting digital videos is huge.
One of the most common problems faced by a stumped user is how do they differ and which one is the best? This article is an attempt to help a user lost in many standards. Furthermore, the subject of this article is a review and comparative analysis of various compressors for digital video compression, as well as an overview of the main ideas and algorithms used by these compressors. In addition, this article reveals the capabilities of the new compressors used to transmit video information over the Internet. The article is useful both for beginners who want to understand the variety of digital video presentation formats and understand how they differ, and for programmers looking for answers to specific questions.
AVI (Audio Video Interlive)
AVI files are a special case of RIFF files. (short for Resource Interchange File Format). This format, originally intended for the exchange of multimedia data, was Microsoft and IBM. This format is the most common form of video presentation on personal computers. AVI files come in different standards depending on the way the video data is presented.
AVI file standards
Video data in AVI can be formed and compressed in various ways. For example, Video for Windows 1.1 comes with a standard set of compressors. Namely:
Intel Indeo (version 3.2);
Microsoft Video 1;
Microsoft RLE (run-length encoding)
Cinepak;
….
Each standard has a so-called Four Character Code (FOURCC).
Full frames (uncompressed)
You can keep AVI files as uncompressed frames. You don’t need any compressor for this.
The 4 character code for this standard is ‘DIB’, (Microsoft Device Independent Bitmap).
However, there are at least three more FOURCCs for uncompressed AVI files:
‘RGB’; ‘RAW’; 0x00000000 (FOURCC, whose hexadecimal value is 0)
Variable Length Encoding (MRLE)
The peculiarity of this video image encoding scheme is that MRLE is capable of encoding video only in an 8-bit palette (256 colors). It does not support modes called “High Color” (2 ^ 16 colors) or “True Color” (2 ^ 24 or 2 ^ 32 colors).
Microsoft Video 1 (MSVC or CRAM)
Microsoft Video 1 only supports the 8-bit or 16-bit color gamut.
Intel Realtime Video 2.1 (Indeo 2.1) (RT21)
Included in the standard distribution of Microsoft Video for Windows 1.1.
Intel Indeo 3.1 / 3.2 (IV31 and IV32)
A feature of the method is the use of the vector image quantization algorithm (see below).
Intel® Indeo® Multimedia Kit 5.0
Cinepak (CVID)
One of the most popular and widely used video compressors for Windows. Provides the fastest video playback. Unlike the Indeo 32, which provides slightly better quality, but significantly overloads the processor during decompression, Cinepak offloads the processor resource as much as possible.
Today there are at least three standards for Cinepak.
Cinepak SuperMac (original 16-bit compressor)
Cinepak Radius (new and improved 16-bit compressor);
Cinepak Radius [32] (32-bit version of Radius Cinepak included with Windows 95).
A feature of the method is the use of the vector image quantization algorithm in conjunction with the frame difference algorithm (see below).
MPEG (Moving Image Expert Group)
One of the most popular digital video presentation formats. Currently, there are three of its specifications: MPEG-1, MPEG-2 and MPEG-4. Despite the great flexibility of the standard, which allows various applications to change the values of most of its parameters (such as image resolution, aspect ratio, frame rate) within a wide range, its developers initially focused on it. use of compact discs. (CD-ROM) with a data transfer rate of 50Kbps. As a result, the basic algorithm (MPEG 1) limits the bit rate to the range of 150-225Kbps, the resolution of images (frames) as 352 * 288 (Pal) or 320 * 240 (NTSC), the frequency of its change is 25 (PAL) or 30 (NTSC)). Also, for simplicity, we just consider the Pal system.
MPEG compression uses the following basic ideas:



