Decoded Picture Buffer Allocation for Reference Frame Reordering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The decoded picture buffer (DPB) occupies excessive storage space and increases costs due to inadequate consideration of decoding and display order differences in reference frames during video decoding.
Innovation Solution
A video decoding method and decoder device that allocates buffer areas efficiently by setting a decoded picture buffer with X+1 picture buffer areas, determining idle areas based on status information, and controlling the video decoder to store decoded images in these areas, dynamically managing buffer space according to the number of reference and reorder delay frames.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the decoded picture buffer is set without considering decoding and display order differences, then the buffer can store all reference frames, but the storage space is excessively large and costs increase
Solution Approach 1:
The patent applies dynamic buffer management by setting the decoded picture buffer size based on the maximum number of reference frames (X) required during decoding, configuring exactly X+1 picture buffer areas. This dynamic sizing ensures the buffer is large enough to store all necessary reference frames while avoiding excessive allocation, directly resolving the contradiction between storage completeness and space efficiency
Solution Approach 2:
The patent changes the buffer configuration parameter from a fixed large size to a variable size determined by the maximum reference frame count (X). By setting the buffer to contain exactly X+1 picture buffer areas where X is derived from the encoded stream's reference frame requirements, the system adapts the buffer size to actual needs, reducing wasted storage space while maintaining reliability
2Reliability
If the decoded picture buffer is set to accommodate all possible reference frames, then no frame is lost, but the buffer utilization rate is low
Solution Approach 1:
The patent implements dynamic buffer allocation where the number of picture buffer areas is set to X+1 based on the maximum number of reference frames (X) identified from the encoded stream. This dynamic configuration ensures the buffer contains exactly the number of areas needed for reference frames plus one for current frame processing, preventing both frame loss and underutilization, thus improving buffer utilization rate while maintaining completeness
Solution Approach 2:
The patent segments the decoded picture buffer into exactly X+1 picture buffer areas, where each area corresponds to a specific reference frame or processing stage. This segmentation approach ensures each buffer area has a dedicated purpose, improving utilization by eliminating unused space while maintaining the ability to store all necessary reference frames for reliable decoding
3Ease of operation
If the buffer allocates fixed picture buffer areas, then management is simple, but the buffer area allocation efficiency is low
Solution Approach 1:
The patent employs dynamic buffer management by determining the number of picture buffer areas (X+1) based on the maximum number of reference frames (X) from the encoded stream. This dynamic approach optimizes allocation efficiency by matching buffer size to actual requirements while maintaining relatively simple management through automated determination of X from the stream parameters, balancing simplicity and efficiency
Data Source
AI summary
A video decoding method is applied to a decoder device to decode an encoded stream stored in memory. The decoder device includes a video decoder, a memory controller and a processor. The video decoding method includes: setting, by the memory controller, a decoded picture buffer in the memory according to a maximum number X of reference frames in the encoded stream, wherein the decoded picture buffer includes X+1 picture buffer areas, each picture buffer area is configured to store a decoded image, and X is a positive integer; determining an idle picture buffer area in the decoded picture according to status information of the decoded picture buffer; and controlling the video decoder to decode a current frame in the encoded stream to obtain a decoded image of the current frame and storing the decoded image of the current frame to the idle picture buffer area.


