Video compression is about reducing and removing redundant video data so that a digital video file can
be effectively sent and stored. The process involves applying an algorithm to the source video to create
a compressed file that is ready for transmission or storage. To play the compressed file, an inverse
algorithm is applied to produce a video that shows virtually the same content as the original source
video. The time it takes to compress, send, decompress and display a file is called latency. The more
advanced the compression algorithm, the higher the latency, given the same processing power.
A pair of algorithms that works together is called a video codec (encoder/decoder). Video codecs that
implement different standards are normally not compatible with each other; that is, video content that is
compressed using one standard cannot be decompressed with a different standard. For instance, an
MPEG-4 Part 2 decoder will not work with an H.264 encoder. This is simply because one algorithm cannot
correctly decode the output from another algorithm but it is possible to implement many different
algorithms in the same software or hardware, which would then enable multiple formats to be
compressed.
Different video compression standards utilize different methods of reducing data, and hence, results
differ in bit rate, quality and latency.
Results from encoders that use the same compression standard may also vary because the designer of
an encoder can choose to implement different sets of tools defined by a standard. As long as the output
of an encoder conforms to a standard’s format and decoder, it is possible to make different implementations.
This is advantageous because different implementations have different goals and budget. Professional
non-real-time software encoders for mastering optical media should have the option of being able to
deliver better encoded video than a real-time hardware encoder for video conferencing that is integrated
in a hand-held device. A given standard, therefore, cannot guarantee a given bit rate or quality.
Furthermore, the performance of a standard cannot be properly compared with other standards, or even
other implementations of the same standard, without first defining how it is implemented.
A decoder, unlike an encoder, must implement all the required parts of a standard in order to decode a
compliant bit stream. This is because a standard specifies exactly how a decompression algorithm should
restore every bit of a compressed video.
The graph below provides a bit rate comparison, given the same level of image quality, among the
following video standards: Motion JPEG, MPEG-4 Part 2 (no motion compensation), MPEG-4 Part 2 (with
motion compensation) and H.264 (baseline profile).
Image source : www.axis.com
Image source : www.axis.com
Comments
Post a Comment