IP Library › Granted Patent US 12,301,816
Granted Patent B2
US 12,301,816 · App. 18/583,487 · Granted May 13, 2025

Determining chroma quantization parameter using index and quantization parameter of spatially neighboring unit

Inventors: Shankar Regunathan (Bellevue, WA); Shijun Sun (Redmond, WA); Chengjie Tu (Sammamish, WA); Chih-Lung Lin (Redmond, WA)
Assignee: Microsoft Technology Licensing, LLC
H04N19/126H04N19/124H04N19/172H04N19/176H04N19/186H04N19/187H04N19/196H04N19/197H04N19/34H04N19/46H04N19/463H04N19/593H04N19/61H04N19/70H04N19/184
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,301,816
App. No.
18/583,487
Granted
May 13, 2025
Kind
B2
Abstract

Techniques and tools for encoding enhancement layer video with quantization that varies spatially and/or between color channels are presented, along with corresponding decoding techniques and tools. For example, an encoding tool determines whether quantization varies spatially over a picture, and the tool also determines whether quantization varies between color channels in the picture. The tool signals quantization parameters for macroblocks in the picture in an encoded bit stream. In some implementations, to signal the quantization parameters, the tool predicts the quantization parameters, and the quantization parameters are signaled with reference to the predicted quantization parameters. A decoding tool receives the encoded bit stream, predicts the quantization parameters, and uses the signaled information to determine the quantization parameters for the macroblocks of the enhancement layer video. The decoding tool performs inverse quantization that can vary spatially and/or between color channels.

Claims (40)

1. A computer system comprising one or more processing units and memory, wherein the computer system implements a video decoder configured to perform operations comprising:

receiving encoded data for a picture organized in multiple channels, the multiple channels including two chroma channels, the encoded data including quantization parameter (“QP”) information that indicates multiple QPs that at least in part parameterize inverse quantization for the picture, the QP information including an index for a given chroma channel among the two chroma channels for a current unit of the picture; and

decoding the encoded data to reconstruct the picture, including varying inverse quantization spatially and between the multiple channels for the picture, wherein the decoding the encoded data to reconstruct the picture includes, for the current unit:

determining a unit-level QP of a spatially neighboring unit, including:

determining whether an actual QP of the spatially neighboring unit is available; and

depending on whether the actual QP of the spatially neighboring unit is available, assigning the actual QP of the spatially neighboring unit to be the unit-level QP of the spatially neighboring unit or substituting another QP as the unit-level QP of the spatially neighboring unit;

determining a predicted QP based at least in part on the unit-level QP of the spatially neighboring unit; and

determining a unit-level QP for the given chroma channel for the current unit based at least in part on the predicted QP and the index for the given chroma channel for the current unit.

2. The computer system of claim 1 , wherein units of the picture are blocks, and wherein the decoding the encoded data to reconstruct the picture further includes performing the inverse quantization on quantized transform coefficients of the units of the picture.

3. The computer system of claim 1 , wherein the QP information further comprises picture-level information that indicates one or more picture-level QPs for the picture or respective channels for the picture.

4. The computer system of claim 3 , wherein the picture-level information includes one or more values signaling that inverse quantization varies between the multiple channels for the picture.

5. The computer system of claim 3 , wherein the picture-level information includes one or more values signaling that inverse quantization varies spatially between units of the picture.

6. The computer system of claim 1 , wherein the spatially neighboring unit is a left unit that is to the left of the current unit, and wherein the determining the predicted QP uses one or more prediction rules based upon the unit-level QP for the left unit.

7. The computer system of claim 1 , wherein the spatially neighboring unit is an above unit that is above the current unit, and wherein the determining the predicted QP uses one or more prediction rules based upon the unit-level QP for the above unit.

8. The computer system of claim 1 , wherein the encoded data further includes table information, and wherein the decoding the encoded data to reconstruct the picture further includes:

filling lookup tables for the two chroma channels based at least in part on the table information.

9. The computer system of claim 8 , wherein the determining the unit-level QP for the given chroma channel for the current unit includes using the index for the given chroma channel for the current unit in a lookup operation in one of the lookup tables.

10. One or more non-transitory computer-readable media having stored thereon computer-executable instructions for causing one or more processing units, when programmed thereby, to perform operations of a computer-implemented video encoder, the operations comprising:

encoding a picture organized in multiple channels, thereby producing encoded data for the picture, the multiple channels including two chroma channels, wherein the encoding the picture includes varying quantization spatially and between the multiple channels for the picture, and wherein the encoding the picture further includes, for a current unit of the picture:

determining a unit-level quantization parameter (“QP”) of a spatially neighboring unit, including:

