Understand the concept of "Bpp" and "Mbps" to define your compressed data rate !

30.09.20 09:55 AM By Julie

Unlocking Video Bandwidth: Exploring Pixels, Color Components, Chroma Subsampling, and Bit Depth for Precise Targeting

In this article you will learn more about :

​The bits per pixel (bpp) concept

​Every color pixel in a digital image is created through some combination of the three primary colors: red, green, and blue. Each primary color is often referred to as a "color channel" or "color component", and has a range of intensity values specified by its bit depth. The bit depth for each primary color is termed the "number of bits per channel", typically ranging from 8 to 16bits. The "bits per pixel" (bpp) refers to the sum of the "number of bits per color channel" i.e. the total number of bits required to code the color information of the pixel.
An uncompressed RGB image with a bit depth of 8 bits per color  will have 24 bpp or 24 bits per pixels (8 bits for the Red, 8 bits for the Green, 8 bits for the Blue)

​RGB, the basis of the color signal

It is possible to combine primary colors with different intensities to create all other colors. The RGB (Red, Green Blue) format proposes to divide the information of a pixel into 3 values: one to code the red intensity, another for the green and the last for the blue. Each image in an RGB video stream is in fact the sum of 3 sub-images, each pixel on a screen being composed of 3 sub-pixels.
The panel therefore simultaneously displays the red, green and blue images, and human eyes interpret it as an image full of colors. By playing with the intensity of each of the sub-pixels it is thus possible to reproduce a large palette of RGB colors.

​YCbCr, the signal separating Luminance and Chrominances

With the advent of color TV, it became necessary to add chrominance (colors) information to the historical luminance (black and white) signal in a single signal.

YCbCr splits the image into 3 components:

• Y = black and white image (luminance)

• U / Cb = blue / green image (chrominance obtained by Y - Blue)

• V / Cr = yellow / red image (chrominance obtained by Y - Red)


In the digital world, Reversible (RCT) or Irreversible (ICT) Color Transforms can be used to convert RGB images to the YCbCr color format and vice versa.

​Chroma sub-sampling to reduce bandwidth

Most video signals separate luminance from chrominances. It has been established that human eyes are much more sensitive to black and white (luminance) than colors (chrominance). In an effort to save bandwidth, why not reduce the color information since most of it would be lost to the viewer anyway?

Each pixel of the final image is actually reconstructed from the 3 components: Y, Cb and Cr. Chroma subsampling consists of reducing the resolution of the Cb and Cr color components without introducing actual compression. Since the luminance (Y) remains unchanged and is the main information caught by the human eye, the result can be quite impressive on natural content. It is often impossible to see the differences between a subsampled image and the original, provided you use a suitable down-sampling format.


The sampling structure is defined by 3 numbers on a matrix of 8 pixels (4x2). The first digit refers to the number of luminance samples (Y) per row, the second the number of chrominance samples (Cb / Cr) on the first row of pixels and the third the number of chrominance samples (Cb / Cr) on the second row of pixels.

The 4:4:4 format corresponds to a raw format, without compression, sub-sampling or loss of quality. Each pixel of the final image is generated from a Y luminance pixel, a Cb chrominance pixel and a Cr chrominance pixel - Red pixel, Green pixel and Blue pixel in the case of RGB. In this configuration, there is no difference between an RGB or YCbCr signal. This configuration is used in ProAV, Computer displays, but also in the professional world of cinema. The very high bandwidth represents a significant cost.

With the 4:2:2 format, the horizontal resolution of the chroma is halved, in other words, the same Cb color will be used for the final rendering of two pixels (same for Cr color). With a 33% reduction in throughput and a difference invisible to the naked eye, this format is the preferred one in the television world.

The 4:2:0 format is the sub-sampling used for the general public: TV programs, films, video games, video streaming... In this case, the color images (Cb and Cr) see their horizontal and vertical resolutions divided by two.

Here the bandwidth is reduced by 50% compared to 4:4:4. Since the human eye is more sensitive to light than to color, the visual quality remains excellent even in 4:2:0.

