Loading...
 

ALIF: Video Dithering

What is Video Dithering?

Video dithering is a technique used by a graphics card to reduce the visual artifacts and color banding that can occur when displaying or compressing video with limited color depth or when converting between color spaces. It aims to simulate additional colors and smooth out transitions between colors, creating the illusion of a higher color depth than actually available.

In digital video, color is represented using a finite number of bits per pixel. For example, a common color depth is 8 bits per channel, which allows for 256 levels of intensity per channel (red, green, and blue), resulting in a total of 16.7 million possible colors (256^3). However, some display devices or compression algorithms may support fewer colors, leading to visible color banding, where smooth gradients appear as distinct steps or stripes.

Dithering works by introducing controlled noise or patterns into the color transitions to mitigate the visible banding. Instead of trying to display or represent an unavailable color directly, dithering techniques use a combination of available colors to approximate the desired color. By introducing subtle variations in color, dithering creates the illusion of additional colors and smooth transitions between them.

The most common dithering method is called ordered dithering, which employs a pre-defined pattern, often a matrix of pixels, to determine which colors to display. The dithering pattern is applied to the image or video frame, and each pixel is compared to the corresponding pattern element. Based on this comparison, the pixel's intensity or color value is adjusted to either the lower or higher available value, depending on the pattern's threshold.

Another popular dithering technique is error diffusion. Instead of applying a fixed pattern, error diffusion distributes the quantization error resulting from color approximation across neighboring pixels. The quantization error represents the difference between the desired color and the available color. By propagating this error to adjacent pixels, error diffusion creates a more visually pleasing distribution of the error and reduces the overall perception of color banding.

Video dithering can be applied during the encoding process to reduce banding artifacts in compressed videos or during the playback process to enhance the visual quality on displays with limited color capabilities. However, it's worth noting that dithering is a trade-off, as it introduces additional noise or patterns that can affect image clarity and introduce a different type of visual artifact. The optimal choice of dithering method and parameters depends on the specific application and the limitations of the display or compression algorithm being used.

Dithering is constantly applied to a video output no matter whether it is actively changing or static and by design is difficult to spot by the untrained eye.

How does Dithering affect Infinity?

The default 'Pixel Perfect' codec transmits each pixel change in the video across the next network to the receiver. The noisy nature of video dithering creates excess network traffic, often pushing the limit of the connection bandwidth resulting in a reduced frame rate.

How do I detect Dithering?

Detecting dithering in an image or video can be challenging, as it involves analysing the pixel values and patterns to identify the presence of dithering techniques. However, evaluating the Video Statistic graphs on a Transmitter will typically reveal a high data transfer rate and possibly a lower frame count when the video output from the host is 'static' with little appearing to change on the screen. When using a single 1Gb network connection, pay close attention to how near the transmitted data rate is to the 950Mb mark,

How do I eliminate Dithering?

The best way to stop dithering is to turn it off on the host's graphics card through its driver settings. However, if this is not possible, Infinity has a feature called "Magic Eye" that when enabled, actively spots dithering and reduces the need to send unnecessary video changes, but not completely. You can further lower the bandwidth by using a different video codec on Infinity such as "Adaptive" or "Smoothest Video". Finally, you could use Teaming (not available on all Infinity models) where both network interfaces on the Receiver and Transmitter are connected to the network, doubling the available bandwidth.


Page last modified on Wednesday May 31, 2023 07:26:45 GMT-0000