# US 11,451,779 B2 · Scaling list signalling for video coding

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,451,779 B2
- Document ID: US11451779B2
- Status: Granted
- Kind: B2
- Application number: 17/191,413
- Filed: 2021-03-03
- Published: 2021-09-09
- Granted: 2022-09-20
- Earliest claimed: 2020-03-05
- Assignees: QUALCOMM Incorporated
- Applicants: QUALCOMM Incorporated
- Inventors: Adarsh Krishnan Ramasubramonian; Bappaditya Ray; Luong Pham Van; Geert Van der Auwera; Marta Karczewicz
- Web page: https://patentgrep.com/patent/US11451779B2

## CPC

- H04N 19/124: Quantisation
- H04N 19/103: Selection of coding mode or of prediction mode
- H04N 19/136: Incoming video signal characteristics or properties
- H04N 19/176: the region being a block, e.g. a macroblock
- H04N 19/18: the unit being a set of transform coefficients
- H04N 19/186: the unit being a colour or a chrominance component
- H04N 19/30: using hierarchical techniques, e.g. scalability (H04N19/63 takes precedence)
- H04N 19/463: by compressing encoding parameters before transmission
- H04N 19/70: characterised by syntax aspects related to video coding, e.g. related to compression standards
- H04N 19/126: Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
- H04N 19/157: Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N 19/159: Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A video decoder can be configured to determine that a new scaling list for a set of scaling lists is to be predicted from a reference scaling list, wherein the new scaling list corresponds to a new scaling matrix; receive a syntax element that identifies an ID number corresponding to a scaling list of the set of scaling lists that is to be used as the reference scaling list; determine that the set of scaling lists does not include a scaling list with the ID number; and in response to determining that the set of scaling lists does not include the scaling list with the ID number, determine the new scaling matrix based on a set of default values.

## Claims

### Claim 1

A method of decoding video data, the method comprising:
determining a set of scaling lists for the video data, wherein each scaling list of the set of scaling lists is used to determine an associated scaling matrix in a set of scaling matrices, and wherein each scaling list and each associated scaling matrix has an associated identification (ID) number;
determining that a new scaling list for the set of scaling lists is to be predicted from a reference scaling list, wherein the new scaling list corresponds to a new scaling matrix;
receiving a syntax element;
determining an ID number based on the syntax element;
determining that the set of scaling lists does not include a scaling list with the ID number, wherein determining that the set of scaling lists does not include the scaling list with the ID number comprises determining that the ID number divided by 3 has a remainder of 0 or 1;
in response to determining that the set of scaling lists does not include a scaling list with the ID number, determining the new scaling matrix based on a set of default values;
decoding the video data based on the new scaling matrix; and
outputting the decoded video data.

### Claim 2 (depends on 1)

The method of claim 1, wherein determining the new scaling matrix based on the set of default values comprises:
determining a predicted scaling matrix based on the set of default values;
receiving delta values that represent differences between the predicted scaling matrix and the new scaling matrix; and
determining the new scaling matrix based on the predicted scaling matrix and the delta values.

### Claim 3 (depends on 1)

The method of claim 1, wherein decoding the video data based on the new scaling list comprises:
determining a prediction mode and a block size for a block of the video data;
selecting a scaling matrix, from the set of scaling matrices, for the block based on the prediction mode and the block size;
dequantizing a first transform coefficient of the block using a first scaling value from the selected scaling matrix;
dequantizing a second transform coefficient of the block using a second scaling value from the selected scaling matrix, wherein the second scaling value is different than the first scaling value; and
decoding the video data based on the dequantized first and second transform coefficients.

### Claim 4 (depends on 3)

The method of claim 3, wherein decoding the video data based on the new scaling list comprises:
determining a quantization parameter (QP) value for the block;
dequantizing the first transform coefficient of the block based on the QP value and the first scaling value; and
dequantizing the second transform coefficient of the block based on the QP value and the second scaling value.