Chroma Subsampling means switching, for example, from a 4:4:4 format to a 4:2:2 format, which will have the effect of reducing the number of bits per pixel (bpp) without actually compressing it. In other words, Where a 4:4:4 format means 24 bpp (3 colors x 8 bits), only 16 bpp  (2colors x 8bits) will be needed in the equivalent a 4:2:2 format.

​How to calculate the Mbits per second (Mbps) ? How many bit-per-pixel (bpp) do I have ? What is my video bitrate? 

Mbps = resolution in pixels x number of frames per second) x bpp 

Let's take a few examples to better understand how we compute the size of a video stream:

Example : 4K@24fps 444 8 bit uncompressed


Resolution : 4K = 3840 x 2160 = 8 294 400 pixels
Resolution with blanking : 4K = 4400 x 2250 = 9 900 000 pixels

Frame per second (fps) : 24 

Format : 444 8bit = 24 bpp (3colors x 8bits = 8+8+8)

                                                

9,900,000 pixels x 24 fps x 24 bpp = 5 702 400 000 bps = 5 702 Mbps = 5,7Gbps

Example : 4K@60fps 444 8 bit uncompressed


Resolution : 4K = 3840 x 2160 = 8 294 400 pixels
Resolution with blanking : 4K = 4400 x 2250 = 9 900 000 pixels

Frame per second (fps) : 60 

Format : 444 8bit = 24 bpp (3colors x 8bits = 8+8+8)

                                                

9,900,000 pixels x 60 fps x 24 bpp= 14 256 000 000 bps= 14 256 Mbps =14,2Gbps

Example : Full HD@24 fps 444 8 bit uncompressed


Resolution : FHD = 1920 x 1080 = 2 073 600 pixels
Resolution with blanking : FHD = 2200 x 1125 = 2 475 000 pixels

Frame per second (fps) : 24

Format : 444 8bit = 24 bpp (3colors x 8bits = 8+8+8)

                                                

2,475,000 pixels x 24 fps x 24 bpp = 1 425 600 000 bps = 1 425 Mbps = 1,4Gbps

Example : 4K@60fps 422 8bit uncompressed


Resolution : 4K = 3840 x 2160 = 8 294 400 pixels
Resolution with blanking : 4K = 4400 x 2 250 = 9 900, 000 pixels

Frame per second (fps) : 60 

Format : 422 8bit = 16 bpp (3 colors with 4:2:2 sub-sampling = 8bits + 4bits +4bits)

                                                

9,900,000 pixels x 60 fps x 16 bpp = 9 504 000 000 = 9 504 Mbps = 9,5Gbps

We can see here that by going from a 4K60-4:4:4 format to a 4K60-4:2:2 format, the Mbps are reduced (around 33%) and this thanks to sub-sampling. No compression algorithm was applied.

​Reducing the "bpp" thanks to the compression !

The number of shared data, especially videos has considerably increased. We are moving from SD, HD to 4K to 8K and it keeps evolving: higher frame rate, higher resolution, more precision and higher dynamic range (HDR) imply a considerable increase in the amount of data to be transported on networks.

Compression technology helps managing more pixels, more quality over a limited bandwidth using existing devices and infrastructures. 

 

A quick example: Standard CAT5E ethernet cables can easily transport 1Gbps. But uncompressed video often reaches 10 to 16 Gbps in 4K. HD streams (720p) can be transported on CAT5E, but as soon as one needs to transport 4K, compression is required! intoPIX Codecs are the best way to transmit 4K easily below 1Gbps without any latency and quality loss: reducing the bpp to 1.5 takes your 4K below 1Gbps at 746 Mbps.

​Discover the intoPIX Video Compression Calculator ! 

Our Video Compression Calculator is built to help you compute the compression rate you need. You can use it for any application and any codec. 

Select your video format parameters, and determine the compression rate required to transport your video stream. This can even help you configure your compression rate with any intoPIX IP-cores or Fast SDK.

 Related content

Discover all the benfits of the intoPIX JPEG XS standard - TicoXS
Why "Not Compression" simply doesn't make sense? When uncompressed involves unnecessary extra cost!
Find out here why compression has become essential!