IP Library Granted Patent US 12,556,704
Granted Patent B2
US 12,556,704 · App. 18/920,094 · Granted Feb 17, 2026

Control and use of chroma quantization parameter values

Inventors: Gary J. Sullivan (Bellevue, WA); Sandeep Kanumuri (Redmond, WA)
Assignee: Microsoft Technology Licensing, LLC
H04N19/124H04N19/126H04N19/174H04N19/186H04N19/44H04N19/70H04N19/146
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 12,556,704
App. No.
18/920,094
Granted
Feb 17, 2026
Kind
B2
Abstract

Innovations in control and use of chroma quantization parameter (“QP”) values that depend on luma QP values. More generally, the innovations relate to control and use of QP values for a secondary color component that depend on QP values for a primary color component. For example, during encoding, an encoder determines a QP index from a primary component QP and secondary component QP offset. The encoder maps the QP index to a secondary component QP, which has an extended range. The encoder outputs at least part of a bitstream including the encoded content. A corresponding decoder receives at least part of a bitstream including encoded content. During decoding, the decoder determines a QP index from a primary component QP and secondary component QP offset, then maps the QP index to a secondary component QP, which has an extended range.

Claims (86)

1 . In a computer system that implements a video encoder, a method comprising:

determining a chroma bit depth, wherein the chroma bit depth is greater than 8;

determining a chroma quantization parameter (QP) range offset, wherein the chroma QP range offset is greater than 0;

encoding a picture for which values of QP vary according to a relationship between a luma component and chroma components, wherein the encoding the picture includes:

quantizing transform coefficients for one or more portions of a slice of the picture for a given chroma component among the chroma components;

reconstructing the one or more portions of the slice, including:

inverse quantizing the transform coefficients for the one or more portions of the slice for the given chroma component based at least in part on a chroma QP for the given chroma component; and

performing deblock filtering on at least part of the slice, including:

determining a filter strength parameter for chroma deblock filtering for the given chroma component, wherein an intermediate value of the filter strength parameter is scaled by a factor that depends on the chroma bit depth; and

performing deblock filtering across an edge for the given chroma component based at least in part the filter strength parameter; and

outputting encoded data as part of a bitstream, wherein the encoded data includes results of the encoding the picture, a syntax element that indicates the chroma bit depth, and a syntax element that indicates the picture-level chroma QP offset.

2 . The method of claim 1 , wherein the syntax element that indicates the chroma bit depth indicates a value of the chroma bit depth minus 8.

3 . The method of claim 1 , wherein the chroma QP range offset is the syntax element that indicates the chroma bit depth multiplied by 6.

4 . The method of claim 1 , wherein the chroma QP range offset is 6 or 12.

5 . The method of claim 1 , wherein the chroma QP range offset indicates a lower limit of a range for an intermediate index variable during the when determining the chroma QP for the given chroma component.

6 . The method of claim 1 , wherein the chroma QP range offset is added to an intermediate value of the chroma QP when determining the chroma QP for the given chroma component.

7 . The method of claim 1 , wherein the factor that depends on the chroma bit depth is 1<< (BitDepthC−8), and wherein BitDepthC represents the chroma bit depth.

8 . A computing device comprising one or more processing units and memory, wherein the computing device implements a video decoder configured to perform operations comprising:

receiving encoded data in at least part of a bitstream, wherein the encoded data includes a syntax element that indicates a chroma bit depth and a syntax element that indicates a picture-level chroma quantization parameter (QP) offset; and

decoding the encoded data, including:

determining the chroma bit depth using the syntax element that indicates the chroma bit depth, wherein the chroma bit depth is greater than 8;

determining a chroma QP range offset using the syntax element that indicates the chroma bit depth, wherein the chroma QP range offset is greater than 0;

reconstructing a slice of a picture for which values of QP vary according to a relationship between a luma component and chroma components, including:

inverse quantizing transform coefficients for one or more portions of the slice for a given chroma component, among the chroma components, based at least in part on a chroma QP for the given chroma component; and

