Mode Decision Component Using Estimated CDF for Video Encoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current video coding technologies face challenges in achieving high compression rates while maintaining efficient computational complexity, particularly in supporting multiple video coding formats like AV1 and VP9, due to the complexity of rate-distortion optimization and hardware architecture requirements.
Innovation Solution
A hardware video processor is designed to estimate compression coding data using a correction factor and previously calculated compression data, allowing for efficient mode decision and encoding without waiting for updated CDF tables, thereby improving hardware utilization and supporting multiple codecs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If updated CDF tables are calculated based on previous partition before mode decision for current partition, then coding accuracy is improved, but hardware complexity and processing delay increase
Solution Approach 1:
The patent pre-calculates and stores CDF tables for multiple possible previous partitions before they are actually needed for mode decision. This allows the mode decision component to immediately access pre-computed CDF tables without waiting for real-time calculation, thereby maintaining high coding accuracy while avoiding the hardware complexity and processing delay of on-the-fly CDF table generation.
Solution Approach 2:
The patent divides the CDF table calculation and storage into separate segments for different partition types (e.g., different block sizes, different prediction modes). Each segment contains pre-calculated CDF tables specific to that partition type, allowing the hardware to efficiently select and use the appropriate pre-computed tables without processing all possible partition types, thus reducing overall hardware complexity while maintaining accuracy.
2Measurement precision
If CDF tables are updated in real-time based on previous partition, then coding precision is improved, but processing time increases
Solution Approach 1:
The patent pre-calculates CDF tables during idle periods or in parallel with other encoding operations, so that when mode decision is needed for a current partition, the appropriate CDF tables are already available. This eliminates the need for real-time CDF table updates during the critical mode decision path, thereby maintaining high coding precision while significantly reducing processing time delays.
3Adaptability or versatility
If multiple video coding formats are supported, then adaptability is improved, but device complexity increases
Solution Approach 1:
The patent implements a universal CDF table structure and mode decision architecture that can handle multiple video coding formats (e.g., VP9, AV1) through a common hardware framework. The pre-computed CDF tables are organized in a format-agnostic manner, and the mode decision component uses a unified algorithm that adapts to different codecs without requiring separate dedicated hardware paths for each format, thereby improving adaptability while controlling device complexity.
Data Source
AI summary
A mode decision component is configured to determine the costs of different modes for a selected partition of a frame of a video using an estimated compression coding data, which is calculated prior to a corresponding actual compression coding data being calculated based on another partition immediately prior to the selected partition in a partition processing order. The estimated compression coding data is determined based on a previously calculated compression coding data calculated based on a completed partition prior to the selected partition in the partition processing order. The mode decision component is configured to use the determined costs to select one of the modes. An encoder component is configured to use the selected mode to encode the selected partition by using the corresponding actual compression coding data calculated based on the another partition immediately prior to the selected partition in the partition processing order.


