IP Library › Granted Patent US 11,902,525
Granted Patent B2
US 11,902,525 · App. 17/981,132 · Granted Feb 13, 2024

Adaptive quantization for enhancement layer video coding

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 11,902,525
App. No.
17/981,132
Granted
Feb 13, 2024
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. In a computer system that implements a video encoder, a method comprising:

encoding video for a picture organized in multiple channels, thereby producing encoded data for the video for the picture, the multiple channels including a luma channel and two chroma channels, wherein the encoding the video for the picture includes varying quantization spatially and between the multiple channels of the video for the picture, and wherein the encoding the video for 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;

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 video for the picture, the encoded data for the video for the picture including QP information that indicates multiple QPs that at least in part parameterize the varied quantization of the video for the picture, the QP information further indicating the index for the given chroma channel for the current unit.

2. The method of claim 1 , wherein units of the picture are blocks, and wherein the encoding the video for the picture further includes quantizing transform coefficients of the units of the picture.

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

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

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

6. The method 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 method 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. One or more computer-readable media having stored thereon computer-executable instructions for causing one or more processing units, when programmed thereby, to perform operations, wherein the one or more computer-readable media are selected from the group consisting of volatile memory, non-volatile memory, magnetic disk, CD-ROM, and DVD, the operations comprising:

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

decoding the video for the picture, including varying inverse quantization spatially and between the multiple channels of the video for the picture, wherein the decoding the video for 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;

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.

9. The one or more computer-readable media of claim 8 , wherein units of the picture are blocks, and wherein the decoding the video for the picture further includes performing the inverse quantization on quantized transform coefficients of the units of the picture.

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

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

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

13. The one or more computer-readable media of claim 8 , 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.

14. The one or more computer-readable media of claim 8 , 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.

15. The one or more computer-readable media of claim 8 , wherein the encoded data further includes table information, and wherein the decoding the video for the picture further includes:

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

16. The one or more computer-readable media of claim 15 , 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.

17. One or more computer-readable media having stored thereon encoded data in a bitstream for video for a picture organized in multiple channels, the multiple channels including a luma channel and two chroma channels, the encoded data including quantization parameter (“QP”) information that indicates multiple QPs that at least in part parameterize inverse quantization of the video for the picture, the QP information further indicating an index for a given chroma channel among the two chroma channels for a current unit of the picture, wherein the one or more computer-readable media are selected from the group consisting of volatile memory, non-volatile memory, magnetic disk, CD-ROM, and DVD, and wherein the encoded data is produced by encoding the video for the picture by operations that include varying quantization spatially and between the multiple channels of the video for the picture, the operations further 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;

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 the 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 one or more computer-readable media of claim 17 , wherein the QP information further comprises picture-level information that indicates one or more picture-level QPs for the video for the picture or respective channels of the video for the picture.

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

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

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2022
From: REGUNATHAN, SHANKAR; SUN, SHIJUN; TU, CHENGJIE; LIN, CHIH-LUNG
To: MICROSOFT CORPORATION
Reel/Frame 062082/0432 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2022
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 062082/0466 →
Continuity (6)
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 20230055524A1 · Feb 23, 2023
Cited By (3)
US 12,301,813 US 12,301,814 US 12,301,816