### Claim 5 (depends on 1)

The method of claim 1, wherein determining that the set of scaling lists does not include the scaling list with the ID number further comprises:
receiving a syntax element indicating that scaling lists are not included for chroma components.

### Claim 6 (depends on 1)

The method of claim 1, wherein the video data comprises monochrome video data.

### Claim 7 (depends on 1)

The method of claim 1, wherein the video data comprises video data encoded in a separate color plane coding mode.

### Claim 8

A device for decoding video data, the device comprising:
a memory configured to store video data;
one or more processors implemented in circuitry and configured to:
determine a set of scaling lists for the video data, wherein each scaling list of the set of scaling lists is used to determine an associated scaling matrix in a set of scaling matrices, and wherein each scaling list and each associated scaling matrix determined has an associated identification (ID) number;
determine that a new scaling list for the set of scaling lists is to be predicted from a reference scaling list, wherein the new scaling list corresponds to a new scaling matrix;
receive a syntax element;
determine an ID number based on the syntax element;
determine that the set of scaling lists does not include a scaling list with the ID number,. wherein to determine that the set of scaling lists does not include the scaling list with the ID number, the one or more processors are further configured to determine that the ID number divided by 3 has a remainder of 0 or 1;
in response to determining that the set of scaling lists does not include a scaling list with the ID number, determine the new scaling matrix based on a set of default values;
decode the video data based on the new scaling matrix; and
output the decoded video data.

### Claim 9 (depends on 8)

The device of claim 8, wherein to determine the new scaling matrix based on the set of default values, the one or more processors are further configured to:
determine a predicted scaling matrix based on the set of default values;
receive delta values that represent differences between the predicted scaling matrix and the new scaling matrix; and
determine the new scaling matrix based on the predicted scaling matrix and the delta values.

### Claim 10 (depends on 8)

The device of claim 8, wherein to decode the video data based on the new scaling list, the one or more processors are further configured to:
determine a prediction mode and a block size for a block of the video data;
select a scaling matrix, from the set of scaling matrices, for the block based on the prediction mode and the block size;
dequantize a first transform coefficient of the block using a first scaling value from the selected scaling matrix;
dequantize a second transform coefficient of the block using a second scaling value from the selected scaling matrix, wherein the second scaling value is different than the first scaling value; and
decode the video data based on the dequantized first and second transform coefficients.

### Claim 11 (depends on 10)

The device of claim 10, wherein to decode the video data based on the new scaling list, the one or more processors are further configured to:
determine a quantization parameter (QP) value for the block;
dequantize the first transform coefficient of the block based on the QP value and the first scaling value; and
dequantize the second transform coefficient of the block based on the QP value and the second scaling value.

### Claim 12 (depends on 8)

The device of claim 8, wherein to determine that the set of scaling lists does not include the scaling list with the ID number, the one or more processors are further configured to:
receive a syntax element indicating that scaling lists are not included for chroma components.

### Claim 13 (depends on 8)

The device of claim 8, wherein the video data comprises monochrome video data.

### Claim 14 (depends on 8)

The device of claim 8, wherein the video data comprises video data encoded in a separate color plane coding mode.

### Claim 15 (depends on 8)

The device of claim 8, wherein the device comprises a wireless communication device, further comprising a receiver configured to receive encoded video data.

### Claim 16 (depends on 15)

The device of claim 15, wherein the wireless communication device comprises a telephone handset and wherein the receiver is configured to demodulate, according to a wireless communication standard, a signal comprising the encoded video data.

### Claim 17 (depends on 8)

The device of claim 8, further comprising:
a display configured to display decoded video data.

### Claim 18 (depends on 8)

The device of claim 8, wherein the device comprises one or more of a camera, a computer, a mobile device, a broadcast receiver device, or a set-top box.

### Claim 19

