HEVC Screen Content Coding Index Map Encoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current HEVC screen content coding methods are inefficient due to interleaved encoding of escape values and syntax, limiting the use of COPY_ABOVE_MODE and COPY_INDEX_MODE when escape colors in neighboring strings are different, and do not support parallel processing of index maps.
Innovation Solution
A simplified entropy coding scheme that encodes escape color index values as part of the string processing and sequentially encodes escape colors at the end of the index map, allowing for parallel processing and increased index matches, while streamlining the design of index map coding.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If escape values and syntax are interleaved encoded in current HEVC screen content coding, then the encoding follows the standard syntax structure, but the use of COPY_ABOVE_MODE and COPY_INDEX_MODE is limited when escape colors in neighboring strings are different
Solution Approach 1:
The patent segments the encoding process into two distinct phases: first encoding all index values (including escape color index values) as part of string processing, then separately encoding the escape colors themselves. This segmentation allows COPY_ABOVE_MODE and COPY_INDEX_MODE to be applied to index values regardless of escape color differences, while escape colors are handled in a separate sequential encoding step.
Solution Approach 2:
The patent extracts the escape color encoding from the interleaved syntax structure and separates it from the index map encoding. By taking out the escape color values and encoding them sequentially after all index values are processed, the patent removes the constraint that previously limited COPY_ABOVE_MODE and COPY_INDEX_MODE usage when escape colors differed between neighboring strings.
2Productivity
If current HEVC screen content coding methods are used, then the encoding follows existing standards, but parallel processing of index maps is not supported
Solution Approach 1:
The patent segments the encoding into independent phases: index value encoding and escape color encoding. This segmentation enables parallel processing architectures where multiple index strings can be processed simultaneously in the first phase, while escape colors are sequentially encoded in the second phase, thereby increasing overall throughput without requiring complex synchronized processing.
Solution Approach 2:
The patent performs preliminary encoding of all index values (including escape color index values) before encoding the actual escape colors. This preliminary action allows the index map processing to be completed and prepared for parallel processing, while the escape color encoding is deferred to a subsequent sequential phase, improving overall processing efficiency.
3Productivity
If escape colors are encoded sequentially at the end of index map, then parallel processing is enabled and throughput improves, but the encoding deviates from traditional interleaved syntax
Solution Approach 1:
The patent inverts the traditional encoding order by encoding all index values first (including escape color index values as part of the index map) and then encoding the escape colors separately at the end. This inversion of the conventional interleaved approach enables parallel processing of the index map while maintaining all necessary decoding information, thereby improving throughput despite the non-traditional encoding sequence.
Data Source
Figure 1
Figure 2A
Figure 2B
AI summary
An encoding apparatus, decoding apparatus, and coding methods. The encoding apparatus includes a processor configured to receive a video frame including screen content, generate a block containing an index map of colors for screen content in the video frame, wherein the block includes strings of index values sharing a same escape color index value, wherein the escape color index value represents an escape color, encode each of the strings of index values in the block, and sequentially encode the escape colors after each of the strings of index values in the block has been encoded. A transmitter operably coupled to the processor is configured to transmit the strings of index values and the escape colors in a bitstream to a decoding apparatus.