# US 10,873,766 B2 · Coding concept allowing parallel processing, transport demultiplexer and video bitstream

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

- Number: US 10,873,766 B2
- Document ID: US10873766B2
- Status: Granted
- Kind: B2
- Application number: 16/222,116
- Filed: 2018-12-17
- Published: 2019-04-25
- Granted: 2020-12-22
- Earliest claimed: 2012-01-20
- Assignees: Ge Video Compression, LLC
- Applicants: Ge Video Compression, LLC
- Inventors: Thomas Schierl; Valeri George; Karsten Grueneberg; Heiner Kirchhoffer; Anastasia Henkel; Detlev Marpe
- Web page: https://patentgrep.com/patent/US10873766B2

## CPC

- H04N 19/91: Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
- H03M 7/4018: {Context adapative binary arithmetic codes [CABAC]}
- H03M 7/4075: {Golomb codes}
- H04N 19/107: between spatial and temporal predictive coding, e.g. picture refresh
- H04N 19/13: Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
- H04N 19/169: characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N 19/436: using parallelised computational arrangements
- H04N 19/60: using transform coding
- H04N 19/65: using error resilience
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- H03M: CODING; DECODING; CODE CONVERSION IN GENERAL (using fluidic means F15C4/00; optical analogue/digital converters G02F7/00; coding, decoding or code conversion, specially adapted for particular applications, see the relevant subclasses, e.g. G01D, G01R, G06F, G06T, G09G, G10L, G11B, G11C, H04B, H04L, H04M, H04N; ciphering or deciphering for cryptography or other purposes involving the need for secrecy G09C)

## Abstract

A raw byte sequence payload describing a picture in slices, WPP substreams or tiles and coded using context-adaptive binary arithmetic coding is subdivided into tranches with continuing the context-adaptive binary arithmetic coding probability adaptation across tranche boundaries. Thereby, tranche boundaries introduced within slices, WPP substreams or tiles do not lead to a reduction in the entropy coding efficiency of these entities. However, the tranches are smaller than the original slices, WPP substreams or tiles and accordingly they may be transmitted with a lower delay, than the un-chopped original entities. According to another aspect combinable with the first aspect, substream marker NAL units are used within a sequence of NAL units of a video bitstream to enable a transport demultiplexer to assign data of slices within NAL units to the corresponding substreams or tiles to be able to, in parallel, serve a multi-threaded decoder with the corresponding substreams or tiles.

## Claims

### Claim 1

A decoder configured to decode data representing an encoded picture of a video, the decoder comprising:
an entropy decoder configured to decode data representing the encoded picture using context adaptive binary arithmetic coding (CABAC) entropy decoding to obtain a residual signal associated with the picture, wherein a row of the encoded picture is represented in a wavefront parallel processing (WPP) substream having at least two tranches, each of the at least two tranches having a header indicating a boundary of the respective tranche and including a flag that affects CABAC probability adaptation in CABAC entropy decoding of the respective tranche within the WPP substream,
the entropy decoder being configured to entropy decode a current tranche of the at least two tranches using CABAC entropy decoding including (a) respective to the current tranche starting at a beginning of the WPP substream and the flag within the header of the current tranche having a first binary value, resetting the CABAC probability adaptation for the current tranche, and (b) responsive to the current tranche not starting at the beginning of the WPP substream and the flag within the header of the current tranche having a second binary value, using a CABAC probability of a previous tranche in the least two tranches, obtained during entropy decoding of the previous tranche across the boundary between the at least two tranches for entropy decoding of the current tranche; and
a combiner to combine the residual signal and a prediction signal to reconstruct the picture.

### Claim 2 (depends on 1)

The decoder according to claim 1, wherein the encoded picture includes a plurality of WPP substreams, each WPP substream representing one row of the encoded picture and including more than two tranches.

### Claim 3 (depends on 2)

The decoder according to claim 2, wherein decoder is configured to deinterleave the tranches of the WPP substreams by identifying, for each tranche, a WPP substream to which the respective tranche belongs.

### Claim 4 (depends on 2)

The decoder according to claim 2, wherein the tranches are packetized into packets in manner so that each packet comprises one tranche of each WPP substream of the picture, or a subset of the WPP substreams of the picture, arranged in an order defined among the WPP substreams, each packet comprising a header comprising information revealing positions and/or lengths of the tranches packed into the respective packet, or markers separating the tranches within the respective packet from each other, wherein the decoder is configured to use the information comprised by the headers or the markers so as to access the tranches within the packets.

