Parallel Entropy Coding Architecture for Faster Video Decoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current entropy coding methods, such as H.264's CAVLC and CABAC, are serial in nature, which can be computationally demanding and inefficient, especially for high-quality video decoding on devices with limited processing power.
Innovation Solution
Implementing a parallel entropy coding and decoding architecture that assigns each symbol to a subsequence based on estimated probabilities, allowing multiple subsequences to be encoded and decoded simultaneously, and then interleaved to form a single bitstream.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of substance
If serial entropy coding methods (CAVLC/CABAC) are used, then compression efficiency is achieved, but computational complexity and processing time increase
Solution Approach 1:
The input data stream is divided into multiple subsequences based on symbol probability ranges. Each subsequence is processed independently by separate entropy coding instances in parallel, reducing the computational burden on any single processing unit while maintaining overall compression efficiency.
Solution Approach 2:
The patent transitions from sequential processing to parallel processing by introducing a dimensional transformation - organizing the coding process across multiple parallel instances rather than a single serial instance. This allows simultaneous processing of multiple data subsequences, significantly reducing processing time and computational complexity.
2Loss of substance
If serial entropy coding methods are used, then compression is achieved, but processing speed decreases
Solution Approach 1:
The data stream is segmented into multiple subsequences that can be processed simultaneously. Each subsequence is fed to a separate entropy coding instance, enabling parallel processing that directly increases processing speed while achieving the same compression ratios as serial methods.
Solution Approach 2:
Multiple entropy coding instances operate continuously and simultaneously on different subsequences, eliminating the idle time and sequential waiting inherent in serial processing. This continuous parallel operation maximizes processing throughput and speed.
3Productivity
If parallel entropy coding is implemented, then processing speed increases, but device complexity increases
Solution Approach 1:
Multiple entropy coding instances use identical, standardized algorithms and structures. This universality allows the system to leverage the same proven compression technology across all parallel instances, reducing the complexity burden by avoiding the need for multiple different complex algorithms.
Solution Approach 2:
By dividing the processing workload into separate, independent subsequences, each handled by a dedicated entropy coding instance, the system distributes complexity across multiple simple units rather than concentrating it in one complex unit. This segmentation makes the overall system more manageable and implementable.
Data Source
AI summary
A method for entropy coding data using parallel entropy coders to encode an input sequence as a plurality of encoded subsequences, which are then combined to form an output bitstream. The input sequence is separated into subsequences on the basis of a context model. A method for entropy decoding a bitstream of encoded data by extracting a plurality of encoded subsequences from the bitstream and entropy decoding the encoded subsequences in parallel to generate a plurality of decoded subsequences, which are then interleaved based on a context model to produce a reconstructed sequence.


