IP Library Granted Patent US 12695867
Granted Patent B2
US 12695867 · App. 18/047,877 · Granted Jul 28, 2026

Generalized sample offset

Inventors: Xin Zhao (Santa Clara, CA); Madhu Perringassery Krishnan (Mountain View, CA); Liang Zhao (Sunnyvale, CA); Shan Liu (San Jose, CA)
Assignee: TENCENT AMERICA LLC
H04N19/117H04N19/172H04N19/184H04N19/44
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12695867
App. No.
18/047,877
Granted
Jul 28, 2026
Kind
B2
Abstract

This disclosure relates to adaptive loop filtering (ALF) for cross-component sample offset (CCSO) and local sample offset (LSO). ALF uses reconstructed samples of a first color component as input (e.g., Y or Cb or Cr). For CCSO, the output is applied on a second color component which is a different color component of the first color component. For LSO, the output is applied on the first color component. A combined ALF may be generalized for CCSO and LSO by considering a delta value between neighboring samples of a collocated (or current) sample and also considering a level value of the collocated (or current) sample.

Claims (55)

1 . A method for video decoding, the method comprising:

receiving a video bitstream corresponding to a plurality of pictures, including a current picture;

selecting, based on a first flag in the video bitstream, a sample offset filter for a current sample of the current picture, wherein the sample offset filter is one of a local sample offset (LSO) and a cross-component sample offset (CCSO), and wherein the first flag indicates whether the sample offset filter is applied for one or multiple color components;

selecting, based on a second flag in the video bitstream, an offset type to be used with the sample offset filter, wherein the second flag indicates whether a gradient offset (GO) is applied jointly with a band offset (BO), and wherein the BO is applied regardless of whether the GO is applied;

when the second flag indicates that the GO is applied jointly with the BO and the selected sample offset filter is CCSO, deriving an offset for the sample offset filter using:

a first delta value between neighboring samples and a co-located sample of a different color component; and

a value of the co-located sample of the different color component;

when the second flag indicates that the GO is applied jointly with the BO and the selected sample offset filter is LSO, deriving the offset for the sample offset filter using:

a second delta value between neighboring samples and the current sample; and

a value of the current sample; and

determining an output value of the sample offset filter based on the current sample.

2 . The method of claim 1 , further comprising:

determining a filtered sample value based on the current sample and the output value of the sample offset filter.

3 . The method of claim 1 , wherein the second flag is signaled via a high level syntax transmitted in a slice header, picture header, frame header, superblock header, coding tree unit (CTU) header, or tile header.

4 . The method of claim 1 , wherein the second flag is signaled via a block level transmission in a coding unit level, prediction block level, transform block level, or filtering unit level.

5 . A computing system, comprising:

control circuitry;

memory; and

one or more sets of instructions stored in the memory and configured for execution by the control circuitry, the one or more sets of instructions comprising instructions for:

receiving video data comprising a current picture;

selecting a sample offset filter for a current sample of the current picture, wherein the sample offset filter is one of a local sample offset (LSO) and a cross-component sample offset (CCSO);

determining that a band offset (BO) is to be applied with the sample offset filter;

determining whether a gradient offset (GO) is to be applied jointly with the BO;

when the GO and BO are to be jointly applied and the selected sample offset filter is CCSO, deriving an offset for the sample offset filter using:

a first delta value between neighboring samples and a co-located sample of a different color component; and

a value of the co-located sample of the different color component;

when the GO and BO are to be jointly applied and the selected sample offset filter is LSO, deriving the offset for the sample offset filter using:

a second delta value between neighboring samples and the current sample; and

a value of the current sample;

signaling a first flag indicating whether the sample offset filter is applied for one or multiple color components; and

signaling a second flag indicating whether the GO is jointly applied with the BO.

6 . The computing system of claim 5 , wherein the one or more sets of instructions further comprise instructions for determining a filtered sample value based on the current sample and an output value of the sample offset filter.

7 . The computing system of claim 5 , wherein the second flag is signaled via a high level syntax.

8 . The computing system of claim 5 , wherein the second flag is signaled via a block level syntax.

9 . A non-transitory computer-readable storage medium storing one or more instructions and a video bitstream that is generated by a video encoding method, the instructions, when executed by a processor, cause a computing system to perform the video encoding method, the video bitstream comprising:

encoded information for a plurality of pictures, including a current picture;

a first flag indicating a sample offset filter to be applied for a current sample of the current picture, wherein the sample offset filter is one of a local sample offset (LSO) and a cross-component sample offset (CCSO), and wherein the first flag indicates whether the sample offset filter is applied for one or multiple color components;

a second flag indicating whether a gradient offset (GO) is applied jointly with a band offset (BO), and wherein the BO is applied regardless of whether the GO is applied; and

wherein, when the GO and BO are to be jointly applied and the selected sample offset filter is CCSO, the video encoding method comprises deriving an offset for the sample offset filter using:

a first delta value between neighboring samples and a co-located sample of a different color component; and

a value of the co-located sample of the different color component; and

wherein, when the GO and BO are to be jointly applied and the selected sample offset filter is LSO, the video encoding method comprises deriving the offset for the sample offset filter using:

a second delta value between neighboring samples and the current sample; and

a value of the current sample.

10 . The non-transitory computer-readable storage medium of claim 9 , wherein the first flag is in a high level syntax of the video bitstream.

11 . The non-transitory computer-readable storage medium of claim 9 , wherein the first flag is in a block level syntax of the video bitstream.

12 . The non-transitory computer-readable storage medium of claim 9 , wherein, when the GO is not to be jointly applied with the BO, the video encoding method comprises deriving the offset for the sample offset filter using only the BO.

13 . The non-transitory computer-readable storage medium of claim 9 , wherein the second flag is in a high level syntax of the video bitstream.

14 . The non-transitory computer-readable storage medium of claim 9 , wherein the second flag is in a block level syntax of the video bitstream.

15 . The method of claim 1 , wherein, when the second flag indicates that the GO is not applied jointly with the BO, the method further comprises deriving the offset for the sample offset filter using only the BO.

16 . The method of claim 1 , wherein the first flag is signaled via a high level syntax.

17 . The method of claim 1 , wherein the first flag is signaled via a sequence parameter set, picture parameter set, or video parameter set.

18 . The computing system of claim 5 , wherein, when the GO is not to be jointly applied with the BO, the one or more sets of instructions further comprise instructions for deriving the offset for the sample offset filter using only the BO.

19 . The computing system of claim 5 , wherein the first flag is signaled via a sequence parameter set, picture parameter set, or video parameter set.

20 . The computing system of claim 5 , wherein the second flag is signaled via a sequence parameter set, picture parameter set, or video parameter set.