# US 11,310,529 B2 · Mode-dependent joint component transform

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

- Number: US 11,310,529 B2
- Document ID: US11310529B2
- Status: Granted
- Kind: B2
- Application number: 17/061,829
- Filed: 2020-10-02
- Published: 2021-12-02
- Granted: 2022-04-19
- Earliest claimed: 2020-05-27
- Assignees: Tencent America LLC
- Applicants: Tencent America LLC
- Inventors: Xin Zhao; Madhu Peringassery Krishnan; Shan Liu; Xiang Li
- Web page: https://patentgrep.com/patent/US11310529B2

## CPC

- H04N 19/60: using transform coding
- H04N 19/105: Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
- H04N 19/11: among a plurality of spatial predictive coding modes
- H04N 19/12: Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N 19/139: Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
- H04N 19/159: Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
- H04N 19/186: the unit being a colour or a chrominance component
- H04N 19/52: by predictive encoding
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A method, computer program, and computer system is provided for coding video data. Video data is received and entropy-parsed into one or more components. The one or more entropy-parsed components are de-quantized. A joint component secondary transformation (JCST) is performed on the one or more components. The video data is decoded based on one or more residual components corresponding to the joint component secondary transformed components.

## Claims

### Claim 1

A method for coding video data, executable by a processor, comprising:
receiving video data;
entropy-parsing the received video data into one or more components;
de-quantizing the one or more entropy-parsed components;
performing a joint component secondary transformation (JCST) on the one or more components; and
decoding the video data based on one or more residual components corresponding to the joint component secondary transformed components.

### Claim 2 (depends on 1)

The method of claim 1, wherein a JCST kernel is selected based on a prediction mode corresponding to the video data.

### Claim 3 (depends on 2)

The method of claim 2, wherein the JCST kernel is applied based on an intra prediction mode associated with the video data.

### Claim 4 (depends on 3)

The method of claim 3, wherein the intra prediction mode comprises one or more from among DC, SMOOTH_H, SMOOTH_V, directional modes, Paeth predictor, and filtering modes.

### Claim 5 (depends on 3)

The method of claim 3, wherein the JCST kernel is applied based on a nominal intra prediction modes.

### Claim 6 (depends on 3)

The method of claim 3, wherein JCST is disabled based on the intra prediction mode.

### Claim 7 (depends on 6)

The method of claim 6, wherein the intra prediction mode comprises one or more from among chroma-from-luma mode and Paeth Predictor.

### Claim 8 (depends on 2)

The method of claim 2, wherein different JCST kernels are applied for intra and inter prediction modes.

### Claim 9 (depends on 2)

The method of claim 2, wherein the JCST kernel is applied based on an Intra Block Copy mode.

### Claim 10 (depends on 2)

The method of claim 2, wherein the JCST kernel is applied based on a Palette mode.

### Claim 11 (depends on 2)

The method of claim 2, wherein the JCST kernel is applied based on different inter prediction modes.

### Claim 12 (depends on 2)

The method of claim 2, wherein the JCST is applied based on motion information.

### Claim 13 (depends on 12)

The method of claim 12, wherein the JCST kernels is dependent on whether a motion vector predictor comes from a top, a left, or a temporal motion vector predictor candidate.

### Claim 14 (depends on 12)

The method of claim 12, wherein the JCST kernel is dependent on a magnitude of the motion vector.

### Claim 15 (depends on 12)

The method of claim 12, wherein the JCST kernel is dependent on a direction of the motion vector.

### Claim 16 (depends on 1)

The method of claim 1, wherein a JCST kernel is dependent on a primary transform type selected for a current block associated with the video data.

### Claim 17 (depends on 16)

The method of claim 16, wherein the JCST kernel is applied based on a primary transform being applied on color components associated with the video data applying JCST.

### Claim 18 (depends on 1)

The method of claim 1, wherein a JCST kernel is dependent on a secondary transform kernel selected for a current block associated with the video data.

### Claim 19

A computer system for coding video data, the computer system comprising:
one or more computer-readable non-transitory storage media configured to store computer program code; and
one or more computer processors configured to access said computer program code and operate as instructed by said computer program code, said computer program code including:
receiving code configured to cause the one or more computer processors to receive video data;
entropy-parsing code configured to cause the one or more computer processors to entropy-parse the received video data into one or more components;
de-quantizing code configured to cause the one or more computer processors to de-quantize the one or more entropy-parsed components;
performing code configured to cause the one or more computer processors to perform a joint component secondary transformation (JCST) on the one or more components; and
decoding code configured to cause the one or more computer processors to decode the video data based on one or more residual components corresponding to the joint component secondary transformed components.

### Claim 20

A non-transitory computer readable medium having stored thereon a computer program for coding video data, the computer program configured to cause one or more computer processors to:
receive video data;
entropy-parse the received video data into one or more components;
de-quantize the one or more entropy-parsed components;
perform a joint component secondary transformation (JCST) on the one or more components; and
decode the video data based on one or more residual components corresponding to the joint component secondary transformed components.
