# US 12,003,779 B2 · High level syntax for video coding and decoding

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

- Number: US 12,003,779 B2
- Document ID: US12003779B2
- Status: Granted
- Kind: B2
- Application number: 17/909,160
- Filed: 2021-02-26
- Published: 2023-03-23
- Granted: 2024-06-04
- Earliest claimed: 2020-03-05
- Assignees: Canon Kabushiki Kaisha
- Applicants: Canon Kabushiki Kaisha
- Inventors: Guillaume Laroche; Naël Ouedraogo; Patrice Onno
- Web page: https://patentgrep.com/patent/US12003779B2

## CPC

- H04N 19/70: characterised by syntax aspects related to video coding, e.g. related to compression standards
- H04N 19/117: Filters, e.g. for pre-processing or post-processing (sub-band filter banks H04N19/635)
- 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/174: the region being a slice, e.g. a line of blocks or a group of blocks
- H04N 19/30: using hierarchical techniques, e.g. scalability (H04N19/63 takes precedence)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A method of decoding video data from a bitstream, the bitstream comprising video data corresponding to one or more slices. The bitstream comprises a picture header comprising syntax elements to be used when decoding one or more slices, and a slice header comprising syntax elements to be used when decoding a slice. In the picture header at least one syntax element indicating whether a decoding tool may be used in the picture. When the decoding tool is used in the picture, at least one APS ID related syntax element is parsed for the decoding tool in the picture header. The decoding also comprises parsing, in a slice header, at least one syntax element indicating whether the decoding tool is to be used or not for that slice prior to syntax elements relating to other decoding tools. A bitstream is decoded using said syntax elements.

## Claims

### Claim 1

A method of decoding video data from a bitstream, the bitstream comprising video data corresponding to one or more slices,
wherein the bitstream comprises a picture header comprising syntax elements to be used when decoding a picture including one or more slices, and a slice header comprising syntax elements to be used when decoding a slice, the method comprising:
parsing, from the picture header, at least one syntax element indicating whether a decoding tool of LMCS (Luma Mapping with Chroma Scaling) is enabled for the picture;
when the decoding tool of LMCS is enabled for the picture, parsing, from the picture header, at least one syntax element related to an ID of LMCS APS (Adaptation Parameter Set) for the decoding tool of LMCS;
when the decoding tool of LMCS is enabled for the picture, parsing from a slice header at least one syntax element indicating whether the decoding tool of LMCS is to be used for the slice immediately after a syntax element related to an ID of ALF (Adaptive Loop Filter) APS in the slice header, and prior to syntax elements related to one or more decoding tools; and
decoding the video data from the bitstream using said syntax elements.

### Claim 2 (depends on 1)

The method according to claim 1, wherein the syntax element indicating whether the decoding tool of LMCS is to be used or not is a flag signalling whether the decoding tool of LMCS is to be used for a slice.

### Claim 3

A method of encoding video data into a bitstream, the bitstream comprising video data corresponding to one or more slices,
wherein the bitstream comprises a header comprising syntax elements to be used when decoding a picture including one or more slices, and a slice header comprising syntax elements to be used when decoding a slice, the method comprising:
encoding, in the picture header, at least one syntax element indicating whether a decoding tool of LMCS (Luma Mapping with Chroma Scaling) is enabled for the picture;
when the decoding tool is enabled for the picture, encoding, in the picture header, at least one syntax element related to an ID of LMCS APS (Adaptation Parameter Set) for the decoding tool of LMCS; and
when the decoding tool of LMCS is enabled for the picture, encoding in a slice header at least one syntax element indicating whether the decoding tool of LMCS is to be used for the slice immediately after a syntax element related to an ID of ALF (Adaptive Loop Filter) APS in the slice header, and prior to syntax elements related to one or more decoding tools.

### Claim 4 (depends on 3)

A method according to claim 3, wherein the encoded syntax element indicating whether the decoding tool of LMCS is to be used or not is a flag signalling whether the decoding tool of LMCS is to be used for a slice.

### Claim 5

