Coding Tree Block SAO Mode Reuse for Faster Video Encoding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing video compression standards, such as HEVC, require extensive pixel-level processing for both band offset (BO) and edge offset (EO) algorithms in the sample adaptive offset (SAO) technology, leading to increased time consumption in encoding processes.

Innovation Solution

A method and apparatus for determining a sample adaptive offset mode of a coding tree block, which involves obtaining motion vectors and reference frames, calculating thresholds, determining trusted sample adaptive offset modes based on probabilities, and using these modes to reduce the number of pixel-level processing operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If pixel compensation is performed by using SAO technology in both BO mode and EO mode, then the distortion between reconstructed image and original image is reduced, but the time consumption of encoding process is increased

Engineering Contradiction:
Improvedistortion reductionVSAvoidencoding time consumption
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The patent applies preliminary action by calculating probabilities of SAO mode enablement for referenced coding tree blocks before final encoding decisions. The system pre-calculates first probabilities for all coding tree blocks in preset directions of referenced blocks, and second probabilities for the current block, then uses these pre-computed probabilities to make trust decisions. This preliminary probability calculation avoids performing full pixel-level SAO processing when not needed, thereby reducing encoding time while maintaining distortion reduction benefits when SAO is actually applied.

Inventive Principle:
Principle #10Preliminary action

2Manufacturing precision

If BO information is calculated for each coding tree block in BO mode, then pixel compensation accuracy is improved, but the complexity of processing is increased

Engineering Contradiction:
Improvepixel compensation accuracyVSAvoidprocessing complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent applies local quality by making SAO processing decisions specific to each coding tree block based on its local probability characteristics. Instead of uniformly applying BO or EO mode across the entire image, the system calculates separate probabilities for each block and makes localized decisions about whether to trust referenced blocks' SAO modes. This localized probability-based approach reduces overall processing complexity while maintaining high pixel compensation accuracy where needed.

Inventive Principle:
Principle #3Local quality

3Measurement precision

If EO information in four directions is calculated for each coding tree block in EO mode, then edge detection precision is improved, but the quantity of computation is increased

Engineering Contradiction:
Improveedge detection precisionVSAvoidcomputation quantity
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent applies partial action by selectively performing EO processing only for coding tree blocks where the probability indicates it is beneficial. Instead of calculating EO information in all four directions for every block, the system uses probability thresholds to determine which blocks require full EO processing. This partial processing approach maintains edge detection precision for blocks that need it while significantly reducing the total computation quantity across the entire image.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS12348729B2Determination of sample adaptive offset mode of coding tree block
Publication Date: 2025.07.01 SHANGHAI BILIBILI TECH CO LTD
  • US12348729B2 patent drawing
  • US12348729B2 patent drawing
  • US12348729B2 patent drawing

AI summary

A method for determining a sample adaptive offset mode includes: obtaining a motion vector included in a first coding tree block, and obtaining a reference frame of a video frame of the first coding tree block; obtaining a video resolution and a frame rate, calculating a threshold based on the video resolution and the frame rate; if it is determined that the motion vector is not greater than the threshold, determining a second coding tree block based on the motion vector; determining whether an offset mode is trusted; and if the offset mode is trusted, obtaining offset modes of all second coding blocks, and using obtained all types of offset modes as offset modes of the first coding tree block.