Chroma-from-luma Mode Selection for Video Encoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video encoding technologies face challenges in efficiently compressing video files while preventing significant distortions, particularly when using the chroma-from-luma (CFL) intra-prediction mode, which requires extensive computation and circuit area.
Innovation Solution
The proposed solution involves evaluating the CFL intra-prediction mode during the reconstruction stage of video encoding and using a sum of absolute transformed difference (SATD) cost function instead of the sum of squared difference (SSD) function to calculate the cost of the CFL mode, thereby reducing computational requirements and allowing for parallel evaluation of alpha values.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the chroma-from-luma (CFL) intra-prediction mode is used for video encoding, then compression efficiency is improved, but computational complexity and circuit area increase significantly
Solution Approach 1:
The patent changes the parameter used for cost calculation from Sum of Squared Differences (SSD) to Sum of Absolute Transformed Differences (SATD). This parameter transformation enables parallel evaluation of alpha values and significantly reduces the computational complexity required for CFL mode selection while maintaining compression efficiency
Solution Approach 2:
The patent performs preliminary transformation of the residual block using a transform matrix before calculating the SATD cost. This preliminary action allows for more efficient cost evaluation and enables parallel processing of multiple alpha values, reducing the overall computational burden during mode selection
2Productivity
If the chroma-from-luma (CFL) intra-prediction mode is used for video encoding, then compression efficiency is improved, but the quality of encoded video may deteriorate due to significant distortions
Solution Approach 1:
The patent implements a feedback mechanism where the calculated SATD cost is used to evaluate and select the optimal alpha value for CFL mode. This feedback loop ensures that only alpha values producing acceptable quality (low distortion) are selected, while still benefiting from the compression efficiency of CFL mode. The cost function provides quantitative feedback on prediction accuracy
Solution Approach 2:
The patent evaluates multiple candidate alpha values (including zero) for the CFL mode rather than relying on a single fixed value. This partial exploration of multiple possibilities allows the system to select the optimal balance between compression efficiency and quality, avoiding excessive distortions while maintaining the benefits of chroma-from-luma prediction
3Productivity
If traditional SSD function is used to calculate CFL mode cost, then computational requirements are high, but using SATD function reduces computational requirements and enables parallel evaluation
Solution Approach 1:
The patent replaces the traditional SSD calculation mechanism with a SATD-based mechanism that incorporates transform operations. This substitution enables parallel evaluation of multiple alpha values through the transform matrix operations, significantly increasing encoding speed while reducing the computational burden on the processing system
Data Source
AI summary
Disclosed are systems and techniques for efficient real-time codec encoding of video files. In one embodiments, the techniques include receiving one or more intra-prediction modes, each having a corresponding cost; calculating a first cost of a chroma-from-luma intra-prediction mode; calculating a second cost of the chroma-from-luma intra-prediction mode; and calculating a final cost based on the first cost and the second cost. The techniques also include selecting a final intra-prediction mode; generating, based on the selected final intra-prediction mode, a block of predicted pixels that approximates a block of source pixels of an image frame; and encoding a first alpha value in a bitstream.


