Slice Segment Entropy Coding With Context Storage for Video Compression
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current video codecs face challenges in efficiently encoding and decoding high-resolution video content, particularly in managing data compression and context-based arithmetic coding, which affects the compression ratio and data size reduction.
Innovation Solution
The proposed solution involves entropy encoding and decoding methods that utilize context information from nearby data, specifically considering the attribute of a slice segment, to determine bin strings and syntax elements, and store context variables for maximum coding units, enabling efficient compression and decoding by adapting to the characteristics of dependent and independent slice segments.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of substance
If arithmetic coding-based entropy encoding is performed on video data, then compression ratio is improved, but device complexity increases due to context-based arithmetic coding requirements
Solution Approach 1:
The video data is divided into slice segments, and entropy encoding is performed separately for each slice segment. This segmentation allows the encoding process to be broken down into manageable units, reducing the overall complexity while maintaining compression efficiency.
Solution Approach 2:
Context variables are determined based on the specific attributes of each slice segment (independent or dependent). This local adaptation of encoding parameters optimizes compression for each segment type without requiring complex global analysis, balancing compression ratio and device complexity.
2Loss of substance
If context variables are determined for each maximum coding unit, then compression efficiency is improved, but processing time increases
Solution Approach 1:
Context variables are determined in advance for each maximum coding unit based on slice segment attributes. This preliminary determination allows subsequent entropy encoding operations to proceed more quickly, as the context information is already prepared rather than computed in real-time during encoding.
Solution Approach 2:
The context variable determination is extracted as a separate preprocessing step from the main entropy encoding process. This separation allows the time-consuming context analysis to be performed independently, optimizing the overall processing workflow and reducing bottlenecks.
3Reliability
If slice segments are processed independently, then decoding reliability is improved, but compression ratio deteriorates due to loss of context information
Solution Approach 1:
Different context variable determination methods are applied to different slice segment types (independent vs. dependent). This local differentiation allows independent slice segments to be decoded reliably while dependent slice segments maintain compression efficiency by utilizing context from previous segments, achieving both reliability and compression.
Solution Approach 2:
The encoding approach dynamically adapts to the slice segment type. Independent slice segments use self-contained context for reliability, while dependent slice segments leverage previous context for better compression. This dynamic adaptation resolves the contradiction between reliability and compression ratio.
Data Source
AI summary
Provided are entropy encoding and entropy decoding for video encoding and decoding. The video entropy decoding method includes: determining a bin string and a bin index for a maximum coding unit that is obtained from a bitstream; determining a value of a syntax element by comparing the determined bin string with bin strings that is assignable to the syntax element in the bin index; storing context variables for the maximum coding unit when the syntax element is a last syntax element in the maximum coding unit, a dependent slice segment is includable in a picture in which the maximum coding unit is included, and the maximum coding unit is a last maximum coding unit in a slice segment; and restoring symbols of the maximum coding unit by using the determined value of the syntax element.


