Intra Block Copy Buffer Resetting for Valid Block Vectors
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current video coding technologies face challenges in efficiently managing buffers and block vectors for intra block copy mode, leading to complex processing, invalid block vectors, inefficient coding, and unclear handling of CTU sizes smaller than 128x128, particularly in screen content coding.
Innovation Solution
Implementing a buffer management system that stores reconstructed samples for intra block copy mode, performs conversions based on motion information without referencing a reference picture, and handles block vectors within a defined video region, with mechanisms for initializing, updating, and resetting buffers to optimize video processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If a buffer is used to store reference samples for intra block copy mode, then prediction accuracy is improved, but buffer management complexity increases
Solution Approach 1:
The buffer management system performs self-initialization by automatically setting reference samples to a predetermined value (e.g., zero) when the buffer is empty, without requiring external intervention or complex management logic. This self-service mechanism simplifies buffer management while maintaining prediction accuracy.
Solution Approach 2:
The buffer is pre-initialized with a predetermined value before being used to store reference samples. This preliminary action ensures that when the buffer is first accessed or when reference samples are stored, the buffer is already in a known state, eliminating the need for complex initialization logic during operation.
2Reliability
If buffer resetting is implemented at video boundary, then invalid block vector issues are reduced, but processing complexity increases
Solution Approach 1:
The buffer is reset periodically at video boundaries (e.g., at the start of each picture or slice). This periodic resetting ensures that the buffer is in a known state when processing new video segments, preventing invalid block vector issues without requiring continuous monitoring or complex control logic.
Solution Approach 2:
The buffer is reset in advance at video boundaries before processing new reference samples. This preliminary action ensures that the buffer is cleared of stale data before new video content is processed, preventing invalid block vector issues while using a simple, predictable timing mechanism.
3Productivity
If reconstructed samples are stored before loop filtering, then coding efficiency is improved, but sample quality deteriorates
Solution Approach 1:
The system dynamically selects whether to apply loop filtering to reference samples based on the prediction mode. For intra block copy mode, loop filtering is disabled to preserve sample quality for accurate prediction, while other modes can benefit from filtering. This dynamic approach balances coding efficiency and sample quality based on specific processing needs.
4Ease of manufacture
If block vectors are constrained within video region, then encoding simplicity is improved, but prediction flexibility deteriorates
Solution Approach 1:
Different constraints are applied to block vectors based on their location and the prediction mode being used. For intra block copy mode, block vectors are constrained to point within the same picture to simplify encoding, while inter-picture prediction allows greater flexibility. This local differentiation maintains encoding simplicity where needed while preserving flexibility where beneficial.
Data Source
AI summary
A method of visual media processing includes determining a size of a buffer to store reference samples for prediction in an intra block copy mode, and performing a conversion between a current video block of visual media data and a bitstream of the current video block using the reference samples stored in the buffer. The conversion is performed in the intra block copy mode, which is based on motion information related to a reconstructed block located in same video region with the current video block without referring to a reference picture.


