Palette Coding Bypass for Screen Content Compression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional video coding techniques are inefficient for compressing screen content with discrete-tone and high contrast features, as they assume continuous-tone and smoothness, leading to suboptimal compression performance in applications like remote desktop and wireless display.

Innovation Solution

The introduction of palette-based coding, which uses a color palette to compress repetitive pixel values by mapping pixels to palette indices, along with techniques like copy from left run length method, to improve screen content coding efficiency without blurring sharp edges.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional video coding techniques are used, then continuous-tone and smoothness assumptions are made, but compression performance for screen content with discrete-tone and high contrast features deteriorates

Engineering Contradiction:
Improvecompression performanceVSAvoidadaptability to discrete-tone content
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent changes the fundamental parameters of video coding by introducing palette-based coding modes that operate differently from traditional transform coding. Instead of assuming continuous-tone smoothness, the system uses discrete palette indices and run-length encoding parameters specifically suited for screen content with sharp edges and discrete tones, thereby improving compression performance for this specific content type

Inventive Principle:
Principle #35Parameter changes

2Loss of information

If spatial or temporal prediction is applied, then redundancy is reduced, but edge blurring occurs in high contrast regions

Engineering Contradiction:
Improveredundancy reductionVSAvoidedge sharpness
Core Design Contradiction:
Loss of informationVSManufacturing precision

Solution Approach 1:

The patent segments the video content into different coding modes including palette mode and run-length encoding mode. By segmenting the coding approach rather than applying uniform spatial/temporal prediction to all content, the system can preserve sharp edges in screen content while still achieving redundancy reduction through appropriate encoding methods for each segment type

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different coding qualities and methods to different regions of the video content. Screen content regions use palette-based coding with sharp transitions, while other regions may use traditional prediction methods. This local quality approach ensures edge sharpness is maintained where needed without sacrificing overall compression efficiency

Inventive Principle:
Principle #3Local quality

3Loss of information

If palette-based coding is introduced, then bits required to represent screen-generated content are reduced, but coding complexity increases

Engineering Contradiction:
Improvebit rate reductionVSAvoidcoding complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent merges multiple coding techniques into a unified framework that includes palette-based coding, run-length encoding, and traditional prediction methods. By combining these approaches and allowing the encoder to select the most appropriate method for each block, the system achieves bit rate reduction for screen content while managing coding complexity through standardized decision logic and shared computational components

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11146788B2Grouping palette bypass bins for video coding
Publication Date: 2021.10.12 QUALCOMM INC
  • US11146788B2 patent drawing
  • US11146788B2 patent drawing
  • US11146788B2 patent drawing

AI summary

An example method of coding video data includes coding, from a coded video bitstream, a syntax element that indicates whether a transpose process is applied to palette indices of a palette for a current block of video data; decoding, from the coded video bitstream and at a position in the coded video bitstream that is after the syntax element that indicates whether the transpose process is applied to palette indices of the palette for the current block of video data, one or more syntax elements related to delta quantization parameter (QP) and/or chroma QP offsets for the current block of video data; and decoding the current block of video data based on the palette for the current block of video data and the one or more syntax elements related to delta QP and/or chroma QP offsets for the current block of video data.