performing deblock filtering on at least part of the slice, including:

determining a filter strength parameter for chroma deblock filtering for the given chroma component, wherein an intermediate value of the filter strength parameter is scaled by a factor that depends on the chroma bit depth; and

performing deblock filtering across an edge for the given chroma component based at least in part the filter strength parameter.

9 . The computing device of claim 8 , wherein the syntax element that indicates the chroma bit depth indicates a value of the chroma bit depth minus 8.

10 . The computing device of claim 8 , wherein the determining the chroma QP range offset includes multiplying the syntax element that indicates the chroma bit depth by 6.

11 . The computing device of claim 8 , wherein the chroma QP range offset is 6 or 12.

12 . The computing device of claim 8 , wherein the determining the filter strength parameter is performed separately for the given chroma component and for another chroma component among the chroma components.

13 . The computing device of claim 8 , wherein the chroma QP range offset indicates a lower limit of a range for an intermediate index variable when determining the chroma QP for the given chroma component.

14 . The computing device of claim 8 , wherein the chroma QP range offset is added to an intermediate value of the chroma QP when determining the chroma QP for the given chroma component.

15 . The computing device of claim 8 , wherein the factor that depends on the chroma bit depth is 1<< (BitDepthC−8), and wherein BitDepthC represents the chroma bit depth.

16 . The computing device of claim 8 , wherein the determining the filter strength parameter includes determining a QP index for the chroma deblock filtering using the picture-level chroma QP offset and an average of luma QP values for blocks on either side of the edge, and wherein the determining the QP index includes:

determining the average, wherein the determining the average includes adding the luma QP values for the blocks on either side of the edge and right shifting by 1 bit; and

adding the picture-level chroma QP offset.

17 . The computing device of claim 8 , wherein determining the chroma QP uses a given table, and wherein the determining the filter strength parameter for chroma deblock filtering of the given chroma component also uses the given table.

18 . The computing device of claim 17 , wherein the given table is:

qP I

QP C

<30

= qP I

30

29

31

30

32

31

33

32

34

33

35

33

36

34

37

34

38

35

39

35

40

36

41

36

42

37

43

37

>43

= qP I -6

wherein qP I represents a QP index, and wherein QP C represents the intermediate variable.

19 . One or more non-transitory computer-readable media having stored thereon encoded data in at least part of a bitstream, wherein the encoded data includes a syntax element that indicates a chroma bit depth and a syntax element that indicates a picture-level chroma quantization parameter (QP) offset, and wherein the encoded data is organized to facilitate decoding, with a computing device that implements a video decoder, by operations comprising:

determining the chroma bit depth using the syntax element that indicates the chroma bit depth, wherein the chroma bit depth is greater than 8;

determining a chroma QP range offset using the syntax element that indicates the chroma bit depth, wherein the chroma QP range offset is greater than 0;

reconstructing a slice of a picture for which values of QP vary according to a relationship between a luma component and chroma components, including:

inverse quantizing transform coefficients for one or more portions of the slice for a given chroma component, among the chroma components, based at least in part on a chroma QP for the given chroma component; and

performing deblock filtering on at least part of the slice, including:

determining a filter strength parameter for chroma deblock filtering for the given chroma component, wherein an intermediate value of the filter strength parameter is scaled by a factor that depends on the chroma bit depth; and

performing deblock filtering across an edge for the given chroma component based at least in part the filter strength parameter.

20 . The one or more computer-readable media of claim 19 , wherein:

the syntax element that indicates the chroma bit depth indicates a value of the chroma bit depth minus 8;

the chroma QP range offset includes multiplying the syntax element that indicates the chroma bit depth by 6; and

