IP Library › Granted Patent US 11,122,268
Granted Patent B2
US 11,122,268 · App. 16/384,704 · Granted Sep 14, 2021

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,122,268
App. No.
16/384,704
Granted
Sep 14, 2021
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 (39)

1. A computer system comprising one or more processing units and memory, wherein the computer system implements an encoding system comprising:

a video encoder configured to encode video for a picture organized in multiple channels, the multiple channels including a luma channel and two chroma channels, wherein the video encoder is configured to:

vary quantization spatially and between the multiple channels of the video for the picture; and

for a current unit of the video for the picture, predict a unit-level quantization parameter (“QP”) for the current unit using multiple unit-level QPs for spatially neighboring units; and

a buffer configured to store, for output in a bitstream, the encoded video for the picture, the encoded 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 including the unit-level QP for the current unit signaled as a differential QP relative to the predicted unit-level QP for the current unit.

2. The computer system of claim 1 , wherein the units are blocks, and wherein the video encoder is further configured to determine whether to use spatial quantization variation between the blocks of the video for the picture based at least in part on a user setting that controls speed and complexity of the encoding.

3. The computer system of claim 1 , wherein the units are blocks, and wherein the video encoder is further configured to determine whether to use spatial quantization variation between the blocks of the video for the picture based at least in part on analysis of complexity and spatial variance of the video for the picture.

4. The computer system of claim 1 , wherein the video encoder is further configured to perform the quantization on transform coefficients of units of the video for the picture.

5. 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 video for the picture or respective channels of the video for the picture.

6. The computer system of claim 1 , wherein the spatially neighboring units include a left unit that is to the left of the current unit and an above unit that is above the current unit, and wherein, to predict the unit-level QP for the current unit, the video encoder is configured to use one or more prediction rules based upon QP for the left unit and QP for the above unit.

7. The computer system of claim 6 , wherein, according to the one or more prediction rules, when the QP for the left unit equals the QP for the above unit, then the predicted unit-level QP for the current unit is the QP for the left unit.

8. The computer system of claim 6 , wherein, according to the one or more prediction rules:

when the QP for the left unit is not available, another QP is substituted for the QP for the left unit; and

when the QP for the above unit is not available, another QP is substituted for the QP for the above unit.

9. The computer system of claim 1 , wherein the units are blocks, and wherein the video encoder is further configured to:

determine whether to use spatial quantization variation between the blocks of the video for the picture; and

determine whether to use quantization variation between channels; and wherein the encoded video further includes:

information that indicates whether the spatial quantization variation is used between the blocks of the video for the picture; and

information that indicates whether the quantization variation between channels is used.

10. 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 including a differential QP for a unit-level QP for a current unit of the video for 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 organized to facilitate decoding the video for the picture by operations that include varying inverse quantization spatially and between the multiple channels of the video for the picture, the operations further including, for the current unit:

predicting the unit-level QP for the current unit using multiple unit-level QPs for spatially neighboring units; and

combining the predicted unit-level QP for the current unit with the differential QP from the bitstream for the current unit.

11. The one or more computer-readable media of claim 10 , wherein the encoded data further includes quantized transform coefficients of the current unit, and wherein the operations further include, for the current unit:

performing the inverse quantization on the quantized transform coefficients of the current unit.

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 video for the picture or respective channels of the video for the picture.

13. The one or more computer-readable media of claim 10 , wherein the spatially neighboring units include a left unit that is to the left of the current unit and an above unit that is above the current unit, and wherein the predicting the unit-level QP for the current unit uses one or more prediction rules based upon QP for the left unit and QP for the above unit.

14. In a computing device that implements a video decoder, a method comprising:

receiving 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 including a differential QP for a unit-level QP for a current unit of the video for 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, and further including for the current unit:

predicting the unit-level QP for the current unit using multiple unit-level QPs for spatially neighboring units; and

combining the predicted unit-level QP for the current unit with the differential QP from the bitstream for the current unit.

15. The method of claim 14 , wherein the decoding includes performing the inverse quantization on quantized transform coefficients of units of the video for the picture.

16. The method of claim 14 , 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.

17. The method of claim 14 , wherein the spatially neighboring units include a left unit that is to the left of the current unit and an above unit that is above the current unit, and wherein the predicting the unit-level QP for the current unit uses one or more prediction rules based upon QP for the left unit and QP for the above unit.

18. The method of claim 17 , wherein, according to the one or more prediction rules, when the QP for the left unit equals the QP for the above unit, then the predicted unit-level QP for the current unit is the QP for the left unit.

19. The method of claim 17 , wherein, according to the one or more prediction rules:

when the QP for the left unit is not available, another QP is substituted for the QP for the left unit; and

when the QP for the above unit is not available, another QP is substituted for the QP for the above unit.

20. The method of claim 14 , wherein the units are blocks, wherein the encoded data further includes information in the bitstream that indicates whether spatial quantization variation is used between the blocks of the video for the picture, and wherein the decoding further comprises determining whether to use the spatial quantization variation between the blocks of the video for the picture.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2019
From: REGUNATHAN, SHANKAR; SUN, SHIJUN; TU, CHENGJIE; LIN, CHIH-LUNG
To: MICROSOFT CORPORATION
Reel/Frame 051206/0683 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2019
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 051206/0713 →
Continuity (4)
Continuation 15391609 · Dec 27, 2016
Continuation 14307282 · Jun 17, 2014
Continuation 12156864 · Jun 3, 2008
Related Publication 20190313099A1 · Oct 10, 2019
Cited By (3)
US 12,301,813 US 12,301,814 US 12,301,816