Decoder Buffer Management via Mandatory Bitstream Parameters
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video codecs do not efficiently manage the decoded picture buffer (DPB) by not providing necessary buffer size and output timing information, leading to potential waste of system resources and output latency in decoded image frames.
Innovation Solution
Incorporating mandatory information in the bitstream for buffer size and output timing, such as max_dec_frame_buffering, num_reorder_frames, and max_latency_increase, to allow decoders to assign optimal buffer sizes and determine when to output pre-decoded image frames, thereby preventing resource wastage and latency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If buffer size information is not mandatorily included in the bitstream, then the bitstream structure remains simple, but the decoder cannot efficiently manage the decoded picture buffer leading to resource wastage
Solution Approach 1:
The encoder performs preliminary calculation of the maximum buffer size required for decoding the current picture sequence and includes this information in advance in the bitstream. This allows the decoder to pre-allocate the exact buffer size needed, avoiding both resource wastage from over-allocation and potential buffer overflow from under-allocation.
Solution Approach 2:
The maximum buffer size information acts as an intermediary parameter that bridges the encoder and decoder. The encoder calculates this value based on picture order count differences and transmission characteristics, then transmits it to the decoder, which uses it to configure its buffer. This intermediary information enables efficient buffer management without requiring complex real-time negotiation or large safety margins.
2Reliability
If the decoder waits for all reference frames to be decoded before output, then decoding accuracy is improved, but output latency increases
Solution Approach 1:
The output timing of decoded pictures is made dynamic rather than static. The decoder determines output timing based on the actual decoding completion status of reference frames and the maximum buffer size information. When reference frames are available, pictures can be output earlier; when they are not, output is delayed. This dynamic adjustment optimizes both latency and decoding accuracy based on real-time conditions.
Solution Approach 2:
The system changes the parameter of output timing based on decoding progress. Instead of using a fixed output time rule, the decoder adjusts output timing by considering the picture order count, the maximum buffer size, and whether required reference frames have been decoded. This parameter change allows the system to adapt output latency to actual decoding conditions, reducing unnecessary delays while maintaining accuracy.
3Reliability
If a large buffer is allocated to handle all possible reordering cases, then all decoding scenarios are covered, but system resources are wasted
Solution Approach 1:
The encoder performs preliminary analysis of the picture sequence to calculate the maximum buffer size actually needed, considering factors like picture order count differences and expected reordering scenarios. This calculated value is then transmitted to the decoder, which allocates exactly this amount of buffer memory. This preliminary calculation approach ensures the buffer is large enough to handle all necessary cases while avoiding allocation of excessive memory for unlikely or unnecessary scenarios.
Data Source
AI summary
Provided are methods and apparatuses for encoding and decoding an image. Method of encoding includes: determining a maximum size of a buffer to decode each image frame by a decoder, a number of image frames to be reordered, and latency information of an image frame having a largest difference between an encoding order and a display order from among image frames that form an image sequence, based on an encoding order the image frames that form the image sequence, an encoding order of reference frames referred to by the image frames, a display order of the image frames, and a display order of the reference frames; and adding, to a mandatory sequence parameter set, a first syntax indicating the maximum size of the buffer, a second syntax indicating the number of image frames to be reordered, and a third syntax indicating the latency information.