A computer-readable storage medium storing instructions that when executed by one or more processors cause the one or more processors to:
determine a set of scaling lists for the video data, wherein each scaling list of the set of scaling lists is used to determine an associated scaling matrix in a set of scaling matrices, and wherein each scaling list and each associated scaling matrix determined has an associated identification (ID) number;
determine that a new scaling list for the set of scaling lists is to be predicted from a reference scaling list, wherein the new scaling list corresponds to a new scaling matrix;
receive a syntax element;
determine an ID number based on the syntax element;
determine that the set of scaling lists does not include a scaling list with the ID number,. wherein to determine that the set of scaling lists does not include the scaling list with the ID number, the instructions cause the one or more processors to determine that the ID number divided by 3 has a remainder of 0 or 1;
in response to determining that the set of scaling lists does not include a scaling list with the ID number, determine the new scaling matrix based on a set of default values;
decode the video data based on the new scaling matrix; and
output the decoded video data.

### Claim 20 (depends on 19)

The computer-readable storage medium of claim 19, wherein to determine the new scaling matrix based on the set of default values, the instructions cause the one or more processors to:
determine a predicted scaling matrix based on the set of default values;
receive delta values that represent differences between the predicted scaling matrix and the new scaling matrix; and
determine the new scaling matrix based on the predicted scaling matrix and the delta values.

### Claim 21 (depends on 19)

The computer-readable storage medium of claim 19, wherein to decode the video data based on the new scaling list, the instructions cause the one or more processors to:
determine a prediction mode and a block size for a block of the video data;
select a scaling matrix, from the set of scaling matrices, for the block based on the prediction mode and the block size;
dequantize a first transform coefficient of the block using a first scaling value from the selected scaling matrix;
dequantize a second transform coefficient of the block using a second scaling value from the selected scaling matrix, wherein the second scaling value is different than the first scaling value; and
decode the video data based on the dequantized first and second transform coefficients.

### Claim 22 (depends on 21)

The computer-readable storage medium of claim 21, wherein to decode the video data based on the new scaling list, the instructions cause the one or more processors to:
determine a quantization parameter (QP) value for the block;
dequantize the first transform coefficient of the block based on the QP value and the first scaling value; and
dequantize the second transform coefficient of the block based on the QP value and the second scaling value.

### Claim 23 (depends on 19)

The computer-readable storage medium of claim 19, wherein to determine that the set of scaling lists does not include the scaling list with the ID number, the instructions cause the one or more processors to:
receive a syntax element indicating that scaling lists are not included for chroma components.

### Claim 24 (depends on 19)

The computer-readable storage medium of claim 19, wherein the video data comprises monochrome video data.

### Claim 25 (depends on 19)

The computer-readable storage medium of claim 19, wherein the video data comprises video data encoded in a separate color plane coding mode.

### Claim 26

A device for decoding video data, the device comprising:
a memory configured to store video data;
one or more processors implemented in circuitry and configured to:
determine a set of scaling lists for the video data, wherein each scaling list of the set of scaling lists is used to determine an associated scaling matrix in a set of scaling matrices, and wherein each scaling list and each associated scaling matrix determined has an associated identification (ID) number;
determine that a new scaling list for the set of scaling lists is to be predicted from a reference scaling list, wherein the new scaling list corresponds to a new scaling matrix;
receive a syntax element;
determine an ID number based on the syntax element;
determine that the set of scaling lists does not include a scaling list with the ID number, wherein to determine that the set of scaling lists does not include the scaling list with the ID number, the one or more processors are further configured to determine that the video data is coded without chroma components and determine that the ID number corresponds to a scaling list for a chroma component;
in response to determining that the set of scaling lists does not include a scaling list with the ID number, determine the new scaling matrix based on a set of default values;
decode the video data based on the new scaling matrix; and
output the decoded video data.

### Claim 27 (depends on 26)

The device of claim 26, wherein the video data comprises monochrome video data.
