Α video codec is software or a device that provides encoding and decoding for digital video, and which may or may not include the use of video compression and/or decompression. Most codecs are typically implementations of video coding formats. The compression may employ lossy data compression, so that quality-measurement issues become important. Shortly after the compact disc became widely available as a digital-format replacement for analog audio, it became feasible to also store and use video in digital form. A variety of technologies soon emerged to do so. The primary goal for most methods of compressing video is to produce video that most closely approximates the fidelity of the original source, while simultaneously delivering the smallest file-size possible. However, there are also several other factors that can be used as a basis for comparison. Introduction to comparison The following characteristics are compared in video codecs comparisons: Video quality per bitrate (or range of bitrates). Commonly video quality is considered the main characteristic of codec comparisons. Video quality comparisons can be subjective or objective. Performance characteristics such as compression/decompression speed, supported profiles/options, supported resolutions, supported rate control strategies, etc. General software characteristics for example: Manufacturer Supported OS (Linux, macOS, Windows) Version number Date of release Type of license (commercial, free, open source) Supported interfaces (VfW, DirectShow, etc.) Price (value for money, volume discounts, etc.) Video quality The quality the codec can achieve is heavily based on the compression format the codec uses. A codec is not a format, and there may be multiple codecs that implement the same compression specification for example, MPEG-1 codecs typically do not achieve quality/size ratio comparable to codecs that implement the more modern H.264 specification. But quality/size ratio of output produced by different implementations of the same specification can also vary. Each compression specification defines various mechanisms by which raw video (in essence, a sequence of full-resolution uncompressed digital images) can be reduced in size, from simple bit compression (like Lempel-Ziv-Welch) to psycho-visual and motion summarization, and how the output is stored as a bit stream. So long as the encoder component of the codec adheres to the specification it can choose any combination of these methods to apply different parts of the content. The decoder component of a codec that also conforms to the specification recognises each of the mechanisms used, and thus interprets the compressed stream to render it back into raw video for