25.04.2014 Views

TITRE Adaptive Packet Video Streaming Over IP Networks - LaBRI

TITRE Adaptive Packet Video Streaming Over IP Networks - LaBRI

TITRE Adaptive Packet Video Streaming Over IP Networks - LaBRI

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

environment because they require a great scalability, lower computational complexity, great<br />

resiliency to network losses and lower encoding / decoding latency. Building a video codec that<br />

response to all these requirements is not sufficient. The codec must be aware of network condition<br />

in order to achieve the highest possible user perceived quality. Current research is investigating a<br />

new scalable and flexible coding algorithm, and ways for adapting the existing codecs to<br />

heterogeneous environment such as Internet. We present in this subsection some of video codec<br />

that are widely used in packet video applications.<br />

3.2.1.1.1 <strong>Over</strong>view of <strong>Video</strong> Compression<br />

Since Newton’s time, it has been known that a wide spectrum of colors can be generated from<br />

a set of three primaries colors. Television displays generate colors by mixing lights of the additive<br />

primaries: red, green, and blue (RGB). The classic color chart used in early television specifications<br />

was established in 1931 by the Commission Internationale de L’Eclairage (CIE). It defines a special<br />

concept of isolating the luminance, or brightness, from the chrominance, or hue. From this chart,<br />

two systems were defined, namely, NTSC YIQ and PAL/SECAM YUV. YIQ color space<br />

represents the luminance, in-phase chrominance, and quadrature chrominance coordinates<br />

respectively. The only change between the PAL/SECAM YUV color space and the NTSC YIQ<br />

color space is a 33 degree rotation in UV plan.<br />

The digital equivalent of YUV is YCbCr, where the Cr chrominance component corresponds<br />

to the analog V component, and the Cb chrominance component corresponds to the analog U<br />

component, though with different scaling factors. The codec will use the terms Y, U, and V for Y,<br />

Cb, and Cr for a shorthand description of the digital YCbCr color space. The result is that the<br />

YCbCr elements are less correlated compared to RGB format and, therefore, can be coded<br />

separately without much loss in quality.<br />

The gain of data volume by converting from RGB to YCbCr is 2 to 1 (denoted 2:1). For<br />

example, if the RGB format is specified by eight bits for each color, then each RGB picture<br />

element is described by 24 bits; and after conversion and decimation, each YCbCr pixel is described<br />

by an average of 12 bits: the luminance at eight bits, and both the chrominances for every other<br />

pixel (horizontally and vertically) at eight bits. This technique was the first step toward video<br />

compression.<br />

Furthermore, video compression is achieved by exploiting similarities or redundancies that<br />

exists in typical video signal. A video sequence consists of a sequence of video frames or images.<br />

Each frame may be coded as a separate image. A frame to be coded is divided into a set of blocks,<br />

which can be compressed using two mains techniques. Block Discrete Cosing Transform (DCT)<br />

and Discrete Wavelet Transform (DWT). Coding each frame separately is not efficient since<br />

neighboring video frames are typically very similar. Much higher compression can be achieved by<br />

exploiting similarity between frames. A given frame can be predicted from a previous frame. The<br />

difference between the two frames is considered rather than the complete frame. Consecutive video<br />

frames typically contain the same imagery with possible different special locations because of<br />

motion. To improve the prediction, it is important to estimate the motion between the frames and<br />

to form an appropriate prediction that compensates this motion. This process is known as Motion<br />

Estimation. The process of forming a prediction in motion is called Motion Compensation. It<br />

38

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!