Codec stands for enCOder/DECoder or COmpressor/DECompressor. It is a software or hardware that compresses and decompresses audio and video data streams.
2. What is a Codec ?
• Codec stands for enCOder/DECoder or
COmpressor/DECompressor
• It is a software or hardware that
compresses and decompresses audio and
video data streams.
3. Why do we need codecs?
• The purpose of codecs is to reduce the size of digital audio
samples and video frames in order to speed up transmission
and save storage space.
• Because video and music files are large, they become difficult
to transfer across the Internet quickly. To help speed up
downloads, mathematical "codecs" were built to encode
("shrink") a signal for transmission and then decode it for
viewing or editing. Without codecs, downloads would take
three to five times longer than they do now.
4. Codec Types : Lossy or Lossless?
• There are two types of codecs : lossy and lossless.
• As the name implies, the lossy codecs shrink the video file
dramatically by dropping detail, like creating a JPEG image
from a RAW photo.
E.g.: MP3, OGG Vorbis, AAC, WMA, AC3, RealAudio,etc
• Lossless codecs lose very little information, if any, and the
resulting files are quite large.
E.g: Wave, AIFF, FLAC, ALAC
6. Audio Codecs:
• Audio codecs (encoder-decoder) are programs that reduce this
file size and can be split into two main categories - "lossy" and
"lossless".
• A "lossy" codec (e.g. MP3, OGG Vorbis, AAC) uses knowledge of
human hearing to try and discard as much of the original audio
signal as possible, whilst attempting to make the audio sound
as close as possible to the original. These codecs typically
achieve a filesize of 10%-20% of the original.
• A "lossless" codec (e.g. FLAC) performs the same function as
"winzip" - i.e. it compresses an audio file without discarding any
of the information. These codecs typically achieve a filesize of
50%-60% of the original filesize, but the audio playback will be
bit-for-bit identical to the original file.
7. Video Codecs:
• Codecs are software that enable your devices (Camera, Editor,
Player) to perform video encoding and/or decoding (think
video compression and de-compression). Obviously the Blu-
ray player needs only to decode a video stream. All these
Codecs are based on standards (often de-facto company
standards).
• All video streams are embedded in multimedia (video)
containers. It is a common misconception that .AVI (Windows)
and .MOV (Quicktime on Macs) already define what kind of
video format it is. These containers include information which
Codec is used in the file. If your system does not have the
proper Codec installed the video won't play.
8. About Video Compression:
• Video compression is clearly our friend because without a lot of
compression we would have a very hard time handling the massive
data we get from a 1080p video stream.
• Think of two mega pixels per frame at 24, 30 or 60 frames per
second (translates to 48, 60 or even 120 mega pixels data per
second). On the flip side, video compression reduces the possible
image quality we can get.
• Overall video compression is about the trade-off between:
• Data volume
• Data storage needs
• Data processing speed (in camera, on computer)
• Image quality
• Detail
• Color
11. Text Codecs
• A Text Codec is a function that transforms text into (when
encoding) or out of (when decoding) another kind of
representation. Usually, the most human-readable
representation is said to be "decoded".
• "Encoders" will turn the (selected or whole) text into
something less readable, "Decoders" try to revert those
effects as good as possible.
• E.g.: ROT-13, Base64, URI Codecs, Unicode Codecs, Case
Encoders, CMML, BiM
12. Codecs and Containers
A container is what we typically associate with
the file format. Containers "contain" the various
components of a video: the stream of images,
the sound, and anything else.
For example, you could have multiple
soundtracks and subtitles included in a video
file, if the container format allows it. Example of
popular containers are OGG, Matroska, AVI,
MPEG.
Codecs are ways of "coding" and "decoding"
streams. Their job is typically to compress data
(and decompress it when playing it back) so
that you can store and transmit files with a
smaller filesize.
Image Source:
http://www.pitivi.org/manual/codecs
containers.html