Video Coding Chunk Quantization via Viterbi Trellis Pruning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video coding technologies face challenges in maintaining constant subjective quality while adhering to buffer constraints, as they struggle to optimize quantization step sizes to balance quality and bit rate within the limitations of receiver buffer fullness.
Innovation Solution
A method employing the Viterbi algorithm to prune paths in a trellis diagram, determining optimal quantization step sizes for each chunk of video frames to minimize quality deviations from a target, ensuring buffer constraints are not exceeded, using a combination of perceptual quality evaluation and buffer management to adjust encoding parameters iteratively.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If adaptive quantization is used to optimize quality, then subjective video quality is improved, but buffer overflow or underflow may occur due to variable bit rate
Solution Approach 1:
The patent performs preliminary trial encoding at multiple quantizer step sizes to obtain quality measures and bit counts before actual encoding. This advance preparation allows the Viterbi algorithm to select optimal quantizer values that satisfy buffer constraints while maintaining quality, preventing buffer overflow/underflow before they occur.
Solution Approach 2:
The patent dynamically adjusts quantizer step sizes based on buffer fullness state. The Viterbi algorithm selects from multiple possible quantizer values at each chunk, adapting the bit rate to current buffer conditions. This dynamic adjustment maintains quality while ensuring buffer constraints are met at all times.
2Reliability
If buffer preload is increased to prevent underflow, then buffer constraint compliance is improved, but encoding time and complexity increase
Solution Approach 1:
The patent divides the video sequence into chunks and processes them through trial encoding at multiple quantizer step sizes. By segmenting the encoding process and pre-evaluating quality and bit counts for each chunk at different quantizer values, the system efficiently determines optimal parameters without excessive time cost.
Solution Approach 2:
The patent uses feedback from trial encoding results (quality measures and bit counts) to guide the Viterbi algorithm's selection of quantizer values. This feedback mechanism allows the system to make informed decisions about buffer preload and quantizer selection, optimizing both buffer compliance and encoding efficiency.
3Measurement precision
If multiple quantizer step sizes are evaluated through trial coding, then optimal quality is achieved, but computational complexity increases
Solution Approach 1:
The patent evaluates multiple quantizer step sizes (excessive action) during trial encoding to ensure optimal quality selection. By testing more quantizer values than strictly necessary and using the Viterbi algorithm to select the optimal subset, the system guarantees quality optimization while managing computational complexity through efficient path pruning.
Solution Approach 2:
The patent creates copies of the video sequence and encodes them at different quantizer step sizes during trial encoding. These encoded copies are evaluated to obtain quality measures and bit counts, which then inform the selection of optimal quantizer values for the final encoding, ensuring quality optimization without re-encoding.
Data Source
Figure 1
Figure 2
Figure 3~4
AI summary
A sequence to be encoded is divided into a plurality of temporal portions or chunks. The sequence is then analysed to determine for each chunk, in accordance with a plurality of encoding quality settings, data establishing the relationship between the quality settings and (i) a quality metric for the portion and (ii) the number of bits generated by encoding the portion at that quality setting. Given a target quality, a target bit rate is then set (or vice versa); then one chooses a set of quality settings, one per chunk, that tends to minimise a combined quality cost for the sequence within the constraint that transmission of encoded video at the target bit rate via transmitting and receiving buffers of specified size and initial receiver buffer fullness shall not cause underflow nor overflow. The combined quality cost is the sum of individual quality costs each of which is a function of the deviation of the quality metric of the respective encoded portion from the target quality, the function being such that the cost generally increases as the absolute value of the deviation increases. The sequence is then encoded using the chosen quality settings.