IBC Buffer Design for Large CTU Sizes in Video Coding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video coding technologies, such as those based on the Versatile Video Coding (VVC) standard, face limitations in supporting larger CTU sizes beyond 128x128, non-square CTU sizes, and non-square VPDU sizes, which restricts the efficiency of intra block copy (IBC) buffer design and coding efficiency.

Innovation Solution

The proposed solution involves modifying the IBC buffer design to accommodate larger CTU sizes up to 256x256, allowing the IBC buffer width and height to be multiples of the CTU dimensions, and using block vectors with direction parameters that depend on the size parameters, enabling efficient intra block copy operations across larger video units.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the IBC buffer is designed to support larger CTU sizes (up to 256x256), then the coding efficiency is improved, but the device complexity increases

Engineering Contradiction:
Improvecoding efficiencyVSAvoidIBC buffer design complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The IBC buffer design is made dynamic by allowing the buffer width and height to be configurable as multiples of CTU dimensions. This enables the buffer to adapt its size based on the specific CTU configuration being processed, supporting both standard and larger CTU sizes without requiring a completely different buffer architecture for each case.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The IBC buffer is designed with multi-functionality to handle various CTU sizes (including 256x256 and non-square configurations) and VPDU sizes within a single unified framework. The buffer can serve different purposes depending on the mode and size parameters, eliminating the need for separate specialized buffers for each CTU size category.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If non-square CTU sizes and non-square VPDU sizes are supported, then the adaptability is improved, but the device complexity increases

Engineering Contradiction:
ImproveCTU size flexibilityVSAvoidbuffer design complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The buffer design parameters (width and height) are made variable and configurable rather than fixed. The buffer dimensions can be adjusted as multiples of the CTU dimensions, allowing the system to accommodate non-square CTU sizes and different VPDU configurations by simply changing the buffer parameter values rather than restructuring the entire buffer architecture.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If block vectors with direction parameters dependent on size parameters are used, then the coding efficiency is improved, but the measurement precision requirements increase

Engineering Contradiction:
Improveintra block copy efficiencyVSAvoidblock vector parameter precision
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The block vector representation uses local quality by applying different precision requirements to different components based on their significance. The direction parameters have reduced precision requirements when they depend on size parameters, as the size information itself provides contextual precision. This allows efficient representation where full precision is only applied where absolutely necessary.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20240340413A1Method, apparatus, and medium for video processing
Publication Date: 2024.10.10 BYTEDANCE INC
  • US20240340413A1 patent drawing
  • US20240340413A1 patent drawing
  • US20240340413A1 patent drawing

AI summary

Embodiments of the disclosure provide a solution for video processing. A method for video processing is proposed. The method includes: determining, during a conversion between a video unit of a video and a bitstream of the video, a first reference area for intra block copy (IBC) of the video unit based on a second reference area for intra template matching, the video unit being applied with an IBC mode; determining a block vector for the video unit in the first reference area; and performing the conversion based on the block vector.