Adaptive VLC for Video Coding with Internal State Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current video coding techniques, such as those in SVC JD9, face inefficiencies in encoding chroma coefficients and require separate passes for statistics collection and coding, leading to high encoder complexity and reduced coding performance due to shared codebooks and inefficient special EOB symbol formation.
Innovation Solution
The adaptive VLC technique dynamically adjusts EOB shift, special EOB shift, and codebook selection tables based on collected statistics during the coding pass, maintaining these as internal states within the encoder and decoder, allowing for separate and efficient coding of chroma DC and AC blocks, and using a special EOB symbol to encode nonzero coefficients with magnitudes greater than one.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If separate passes for statistics collection and coding are used, then coding performance can be optimized, but encoder complexity increases
Solution Approach 1:
The patent performs statistics collection during the coding pass itself rather than in a separate preliminary pass. The encoder accumulates coding statistics (such as coefficient distribution patterns) on-the-fly while encoding, and uses these statistics to dynamically adjust VLC parameters mid-coding, eliminating the need for a separate statistics collection phase while maintaining optimized coding performance
Solution Approach 2:
The patent maintains continuous coding operation by integrating statistics collection into the coding process. The useful action of coding continues uninterrupted while statistics are simultaneously collected and used for adaptive parameter adjustment, avoiding the interruption caused by separate passes and maintaining high encoder utilization
2Device complexity
If shared codebooks are used for chroma coefficients, then device complexity is reduced, but coding performance deteriorates
Solution Approach 1:
The patent applies different VLC codebooks to different chroma coefficient contexts based on local characteristics. Specifically, it uses separate codebooks for chroma DC coefficients versus chroma AC coefficients, and further adapts codebook selection based on local statistical patterns observed during coding. This localized differentiation optimizes coding performance for each coefficient type without requiring completely separate codebook structures for all chroma data
3Productivity
If adaptive VLC parameter adjustment is performed, then coding efficiency improves, but device complexity increases
Solution Approach 1:
The patent dynamically changes VLC parameters (codebook selection, EOB shift values, special EOB shift values) based on statistics collected during the coding process. When specific statistical thresholds are met or particular coding patterns are detected, the encoder adapts its VLC parameters to better match the current data characteristics, improving coding efficiency through parameter optimization
Solution Approach 2:
The VLC system performs self-adjustment by automatically collecting its own coding statistics and using these statistics to modify its parameters without external intervention. The encoder monitors its own performance metrics and autonomously adapts its coding strategy, reducing the need for complex external control mechanisms while maintaining high coding efficiency
Data Source
AI summary
Adaptive variable length coding techniques may be used for entropy coding of residual block coefficients produced by predictive video coding. The techniques may be applied to schemes that code positions of nonzero transform coefficients using zero runs. Coding parameters such as end of block (EOB) shift and VLC codebook selection tables may be maintained as internal states, instead of sending them with coded video slice data. Table entries may be periodically updated based on statistics collected during a coding pass. A special EOB shift table may adapt the position of a special EOB symbol in a symbol set to probability of significant coefficients with magnitude greater than one for a coding condition, such as a coding cycle. Chroma blocks may be coded independently of luma blocks using separate EOB shift, special EOB shift, and VLC codebook selection tables.


