Parallel Intra-Prediction Encoding Using Independent Sections
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current video encoding and decoding technologies face challenges in parallelizing intra-prediction processes due to dependencies on neighboring blocks, which restricts the number of macroblocks that can be processed in parallel and necessitates synchronization points, limiting the utilization of GPU processing capability, especially for single-slice bitstreams.
Innovation Solution
The proposed solution involves encoding strategies that allow parallel intra-prediction by selecting sections that can be encoded independently, using methods like Pulse Code Modulation (PCM) or DC mode, to break dependencies on neighboring blocks, enabling efficient processing on GPUs without the need for multiple slices, thereby reducing synchronization points and achieving peak block processing rates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If intra-prediction processes are parallelized using conventional methods, then processing speed is improved, but dependencies on neighboring blocks restrict the number of macroblocks that can be processed in parallel and necessitate synchronization points
Solution Approach 1:
The patent divides the picture into multiple independent sections (e.g., slices or tile groups) that can be processed in parallel without dependencies on neighboring blocks. Each section is encoded independently with its own set of macroblocks, eliminating cross-section dependencies and allowing full parallelization on GPU architectures.
Solution Approach 2:
The patent performs preliminary organization of macroblocks into independent processing sections before the actual encoding begins. By pre-structuring the bitstream and processing order to ensure no inter-section dependencies exist, the system enables immediate parallel processing without runtime synchronization requirements.
2Productivity
If multiple slices are used to enable parallel processing, then GPU utilization is improved, but bitstream complexity and overhead increase
Solution Approach 1:
The patent applies different processing strategies to different sections of the picture. Each section is optimized for independent parallel processing while maintaining appropriate prediction modes for local characteristics. This allows GPU utilization improvement without requiring complex global bitstream structures, as each section handles its own dependencies locally.
3Productivity
If intra-prediction is parallelized for decoders, then decoding efficiency is improved, but efficient parallelization is not possible with single-slice bitstreams
Solution Approach 1:
The patent implements a dynamic section division strategy that adapts to different bitstream configurations. Whether the input is a single-slice or multi-slice bitstream, the system dynamically organizes macroblocks into independent processing sections suitable for parallel decoding, making the solution versatile across different encoder configurations while maintaining high decoding efficiency.
Data Source
AI summary
Digital pictures may be encoded and decoded in a way that optimizes parallelization. Selected sections of a digital picture in a first list are encoded independently of encoding any of their neighbor sections. Sections in a second list located to the right of corresponding sections in the first list are encoded using at most the section to their immediate left. Sections in a third list located to the right of a corresponding section in the second list and immediately below a corresponding section in the first list are encoded using at most the sections to the immediate left, immediately above and immediately to its above-right. All other sections of the picture may be encoded in a normal manner.


