Decoded Picture Buffer Partitioning for Video Coding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current multi-layer video coding techniques face inefficiencies in decoded picture buffer (DPB) management, particularly in scalable, multiview, and 3D video coding, where DPB operations are not clearly specified, leading to inflexible and sub-optimal memory allocation and redundant signaling.

Innovation Solution

The proposed solution involves partitioning the DPB into sub-DPBs, each configured to store pictures of a specific layer type, with syntax elements indicating sub-DPB sizes for each operation point, allowing for efficient memory allocation and flexible DPB management, and signaling these sizes in the video parameter set (VPS) to optimize memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single DPB is used for all layers, then device complexity is reduced, but memory allocation efficiency deteriorates and operational flexibility is lost

Engineering Contradiction:
ImproveDPB structure complexityVSAvoidDPB operational flexibility
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The decoded picture buffer (DPB) is divided into multiple sub-DPBs, where each sub-DPB is dedicated to storing pictures of a specific layer type (e.g., base layer, enhancement layer, different views). This segmentation allows independent management and configuration of memory resources for each layer, improving memory allocation efficiency and operational flexibility without significantly increasing overall device complexity through standardized sub-DPB structures.

Inventive Principle:
Principle #1Segmentation

2Device complexity

If fixed DPB sizes are allocated, then device complexity is reduced, but memory allocation efficiency deteriorates due to inability to adapt to different operation points

Engineering Contradiction:
ImproveDPB configuration complexityVSAvoidMemory allocation efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The DPB configuration is made dynamic by allowing the number of sub-DPBs and their respective sizes to be configured according to different operation points. The syntax elements in the video parameter set (VPS) enable adaptive allocation of sub-DPB resources based on the specific multi-layer video coding requirements, allowing the system to optimize memory usage for different scenarios such as scalable video coding, multiview video coding, or 3D video coding without requiring complex reconfiguration.

Inventive Principle:
Principle #15Dynamics

3Reliability

If redundant signaling is used for DPB parameters, then reliability is improved, but loss of information increases due to inefficient bitstream usage

Engineering Contradiction:
ImproveDPB parameter signaling reliabilityVSAvoidBitstream efficiency
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The signaling mechanism is optimized by introducing syntax elements in the video parameter set (VPS) that efficiently convey DPB configuration parameters. Instead of redundant signaling, the system uses targeted parameters such as the number of sub-DPBs and their sizes, which are signaled only when necessary and interpreted in context with the operation point, thereby maintaining reliability while minimizing bitstream overhead and improving overall encoding efficiency.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP3022929B1Decoded picture buffer operations for video coding
Publication Date: 2022.01.19 QUALCOMM INC
  • EP3022929B1 patent drawingFigure 1
  • EP3022929B1 patent drawingFigure 2
  • EP3022929B1 patent drawingFigure 3

AI summary

A method of decoding video data comprising partitioning a decoded picture buffer (DPB) into a plurality of sub-DPBs, receiving at least one indication of a sub-DPB size for the plurality of sub-DPBs for one or more operation points of a multi-layer video coding process, and allocating memory space for the plurality of sub-DPBs based on the at least one indication.