CABAC Binarization Split for Higher Video Codec Throughput
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Context-adaptive binary arithmetic coding (CABAC) is a throughput bottleneck in video codec implementations due to data dependencies that make parallelization difficult, particularly on the decoder side, and there is a need to reduce the number of context and bypass coded bins to improve throughput.
Innovation Solution
Implement methods for encoding and decoding video sequences using context adaptive binary arithmetic coding (CABAC) by determining the value of delta quantization parameter syntax elements and transform coefficient remaining values, employing binarization and bypass coding techniques to reduce the number of context and bypass coded bins, respectively, with a maximum codeword length of 32 bits or less.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If CABAC is used for video encoding, then compression efficiency is improved, but throughput is reduced due to data dependencies making parallelization difficult
Solution Approach 1:
The patent segments the binarization process into two distinct parts: a prefix portion and a suffix portion. The prefix is context-coded while the suffix is bypass-coded, allowing different processing strategies for different parts of the data. This segmentation enables parallel processing of multiple suffix bins while maintaining the compression efficiency benefits of context coding for the prefix.
Solution Approach 2:
The patent applies different coding qualities to different parts of the binarized data. The prefix portion receives high-quality context coding with probability modeling, while the suffix portion uses simpler bypass coding. This local differentiation optimizes overall throughput by applying complex processing only where necessary for compression efficiency.
2Productivity
If the number of context coded bins is reduced to improve throughput, then processing speed is improved, but compression efficiency deteriorates
Solution Approach 1:
The patent divides the binarized syntax element into a prefix and suffix, applying context coding only to the prefix and bypass coding to the suffix. This segmentation ensures that the number of context coded bins is limited and manageable, improving throughput while still maintaining compression efficiency through context coding of the most significant prefix portion.
3Loss of information
If the number of bypass coded bins is reduced to improve compression efficiency, then compression ratio is improved, but throughput is reduced due to increased context coding complexity
Solution Approach 1:
The patent segments the binarization into prefix and suffix parts, with the suffix being bypass-coded. This approach limits the number of bypass coded bins to only the suffix portion, preventing excessive bypass coding while still achieving good compression through prefix context coding.
4Measurement precision
If variable length codes with long codewords are used to represent remaining values, then precision is improved, but device complexity increases due to larger codebooks and processing requirements
Solution Approach 1:
The patent segments the representation of remaining values into a fixed-length prefix and a variable-length suffix. The prefix provides consistent precision with fixed bit-length, while the suffix adds additional precision only when needed. This segmentation avoids the need for very long codewords while maintaining the necessary precision for representing large remaining values.
Solution Approach 2:
The patent applies different precision levels to different parts of the code. The prefix portion uses fixed-length coding with consistent precision, while the suffix portion uses variable-length coding to provide additional precision only when the remaining value requires it. This local differentiation reduces overall device complexity compared to using uniformly long codewords.
Data Source
AI summary
Techniques for context-adaptive binary arithmetic coding (CABAC) coding with a reduced number of context coded and/or bypass coded bins are provided. Rather than using only truncated unary binarization for the syntax element representing the delta quantization parameter and context coding all of the resulting bins as in the prior art, a different binarization is used and only part of the resulting bins are context coded, thus reducing the worst case number of context coded bins for this syntax element. Further, binarization techniques for the syntax element representing the remaining actual value of a transform coefficient are provided that restrict the maximum codeword length of this syntax element to 32 bits or less, thus reducing the number of bypass coded bins for this syntax element over the prior art.


