HOME

TheInfoList



OR:

Cinepak is a
lossy In information technology, lossy compression or irreversible compression is the class of data compression methods that uses inexact approximations and partial data discarding to represent the content. These techniques are used to reduce data size ...
video codec A video codec is software or Computer hardware, hardware that data compression, compresses and Uncompressed video, decompresses digital video. In the context of video compression, ''codec'' is a portmanteau of ''encoder'' and ''decoder'', while ...
developed by Peter Barrett at SuperMac Technologies, and released in 1991 with the Video Spigot, and then in 1992 as part of Apple Computer's
QuickTime QuickTime (or QuickTime Player) is an extensible multimedia architecture created by Apple, which supports playing, streaming, encoding, and transcoding a variety of digital media formats. The term ''QuickTime'' also refers to the QuickTime Pla ...
video suite. One of the first video compression tools to achieve
full motion video Full-motion video (FMV) is a video game narration technique that relies upon pre-recorded video files (rather than Sprite (computer graphics), sprites, vector graphics, vectors, or 3D models) to display action in the game. While many games featur ...
on
CD-ROM A CD-ROM (, compact disc read-only memory) is a type of read-only memory consisting of a pre-pressed optical compact disc that contains computer data storage, data computers can read, but not write or erase. Some CDs, called enhanced CDs, hold b ...
, it was designed to encode 320×240 resolution video at 1× (150 kbyte/s)
CD-ROM A CD-ROM (, compact disc read-only memory) is a type of read-only memory consisting of a pre-pressed optical compact disc that contains computer data storage, data computers can read, but not write or erase. Some CDs, called enhanced CDs, hold b ...
transfer rates. The original name of this codec was Compact Video, which is why its
FourCC A FourCC ("four-character code") is a sequence of four bytes (typically ASCII) used to uniquely identify data formats. It originated from the OSType or ResType metadata system used in classic Mac OS and was adopted for the Amiga/Electronic Arts ...
identifier is CVID. The codec was ported to
Microsoft Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
in 1993. It was also used on fourth- and fifth-generation game consoles, such as the Atari Jaguar CD,
Sega CD The Sega CD, known as in most regions outside North America and Brazil, is a CD-ROM accessory and format for the Sega Genesis produced by Sega as part of the fourth generation of video game consoles. Originally released in November 1991, it ca ...
,
Sega Saturn The is a home video game console developed by Sega and released on November 22, 1994, in Japan, May 11, 1995, in North America, and July 8, 1995, in Europe. Part of the fifth generation of video game consoles, it is the successor to the succes ...
, and
3DO 3DO is a video gaming hardware format developed by The 3DO Company and conceived by Electronic Arts founder Trip Hawkins. The specifications were originally designed by Dave Needle and RJ Mical of New Technology Group, and were licensed by third ...
.
libavcodec libavcodec is a free and open-source library of codecs for encoding and decoding video and audio data. libavcodec is an integral part of many open-source multimedia applications and frameworks. The popular MPV, xine and VLC media players use ...
includes a Cinepak decoder and an encoder, both licensed under the terms of the
LGPL The GNU Lesser General Public License (LGPL) is a free-software license published by the Free Software Foundation (FSF). The license allows developers and companies to use and integrate a software component released under the LGPL into their own ...
.


History

It was the primary video codec of early versions of
QuickTime QuickTime (or QuickTime Player) is an extensible multimedia architecture created by Apple, which supports playing, streaming, encoding, and transcoding a variety of digital media formats. The term ''QuickTime'' also refers to the QuickTime Pla ...
and Microsoft
Video for Windows Video for Windows was a suite of video-playing and editing software introduced by Microsoft in 1992. A runtime version for viewing videos only was made available as a free add-on to Windows 3.1, which then became an integral component of Windows ...
, but was later superseded by Sorenson Video, Intel Indeo, and most recently
MPEG-4 Part 2 MPEG-4 Part 2, MPEG-4 Visual (formally International Organization for Standardization, ISO/International Electrotechnical Commission, IEC 14496-2) is a video encoding specification designed by the Moving Picture Experts Group (MPEG). It belongs to ...
and H.264/MPEG-4 AVC. However, movies compressed with Cinepak are generally still playable in most media players.


Technology

Cinepak is based on
vector quantization Vector quantization (VQ) is a classical quantization technique from signal processing that allows the modeling of probability density functions by the distribution of prototype vectors. Developed in the early 1980s by Robert M. Gray, it was ori ...
, which is a significantly different algorithm from the
discrete cosine transform A discrete cosine transform (DCT) expresses a finite sequence of data points in terms of a sum of cosine functions oscillating at different frequency, frequencies. The DCT, first proposed by Nasir Ahmed (engineer), Nasir Ahmed in 1972, is a widely ...
(DCT) algorithm used by most current codecs (in particular the
MPEG The Moving Picture Experts Group (MPEG) is an alliance of working groups established jointly by International Organization for Standardization, ISO and International Electrotechnical Commission, IEC that sets standards for media coding, includ ...
family, as well as
JPEG JPEG ( , short for Joint Photographic Experts Group and sometimes retroactively referred to as JPEG 1) is a commonly used method of lossy compression for digital images, particularly for those images produced by digital photography. The degr ...
). This permitted implementation on relatively slow CPUs (video encoded in Cinepak will usually play fine even on a 25 MHz
Motorola 68030 The Motorola 68030 ("''sixty-eight-oh-thirty''") is a 32-bit microprocessor in the Motorola 68000 family. It was released in 1987. The 68030 was the successor to the Motorola 68020, and was followed by the Motorola 68040. In keeping with gener ...
, consoles like the Sega CD usually used even slower CPUs, e.g. a 12.5 MHz 68000), but tended to result in blocky artifacting at low
bitrate In telecommunications and computing, bit rate (bitrate or as a variable ''R'') is the number of bits that are conveyed or processed per unit of time. The bit rate is expressed in the unit bit per second (symbol: bit/s), often in conjunction ...
s, which explained the criticism leveled at the FMV-based video games. The vectors that are quantized in Cinepak are 2×2 pixel blocks. A block can consist of 4 luminance values (grayscale) or of 4 luminance and 2 chrominance values ( 4:2:0 chroma subsampling). The quantized blocks are stored in two codebooks, named V1 and V4, each with up to 256 entries. The vectors in the V1 codebook represent downscaled 4×4 pixel blocks, while those in the V4 codebook represent 2×2 pixel blocks. For processing, Cinepak divides a video into key (intra-coded) images and inter-coded images. In key images the codebooks are transmitted from scratch, while in inter-coded images codebook entries are selectively updated. Each image is further divided into a number of horizontal bands. The codebooks can be updated on a per-band basis. Each band is divided into 4×4 pixel blocks. Each block can be coded either from the V1 or from the V4 codebook. When coding from the V1 codebook, one codebook index per 4×4 block is written to the bitstream, and the corresponding 2×2 codebook entry is upscaled to 4×4 pixels. When coding from the V4 codebook, four codebook indices per 4×4 block are written to the bitstream, one for each 2×2 subblock. Alternatively to coding from the V1 or the V4 codebook, a 4×4 block in an inter-coded image can be skipped. A skipped block is copied unchanged from the previous frame in a conditional replenishment fashion. The data rate can be controlled by adjusting the rate of key frames and by adjusting the permitted error in each block.


References


External links


Technical Description of the Cinepak Codec

Cinepak - MultimediaWiki

Cinepak Official Website

Cinepak Decoder - FFmpeg
{{Compression Software Implementations Video codecs