Parallel Entropy Encoding for Video Compression
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Serial entropy encoding by a single processor consumes an unacceptably large amount of time in image and video compression, despite optimizations in other encoding steps.
Innovation Solution
Implementing a parallel entropy encoding system with multiple processors that independently encode chunks of image or video data and use buffers to store results, with a post-processor correcting data dependencies to assemble a compressed bit stream.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If serial entropy encoding is performed by a single processor, then data dependencies are handled correctly, but encoding time becomes unacceptably large
Solution Approach 1:
The patent divides the entropy encoding task into separate segments: a parallel encoding phase where multiple processors independently encode blocks, and a post-processing phase where dependencies are resolved. This segmentation allows parallel processing to reduce encoding time while maintaining correctness through subsequent dependency correction.
Solution Approach 2:
The patent performs preliminary entropy encoding of all blocks in parallel before resolving data dependencies. By pre-computing the encoding for all blocks independently and then correcting dependencies in a subsequent post-processing phase, the system achieves both speedup and correctness.
2Productivity
If parallel entropy encoding is implemented with multiple processors, then encoding time is reduced, but device complexity increases
Solution Approach 1:
The patent segments the encoding system into multiple independent processors for parallel block encoding, plus separate buffer structures for storing intermediate results. This segmentation enables parallel processing and improved productivity while keeping each individual processor simple.
Solution Approach 2:
The patent introduces buffer structures as intermediary elements between the parallel processors and the final output. These buffers store the encoded data from multiple processors and enable the post-processing phase to assemble the correct output, simplifying the overall system architecture.
3Productivity
If multiple buffers are used to store encoding results, then parallel processing is enabled, but buffering requirements increase
Solution Approach 1:
The patent segments the buffering into separate buffers for each parallel processor, where each buffer stores the encoded data for a specific block. This segmentation enables parallel processing while keeping each buffer relatively small, as each processor only needs to buffer data for its assigned block rather than the entire image.
Data Source
AI summary
A method of entropy encoding image or video data may include entropy encoding a number of blocks independently and in parallel to generate a number of bit streams. At least one of the number of bit streams may include an assumed value in place of a value that would be determined by another bit stream. The method may also include selectively correcting the assumed value based on a value in another one of the number of bit streams. The number of bit streams may be combined into an output, entropy encoded bit stream corresponding to the number of blocks.


