Palette Index Coding Parsing Dependency Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional video coding techniques are inefficient for compressing computer-generated screen content with discrete-tone and sharp lines, as they assume continuous-tone and smooth images, leading to suboptimal compression performance in applications like remote desktop and wireless display.
Innovation Solution
Palette-based coding techniques are introduced, where a video coder represents video data using a palette of colors, encoding pixel indices instead of actual pixel values, and determining the palette coding mode based on a truncated binary code prefix, reducing parsing dependencies and increasing parallelism.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional video coding techniques are used for computer-generated screen content, then the coding process is simple, but compression efficiency is poor
Solution Approach 1:
The patent changes the fundamental parameter representation from continuous-tone pixel values to discrete palette indices. By representing video data as indices into a color palette rather than direct pixel values, the coding adapts to the discrete nature of computer-generated content, significantly improving compression efficiency for screen content while managing complexity through the palette abstraction layer.
Solution Approach 2:
The patent applies palette-based coding selectively to regions of video data where it is most beneficial. By determining palette modes locally for different blocks or regions and using truncated binary code prefixes to indicate coding modes, the system optimizes compression for discrete-tone areas while maintaining flexibility for other content types, improving overall compression efficiency without uniformly increasing complexity.
2Productivity
If palette-based coding is used to represent video data with discrete colors, then compression efficiency improves, but parsing complexity increases due to syntax dependencies
Solution Approach 1:
The patent segments the truncated binary code into distinct parts: a prefix that indicates the palette coding mode and a suffix that contains the actual palette index information. This segmentation allows the decoder to first parse the prefix to determine the coding mode, then parse the suffix accordingly, eliminating parsing dependencies and enabling parallel processing of different code segments, thus reducing complexity while maintaining compression efficiency.
Solution Approach 2:
The patent performs preliminary encoding by determining the palette coding mode and generating the truncated binary code prefix before finalizing the complete code. This preliminary action allows the decoder to know in advance which parsing strategy to apply, eliminating the need for complex dependency resolution during decoding and enabling more straightforward, parallel implementation of the parsing logic.
3Productivity
If palette indices are coded using truncated binary code, then coding efficiency improves, but hardware implementation complexity increases
Solution Approach 1:
The patent divides the truncated binary code into a prefix portion and a suffix portion. The prefix, which is simpler in structure, can be processed by dedicated hardware logic that identifies the palette coding mode. The suffix processing can be handled separately based on the prefix indication. This segmentation enables hardware implementations to optimize each segment independently, improving coding efficiency while managing hardware complexity through modular design.
Data Source
AI summary
In an example, a method of processing video data includes determining an input parameter for a truncated binary code that represents a palette index for a pixel of a block of video data based on a number of indices in a palette for the block. The method also includes coding a prefix of the truncated binary code, and determining a palette coding mode for the pixel from a first palette coding mode and a second palette coding mode based only on the prefix of the truncated binary code.