### Claim 5 (depends on 4)

The decoder according to claim 4, wherein packets comprising first, in accordance with the order defined among the WPP substreams, tranches of the WPP substreams of the picture, comprise a low delay feature indicator, and packets comprising second or subsequent, in accordance with the order defined among the WPP sub streams, tranches of the WPP substreams of the picture, comprise a continuation indicator.

### Claim 6 (depends on 4)

The decoder according to claim 4, wherein the packets are NAL units.

### Claim 7 (depends on 1)

The decoder according to claim 1, wherein the CABAC entropy decoding includes adopting the CABAC probability obtained at the end of the entropy decoding of the previous tranche across the boundary between the at least two tranches at the start of the entropy decoding of the current tranche.

### Claim 8

An encoder configured to encode a picture of a video, the encoder comprising:
a residual determiner configured to determine a residual signal associated with the picture based on a prediction signal; and
an entropy encoder configured to encode the residual signal associated with the picture into a data stream using CABAC entropy encoding, wherein a row of the picture as encoded is represented in a wavefront parallel processing (WPP) substream having at least two tranches, each of the at least two tranches having a header indicating a boundary of the respective tranche and including a flag that affects CABAC probability adaptation in CABAC entropy encoding of the respective tranche within the WPP substream,
the entropy encoder being configured to entropy encode a current tranche of the at least two using CABAC entropy encoding including (a) responsive to the current tranche starting at a beginning of the WPP substream and the flag within the header of the current tranche having a first binary value, resetting the CABAC probability adaptation for the current tranche, and (b) responsive to the current tranche not starting at the beginning of the WPP substream and the flag within the header of the current tranche having a second binary value, using a CABAC probability of a previous tranche in the at least two tranches, obtained during entropy encoding of the previous tranche across the boundary between the at least two tranches for entropy encoding of the current tranche.

### Claim 9 (depends on 8)

The encoder according to claim 8, wherein the encoded picture includes a plurality of WPP substreams, each WPP substream representing one row of the picture and including more than two tranches.

### Claim 10 (depends on 9)

The encoder according to claim 9, configured to interleave the tranches of the WPP substreams by providing identification information for each tranche indicating a WPP substream to which the respective tranche belongs.

### Claim 11 (depends on 9)

The encoder according to claim 9, wherein the tranches are packetized into packets in manner so that each packet comprises one tranche of each WPP substream of the picture, or a subset of the WPP substreams of the picture, arranged in an order defined among the WPP substreams, each packet comprising a header comprising information revealing positions and/or lengths of the tranches packed into the respective packet, or markers separating the tranches within the respective packet from each other.

### Claim 12 (depends on 11)

The encoder according to claim 11, wherein packets comprising first, in accordance with the order defined among the WPP substreams, tranches of the WPP substreams of the picture, comprise a low delay feature indicator, and packets comprising second or subsequent, in accordance with the order defined among the WPP sub streams, tranches of the WPP substreams of the picture, comprise a continuation indicator.

### Claim 13 (depends on 11)

The encoder according to claim 11, wherein the packets are NAL units.

### Claim 14 (depends on 8)

The encoder according to claim 8, wherein the CABAC entropy encoding includes adopting the CABAC probability obtained at the end of the entropy encoding of the previous tranche across the boundary between the at least two tranches at the start of the entropy decoding of the current tranche.

### Claim 15

A non-transitory computer-readable medium for storing information related to an encoded picture of a video, comprising instructions, which when executed by a processor, causes generation of:
a data stream stored in the non-transitory computer-readable medium, the data stream comprising encoded information related to a residual signal associated with a picture of a video, wherein the residual signal is determined based on a prediction signal, and is entropy-decoded using context adaptive binary arithmetic coding (CABAC) entropy decoding, wherein a row of the encoded picture is represented in a wavefront parallel processing (WPP) substream having at least two tranches, each of the at least two tranches having a header indicating a boundary of the respective tranche and including a flag that affects CABAC probability adaptation in CABAC entropy decoding of the respective tranche within the WPP substream,
wherein, a current tranche of the at least two tranches are entropy- decoded using the CABAC entropy decoding including (a) responsive to the current tranche starting at a beginning of the WPP substream and the flag within the header of the current tranche having a first binary value, resetting the CABAC probability adaptation for the current tranche, and (b) responsive to the current tranche not starting at the beginning of the WPP substream and the flag within the header of the current tranche having a second binary value, using a CABAC probability of a previous tranche in the at least two tranches, obtained during entropy decoding of the previous tranche across the boundary between the at least two tranches for entropy decoding of the current tranche.