determining whether an actual QP of the spatially neighboring unit is available; and

depending on whether the actual QP of the spatially neighboring unit is available, assigning the actual QP of the spatially neighboring unit to be the unit-level QP of the spatially neighboring unit or substituting another QP as the unit-level QP of the spatially neighboring unit;

determining a predicted QP based at least in part on the unit-level QP of the spatially neighboring unit; and

encoding a unit-level QP for a given chroma channel among the two chroma channels for the current unit based at least in part on the predicted QP and an index for the given chroma channel for the current unit; and

outputting, as part of a bitstream, the encoded data for the picture, the encoded data for the picture including QP information that indicates multiple QPs that at least in part parameterize the varied quantization, the QP information including the index for the given chroma channel for the current unit.

11. The one or more computer-readable media of claim 10 , wherein units of the picture are blocks, and wherein the encoding the picture further includes quantizing transform coefficients of the units of the picture.

12. The one or more computer-readable media of claim 10 , wherein the QP information further comprises picture-level information that indicates one or more picture-level QPs for the picture or respective channels for the picture.

13. The one or more computer-readable media of claim 12 , wherein the picture-level information includes one or more values signaling that inverse quantization varies between the multiple channels for the picture.

14. The one or more computer-readable media of claim 12 , wherein the picture-level information includes one or more values signaling that inverse quantization varies spatially between units for the picture.

15. The one or more computer-readable media of claim 10 , wherein the spatially neighboring unit is a left unit that is to the left of the current unit, and wherein the determining the predicted QP uses one or more prediction rules based upon the unit-level QP for the left unit.

16. The one or more computer-readable media of claim 10 , wherein the spatially neighboring unit is an above unit that is above the current unit, and wherein the determining the predicted QP uses one or more prediction rules based upon the unit-level QP for the above unit.

17. Computer-readable memory having stored therein encoded data in a bitstream for a picture organized in multiple channels, the multiple channels including two chroma channels, the encoded data including quantization parameter (“QP”) information that indicates multiple QPs that at least in part parameterize inverse quantization for the picture, the QP information including an index for a given chroma channel among the two chroma channels for a current unit of the picture, the encoded data being used by a video decoder, executing computer-executable instructions in a computer system comprising one or more processing units, in operations including, for the current unit:

determining a unit-level QP of a spatially neighboring unit, including:

determining whether an actual QP of the spatially neighboring unit is available; and

depending on whether the actual QP of the spatially neighboring unit is available, assigning the actual QP of the spatially neighboring unit to be the unit-level QP of the spatially neighboring unit or substituting another QP as the unit-level QP of the spatially neighboring unit;

determining a predicted QP based at least in part on the unit-level QP of the spatially neighboring unit; and

determining a unit-level QP for the given chroma channel for the current unit based at least in part on the predicted QP and the index for the given chroma channel for the current unit.

18. The computer-readable memory of claim 17 , wherein the QP information further comprises picture-level information that indicates one or more picture-level QPs for the picture or respective channels for the picture.

19. The computer-readable memory of claim 18 , wherein the picture-level information includes one or more values signaling that inverse quantization varies between the multiple channels for the picture.