A device for decoding video data from a bitstream, the bitstream comprising video data corresponding to one or more slices, wherein the bitstream comprises a picture header comprising syntax elements to be used when decoding a picture including one or more slices, and a slice header comprising syntax elements to be used when decoding a slice, the device comprising:
a picture header parser which parses, from the picture header, at least one syntax element indicating whether a decoding tool of LMCS (Luma Mapping with Chroma Scaling) is enabled for the picture, and
when the decoding tool of LMCS is enabled for the picture, parses from the picture header, at least one syntax element related to an ID of LMCS APS (Adaptation Parameter Set) for the decoding tool of LMCS; and
a slice header parser which, when the decoding tool of LMCS is enabled for the picture, parses from a slice header at least one syntax element indicating whether the decoding tool of LMCS is to be used for the slice immediately after a syntax element related to an ID of ALF (Adaptive Loop Filter) APS in the slice header and prior to syntax elements related to one or more decoding tools; and
a decoder which decodes the video data from the bitstream using said syntax elements.

### Claim 6

A device for encoding video data into a bitstream, the bitstream comprising video data corresponding to one or more slices, wherein the bitstream comprises a header comprising syntax elements to be used when decoding a picture including one or more slices, and a slice header comprising syntax elements to be used when decoding a slice, the device comprising:
a picture header encoder which encodes, in the picture header, at least one syntax element indicating whether a decoding tool of LMCS (Luma Mapping with Chroma Scaling) is enabled for the picture, and
when the decoding tool is enabled for the picture, encodes in the picture header, at least one syntax element related to an ID of LMCS APS (Adaptation Parameter Set) for the decoding tool of LMCS; and
a slice header encoder which, when the decoding tool of LMCS is enabled for the picture, encodes in a slice header at least one syntax element indicating whether the decoding tool of LMCS is to be used for the slice immediately after a syntax element related to an ID of ALF (Adaptive Loop Filter) APS in the slice header, and prior to syntax elements related to one or more decoding tools.

### Claim 7

A non-transitory computer readable medium having stored thereon processor executable instructions that, when executed by a processor, cause the processor to perform a method of decoding video data from a bitstream, the bitstream comprising video data corresponding to one or more slices, wherein the bitstream comprises a picture header comprising syntax elements to be used when decoding a picture including one or more slices, and a slice header comprising syntax elements to be used when decoding a slice, the method comprising:
parsing, from the picture header, at least one syntax element indicating whether a decoding tool of LMCS (Luma Mapping with Chroma Scaling) is enabled for the picture;
when the decoding tool of LMCS is enabled for the picture, parsing, from the picture header, at least one syntax element related to an ID of LMCS APS (Adaptation Parameter Set) for the decoding tool of LMCS;
when the decoding tool of LMCS is enabled for the picture, parsing, from the picture header, at least one syntax element related to an ID of LMCS APS (Adaptation Parameter Set) for the decoding tool of LMCS;
when the decoding tool of LMCS is enabled for the picture, parsing from a slice header at least one syntax element indicating whether the decoding tool of LMCS is to be used for the slice immediately after a syntax element related to an ID of ALF (Adaptive Loop Filter) APS in the slice header, and prior to syntax elements related to one or more decoding tools; and
decoding the video data from the bitstream using said syntax elements.

### Claim 8

A non-transitory computer readable medium having stored thereon processor executable instructions that, when executed by a processor, cause the processor to perform a method of encoding video data into a bitstream, the bitstream comprising video data corresponding to one or more slices, wherein the bitstream comprises a header comprising syntax elements to be used when decoding a picture including one or more slices, and a slice header comprising syntax elements to be used when decoding a slice, the method comprising:
encoding, in the picture header, at least one syntax element indicating whether a decoding tool of LMCS (Luma Mapping with Chroma Scaling) is enabled for the picture;
when the decoding tool is enabled for the picture, encoding, in the picture header, at least one syntax element related to an ID of LMCS APS (Adaptation Parameter Set) for the decoding tool of LMCS; and
when the decoding tool of LMCS is enabled for the picture, encoding in a slice header at least one syntax element indicating whether the decoding tool of LMCS is to be used for the slice immediately after a syntax element related to an ID of ALF (Adaptive Loop Filter) APS in the slice header, and prior to syntax elements related to one or more decoding tools.