### Claim 16 (depends on 15)

The computer-readable medium according to claim 15, wherein the encoded picture includes a plurality of WPP substreams, each WPP substream representing one row of the encoded picture and including more than two tranches.

### Claim 17 (depends on 16)

The computer-readable medium according to claim 16, wherein, as part of the CABAC entropy decoding, the tranches of the WPP substreams are deinterleaved by identifying, for each tranche, a WPP substream to which the respective tranche belongs.

### Claim 18 (depends on 16)

The computer-readable medium according to claim 16, wherein the tranches are packetized into packets in the data stream in a manner so that each packet comprises one tranche of each WPP substream of the picture, or a subset of the WPP substreams of the picture, arranged in an order defined among the WPP substreams, each packet comprising a header comprising information revealing positions and/or lengths of the tranches packed into the respective packet, or markers separating the tranches within the respective packet from each other, wherein the information comprised by the headers or the markers is used to access the tranches within the packets.

### Claim 19 (depends on 18)

The computer-readable medium according to claim 18, wherein packets comprising first, in accordance with the order defined among the WPP sub streams, tranches of the WPP substreams of the picture, comprise a low delay feature indicator, and packets comprising second or subsequent, in accordance with the order defined among the WPP sub streams, tranches of the WPP substreams of the picture, comprise a continuation indicator.

### Claim 20 (depends on 18)

The computer-readable medium according to claim 18, wherein the packets are NAL units.

### Claim 21 (depends on 15)

The computer-readable medium according to claim 15, wherein the CABAC entropy decoding includes adopting the CABAC probability obtained at the end of the entropy decoding of the previous tranche across the boundary between the at least two tranches at the start of the entropy decoding of the current tranche.

### Claim 22

A method for decoding data representing an encoded picture of a video, the method comprising:
entropy decoding data representing the encoded picture using context adaptive binary arithmetic coding (CABAC) entropy decoding to obtain a residual signal associated with the picture, wherein a row of the encoded picture is represented in a wavefront parallel processing (WPP) substream having at least two tranches, each of the at least two tranches having a header indicating a boundary of the respective tranche and second tranches and including a flag that affects CABAC probability adaptation in CABAC entropy decoding of the respective tranche within the WPP substream,
wherein the entropy decoding the a current tranche of the at least two tranches using CABAC entropy decoding includes (a) responsive to the current tranche starting at a beginning of the WPP substream and the flag within the header of the current tranche having a first binary value, resetting the CABAC probability adaptation for the current tranche, and (b) responsive to the current tranche not starting at the beginning of the WPP substream and the flag within the header of the current tranche having a second binary value, using a CABAC probability of a previous tranche in the at least two tranches, obtained during entropy decoding of the previous tranche across the boundary between the at least two tranches for entropy decoding of the current tranche; and
combining the residual signal and a prediction signal to reconstruct the picture.

### Claim 23 (depends on 22)

The method according to claim 22, wherein the encoded picture includes a plurality of WPP substreams, each WPP substream representing one row of the encoded picture and including more than two tranches.

### Claim 24 (depends on 23)

The method according to claim 23, further comprising deinterleaving the tranches of the WPP substreams by identifying, for each tranche, a WPP substream to which the respective tranche belongs.

### Claim 25 (depends on 23)

The method according to claim 23, wherein the tranches are packetized into packets in manner so that each packet comprises one tranche of each WPP substream of the picture, or a subset of the WPP substreams of the picture, arranged in an order defined among the WPP substreams, each packet comprising a header comprising information revealing positions and/or lengths of the tranches packed into the respective packet, or markers separating the tranches within the respective packet from each other, wherein the decoder is configured to use the information comprised by the headers or the markers so as to access the tranches within the packets.

### Claim 26 (depends on 25)

The method according to claim 25, wherein the CABAC entropy decoding includes adopting the CABAC probability obtained at the end of the entropy decoding of the previous tranche across the boundary between the at least two tranches at the start of the entropy decoding of the current tranche.