the chroma QP range offset is 6 or 12.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 3, 2025
From: SULLIVAN, GARY J.; KANUMURI, SANDEEP
To: MICROSOFT CORPORATION
Reel/Frame 069742/0167 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 3, 2025
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 069855/0443 →
Continuity (8)
Continuation 17953145 · Sep 26, 2022
Continuation 17145535 · Jan 11, 2021
Continuation 16600287 · Oct 11, 2019
Continuation 16277704 · Feb 15, 2019
Continuation 15202933 · Jul 6, 2016
Division 13732356 · Dec 31, 2012
Provisional Application 61667381 · Jul 2, 2012
Related Publication 20250047850A1 · Feb 6, 2025
References Cited (24)
US 20060050784A1 · Lappalainen · 2006 [cited by examiner]
US 20080317377A1 · Saigo · 2008 [cited by examiner]
US 20140003498A1 · Sullivan et al. · 2014 [cited by applicant]
Bross et al., “High Efficiency Video Coding (HEVC) Text Specification Draft 6,” JCTVC-H1003 dK, 259 pp. (Feb. 2012). [cited by applicant]
Bross et al., “High Efficiency Video Coding (HEVC) Text Specification Draft 7,” Joint Collaborative Team on Video Coding, JCTVC-11003_d5, 294 pp. (Apr. 2012). [cited by applicant]
Bross et al., “High Efficiency Video Coding (HEVC) Text Specification Draft 8,” Joint Collaborative Team on Video Coding, JCTVC-J1003_d7, 260 pp. (Jul. 2012). [cited by applicant]
Communication pursuant to Rules 70(2) and 70a(2) EPC and reference to Rule 39(1) EPC dated Jan. 2, 2020, from European Patent Application No. 19190862.3, 2 pp. [cited by applicant]
Communication pursuant to Rules 70(2) and 70a(2) EPC and reference to Rule 39(1) EPC dated May 26, 2025, from European Patent Application No. 25153995.3, 2 pp. [cited by applicant]
Communication pursuant to Rules 70(2) and 70a(2) EPC and reference to Rule 39(1) EPC dated May 26, 2025, from European Patent Application No. 25153992.0, 2 pp. [cited by applicant]
Communication pursuant to Rules 70(2) and 70a(2) EPC and reference to Rule 39(1) EPC dated May 26, 2025, from European Patent Application No. 25153993.8, 2 pp. [cited by applicant]
Corrected Notice of Allowability dated Sep. 5, 2017, from U.S. Appl. No. 15/410,924, 2 pp. [cited by applicant]
Extended European Search Report dated Apr. 17, 2025, from European Patent Application No. 25153992.0, 9 pp. [cited by applicant]
Extended European Search Report dated Apr. 17, 2025, from European Patent Application No. 25153993.8, 9 pp. [cited by applicant]
Extended European Search Report dated Apr. 17, 2025, from European Patent Application No. 25153995.3, 10 pp. [cited by applicant]
Extended European Search Report dated Jul. 23, 2025, from European Patent Application No. 25167617.7, 8 pp. [cited by applicant]
Final Office Action dated May 7, 2025, from U.S. Appl. No. 18/443,139, 10 pp. [cited by applicant]
Notice of Allowance dated Oct. 20, 2016, from U.S. Appl. No. 13/732,369, 8 pp. [cited by applicant]
Notice of Allowance dated May 25, 2017, from U.S. Appl. No. 15/410,924, 12 pp. [cited by applicant]
Notice of Allowance dated May 17, 2018, from U.S. Appl. No. 15/685,278, 8 pp. [cited by applicant]
Notice of Allowance dated Jan. 17, 2019, from U.S. Appl. No. 16/126,176, 11 pp. [cited by applicant]
Notice of Allowance dated Jan. 8, 2020, from U.S. Appl. No. 16/387,857, 10 pp. [cited by applicant]
Notice of Allowance dated Feb. 18, 2025, from U.S. Appl. No. 17/953,145, 5 pp. [cited by applicant]
Notice of Allowance dated Mar. 19, 2025, from U.S. Appl. No. 17/953,090, 5 pp. [cited by applicant]
Notice of Allowance dated Mar. 19, 2025, from U.S. Appl. No. 17/953,120, 5 pp. [cited by applicant]