20. The computer-readable memory of claim 18 , wherein the picture-level information includes one or more values signaling that inverse quantization varies spatially between units of the picture.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2024
From: REGUNATHAN, SHANKAR; SUN, SHIJUN; TU, CHENGJIE; LIN, CHIH-LUNG
To: MICROSOFT CORPORATION
Reel/Frame 067222/0508 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2024
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 067222/0513 →
Continuity (8)
Continuation 18400662 · Dec 29, 2023
Continuation 17981132 · Nov 4, 2022
Continuation 17404832 · Aug 17, 2021
Continuation 16384704 · Apr 15, 2019
Continuation 15391609 · Dec 27, 2016
Continuation 14307282 · Jun 17, 2014
Continuation 12156864 · Jun 3, 2008
Related Publication 20240195972A1 · Jun 13, 2024
References Cited (62)
US 7602851B2 · Lee · 2009 [cited by examiner]
US 7801383B2 · Sullivan · 2010 [cited by applicant]
US 7974340B2 · Xia et al. · 2011 [cited by applicant]
US 7995649B2 · Zuo et al. · 2011 [cited by applicant]
US 8059721B2 · Chang et al. · 2011 [cited by applicant]
US 8130828B2 · Hsu et al. · 2012 [cited by applicant]
US 8184694B2 · Srinivasan · 2012 [cited by applicant]
US 8189933B2 · Holcomb et al. · 2012 [cited by applicant]
US 8238424B2 · Chang et al. · 2012 [cited by applicant]
US 8243797B2 · Lin et al. · 2012 [cited by applicant]
US 8249145B2 · Chang et al. · 2012 [cited by applicant]
US 8331438B2 · Chang et al. · 2012 [cited by applicant]
US 8422546B2 · Lin et al. · 2013 [cited by applicant]
US 8442337B2 · Zuo et al. · 2013 [cited by applicant]
US 8498335B2 · Holcomb et al. · 2013 [cited by applicant]
US 8503536B2 · Zuo et al. · 2013 [cited by applicant]
US 8576908B2 · Lin et al. · 2013 [cited by applicant]
US 8588298B2 · Srinivasan · 2013 [cited by applicant]
US 8711925B2 · Tu et al. · 2014 [cited by applicant]
US 8767822B2 · Zuo et al. · 2014 [cited by applicant]
US 8897359B2 · Regunathan et al. · 2014 [cited by applicant]
US 9185418B2 · Regunathan et al. · 2015 [cited by applicant]
US 9571840B2 · Regunathan et al. · 2017 [cited by applicant]
US 9967561B2 · Tu et al. · 2018 [cited by applicant]
US 10306227B2 · Regunathan et al. · 2019 [cited by applicant]
US 10602146B2 · Tu et al. · 2020 [cited by applicant]
US 10958907B2 · Tu et al. · 2021 [cited by applicant]
US 11122268B2 · Regunathan et al. · 2021 [cited by applicant]
US 11343503B2 · Tu et al. · 2022 [cited by applicant]
US 11528481B2 · Regunathan et al. · 2022 [cited by applicant]
US 11778186B2 · Tu et al. · 2023 [cited by applicant]
US 11778187B2 · Tu et al. · 2023 [cited by applicant]
US 11843775B2 · Tu et al. · 2023 [cited by applicant]
US 11863749B2 · Tu et al. · 2024 [cited by applicant]
US 11902525B2 · Regunathan et al. · 2024 [cited by applicant]
US 20050013500A1 · Lee et al. · 2005 [cited by applicant]
US 20050259730A1 · Sun · 2005 [cited by applicant]
US 20060018552A1 · Malayath et al. · 2006 [cited by applicant]
US 20060268990A1 · Lin · 2006 [cited by examiner]
US 20070036224A1 · Srinivasan et al. · 2007 [cited by applicant]
US 20070248163A1 · Zuo et al. · 2007 [cited by applicant]
US 20070248164A1 · Zuo et al. · 2007 [cited by applicant]
US 20070258518A1 · Tu et al. · 2007 [cited by applicant]
US 20080240252A1 · He · 2008 [cited by applicant]
US 20080304562A1 · Chang · 2008 [cited by examiner]
US 20110188769A1 · Fuchie et al. · 2011 [cited by applicant]
US 20220248021A1 · Tu et al. · 2022 [cited by applicant]
US 20240163438A1 · Regunathan et al. · 2024 [cited by applicant]
US 20240171745A1 · Regunathan et al. · 2024 [cited by applicant]
US 20240195972A1 · Regunathan et al. · 2024 [cited by applicant]
US 20240195973A1 · Regunathan et al. · 2024 [cited by applicant]
US 20240251082A1 · Regunathan et al. · 2024 [cited by applicant]
Notice of Allowance dated Nov. 29, 2023, from U.S. Appl. No. 17/981,132, 8 pp. [cited by applicant]
Office Action dated Aug. 29, 2024, from U.S. Appl. No. 18/400,662, 15 pp. [cited by applicant]
Office Action dated Sep. 24, 2024, from U.S. Appl. No. 18/583,462, 19 pp. [cited by applicant]
Office Action dated Sep. 24, 2024, from U.S. Appl. No. 18/583,523, 22 pp. [cited by applicant]
Office Action dated Oct. 10, 2024, from U.S. Appl. No. 18/429,224, 10 pp. [cited by applicant]
Summons to Oral Proceedings pursuant to Rule 115(1) EPC dated Jul. 11, 2024, from European Patent Application No. 18187252.4, 2 pp. [cited by applicant]
Notice of Allowance dated Feb. 26, 2025, from U.S. Appl. No. 18/400,662, 8 pp. [cited by applicant]
Notice of Allowance dated Feb. 27, 2025, from U.S. Appl. No. 18/583,462, 8 pp. [cited by applicant]
Notice of Allowance dated Mar. 5, 2025, from U.S. Appl. No. 18/429,224, 8 pp. [cited by applicant]
Notice of Allowance dated Mar. 5, 2025, from U.S. Appl. No. 18/583,523, 8 pp. [cited by applicant]