Video Coder Performance Control Under Bus and Compute Limits
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Video coding systems face uncontrollable processing performance due to bus latency and dynamic image changes, leading to inefficient code compression when traditional methods like reducing reference frames or disabling fractional pixel motion estimation are employed.
Innovation Solution
A performance control method for a video coding system that detects and adjusts the loading of reference frames and motion estimation durations based on preset thresholds to maintain optimal processing performance, ensuring that the system does not exceed preset bus and computing performance thresholds.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If the search window size is reduced to relieve bus impact, then bus latency is reduced, but code compression efficiency is degraded
Solution Approach 1:
The patent implements dynamic adjustment of motion estimation parameters based on real-time bus performance detection. When bus latency is detected to be within acceptable thresholds, the system dynamically increases search window size and enables fractional pixel motion estimation to improve compression efficiency. When bus latency exceeds thresholds, the system dynamically reduces these parameters to relieve bus impact, creating a dynamic balance between the two conflicting requirements.
2Duration of action of moving object
If fractional pixel motion estimation is disabled to reduce computation duration, then processing time is reduced, but compression efficiency drops significantly
Solution Approach 1:
The system dynamically controls the enablement of fractional pixel motion estimation based on detected computing performance thresholds. When computing performance is sufficient (processing time below threshold), fractional pixel motion estimation is enabled to maintain high compression efficiency. When computing performance deteriorates (processing time exceeds threshold), the system disables this feature to reduce computation duration, thus dynamically balancing computation time and compression efficiency.
3Loss of time
If reference frame loading is reduced to relieve bus impact, then bus access is reduced, but image quality and compression efficiency are degraded
Solution Approach 1:
The patent implements dynamic control of reference frame loading based on real-time bus performance monitoring. When bus performance is good (latency below threshold), the system increases reference frame loading to maintain image quality and compression efficiency. When bus latency exceeds thresholds, the system dynamically reduces reference frame loading to relieve bus impact, creating a dynamic trade-off between bus access time and image quality.
4Productivity
If motion estimation duration is limited to meet processing deadlines, then processing performance is maintained, but compression efficiency is reduced
Solution Approach 1:
The system dynamically adjusts motion estimation duration based on detected processing performance thresholds. When processing performance is sufficient (duration below threshold), the system allows longer motion estimation to improve compression efficiency. When processing performance deteriorates (duration exceeds threshold), the system limits motion estimation duration to maintain processing performance, dynamically balancing these two requirements.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The present invention provides a performance control method for a video coding system, a device, and a system. The method includes: detecting whether a bus performance value is higher than or equal to a preset bus performance threshold and decreasing, when the bus performance value is higher than or equal to the preset bus performance threshold, the bus performance value and a computing performance value; and detecting whether a computing performance value is higher than or equal to a preset computing performance threshold and decreasing, when the computing performance value is higher than or equal to the preset computing performance threshold, the computing performance value, in order to make processing performance of a coder higher than or equal to preset processing performance, thereby avoiding insufficient coder performance due to an impact of system status or a code image on the coder.