Video Decoding Deblocking Buffer Using Macroblock Group Counters
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional video decoding and deblocking systems require significant buffer memory, especially for high-resolution video frames, due to the need for a deblock buffer to manage the decoding status of macroblocks, which increases storage and transmission demands.
Innovation Solution
A system and method that groups neighboring macroblocks into macroblock groups, using counters to track decoding status and initiating deblocking only when a counter reaches a fixed value, reducing the required buffer space by half compared to conventional systems.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a deblock buffer is used to manage decoding status of each macroblock, then deblocking can be performed correctly, but buffer memory space increases significantly
Solution Approach 1:
The patent merges the decoding status tracking for multiple macroblocks into a single counter. Instead of having separate buffer entries for each macroblock to track decoding status, the invention combines the status of multiple macroblocks (specifically 4 macroblocks in a 2x2 pattern) into one counter that increments as each macroblock is decoded. This reduces the buffer size from needing one entry per macroblock to needing one entry per 4 macroblocks.
Solution Approach 2:
The patent segments the video frame into macroblock groups of 4 adjacent macroblocks (arranged in a 2x2 pattern). Each group is associated with a single counter in the deblock buffer. This segmentation allows the system to process and track decoding status in smaller, manageable units while still maintaining the ability to perform correct deblocking operations across macroblock boundaries.
2Manufacturing precision
If deblocking is performed after all macroblocks are decoded in sequence, then deblocking quality is maintained, but processing time increases
Solution Approach 1:
The patent enables preliminary deblocking actions to be taken as soon as a macroblock group's decoding status is complete, rather than waiting for all macroblocks in the frame to be decoded. When a counter reaches the fixed value (indicating all 4 macroblocks in a group are decoded), the corresponding deblocking operation can immediately proceed. This allows overlapping of decoding and deblocking operations, reducing total processing time while maintaining quality.
3Adaptability or versatility
If macroblocks are decoded in random order (FMO or ASO mode), then decoding flexibility is improved, but deblocking becomes more complex
Solution Approach 1:
The patent implements a self-service mechanism where the deblock buffer automatically tracks decoding status through counters that increment as macroblocks are decoded in any order. The system does not require complex external control logic to manage the relationship between random decoding order and sequential deblocking requirements. Instead, the counters themselves provide the necessary state information, and deblocking operations are automatically enabled when their prerequisite macroblocks are decoded, regardless of the overall decoding sequence.
Data Source
AI summary
The invention provides a system and method for decoding and deblocking a video frame having a plurality of macroblocks. The system of the invention comprises a decoder configured to decode the macroblocks, a deblock configured to deblock the macroblocks, and a deblock buffer comprising a plurality of counters corresponding to the plurality of macroblocks respectively. Each counter corresponds to a macroblock group comprising a predetermined amount of neighboring macroblocks. In response to a counter is incremented to a fixed value, the macroblock group corresponds to the counter is deblocked.


