Video Encoding Cache Reuse to Reduce Split-Mode Computation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video encoding methods, particularly in the HEVC standard, face inefficiencies in determining optimal coding modes due to the repetitive computation of rate-distortion costs for various splitting paths of coding units, leading to increased computational complexity and reduced encoding speed.
Innovation Solution
A method and apparatus for encoding video that utilizes a cache mechanism to store and reuse coding parameters for subblocks, reducing redundant computations by reusing previously estimated parameters when evaluating different splitting modes for coding units, thereby optimizing the rate-distortion optimization process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If rate-distortion optimization is performed for each splitting path of coding units, then coding mode determination accuracy is improved, but computational complexity increases
Solution Approach 1:
The patent performs rate-distortion optimization in advance for all possible splitting paths of a coding unit before final mode determination. By pre-calculating the rate-distortion costs for different splitting configurations (e.g., horizontal splitting followed by vertical splitting, vertical splitting followed by horizontal splitting, or quadtree splitting), the encoder accumulates these costs and uses them to efficiently select the optimal coding mode without repeating computations, thus resolving the contradiction between accuracy and complexity.
2Productivity
If multiple splitting paths are evaluated for coding units, then encoding performance is improved, but encoding time increases
Solution Approach 1:
The patent evaluates and accumulates rate-distortion costs for multiple splitting paths in advance during the mode determination phase. By pre-computing the costs for different splitting configurations and storing them for later use, the encoder avoids repeating the same calculations during actual encoding, thus improving encoding performance while reducing the time lost to redundant computations.
3Measurement precision
If rate-distortion costs are computed multiple times for the same sub-CU, then coding accuracy is improved, but redundant calculations increase
Solution Approach 1:
The patent accumulates rate-distortion costs from multiple splitting path evaluations in advance and stores them in a data structure (e.g., a table or memory buffer). When the same sub-CU needs to be evaluated again, the pre-computed accumulated costs are retrieved and reused instead of recalculating, thus maintaining coding accuracy while eliminating redundant calculations and reducing energy consumption.
Data Source
Figure 1~2B
Figure 3~5
Figure 4
AI summary
A method and an apparatus for encoding a video are disclosed. For at least one block from a picture of said video, a first rate-distortion optimization is performed (602) for determining for a first splitting mode of said block into at least one first subblock, coding parameters of said at least one first subblock. At least one second rate-distortion optimization is performed (609) for determining for at least one second splitting mode of said block into at least one second subblock, coding parameters of said at least one second subblock. A best splitting mode for coding said block is determined (613) according to at least said first rate-distortion optimization and said second rate-distortion optimization, and said block is encoded (616) according to said best splitting mode. While performing (609) said at least one second rate-distortion optimization and when said at least one second subblock is located at a same position in the picture as said at least one first subblock and said at least one second subblock has a same width and same height as said at least one first subblock, at least one coding parameter of said at least one first subblock determined during said first rate-distortion optimization is used (605) for determining said coding parameters for said at least one second subblock.