# US 12,604,044 B2 · Video content distribution methods

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

- Number: US 12,604,044 B2
- Document ID: US12604044B2
- Status: Granted
- Kind: B2
- Application number: 19/351,484
- Filed: 2025-10-07
- Published: 2026-02-05
- Granted: 2026-04-14
- Earliest claimed: 2011-06-30
- Assignees: Texas Instruments Incorporated
- Applicants: Texas Instruments Incorporated
- Inventors: Vivienne Sze
- Web page: https://patentgrep.com/patent/US12604044B2

## CPC

- H04N 19/91: Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
- H04N 19/122: Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
- H04N 19/46: Embedding additional information in the video signal during the compression process (H04N19/517, H04N19/68, H04N19/70 take precedence)
- H04N 19/50: using predictive coding (H04N19/61 takes precedence)
- H04N 19/61: in combination with predictive coding
- H04N 19/70: characterised by syntax aspects related to video coding, e.g. related to compression standards
- H04N 19/176: the region being a block, e.g. a macroblock
- H04N 19/184: the unit being bits, e.g. of the compressed video stream
- H04N 19/186: the unit being a colour or a chrominance component
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A method for entropy encoding syntax elements of transform coefficient levels in a video encoder to generate a compressed video bit stream is provided that includes selecting a context for a first significant coefficient flag corresponding to a first transform coefficient level in a 32×32 transform block, wherein the first transform coefficient level is at a lowest frequency position in the 32×32 transform block, entropy encoding the first significant coefficient flag using the context, selecting the context for a second significant coefficient flag corresponding to a second transform coefficient level in a 16×16 transform block, wherein the second transform coefficient level is at a lowest frequency position in the 16×16 transform block, and entropy encoding the second significant coefficient flag using the context.

## Claims

### Claim 1

A method comprising:
initiating an encoding of a video sequence to produce an encoded video sequence, wherein the encoding of the video sequence includes:
encoding a first instance of a coefficient level flag for a sub-block;
initializing a context index variable to a value of one for the first instance of the coefficient level flag for the sub-block when no coefficient level flags have been encoded for the sub-block before the first instance of the coefficient level flag, wherein a maximum value for the context index variable is three;
selecting a respective context model for each instance of the coefficient level flag in the sub-block using the context index variable;
encoding a value of each coefficient level flag in the sub-block using the respective context model; and
incrementing the context index variable after initializing the context index variable and in response to determining that the value of the coefficient level flag equals zero, wherein the context index variable is incremented no more than twice for the sub-block;
distributing the encoded video sequence over a communication channel; and
causing a decoding of the encoded video sequence in a decoder device, wherein the causing comprises receiving the encoded video sequence by the decoder device.

### Claim 2 (depends on 1)

The method of claim 1, further comprising displaying the decoded video sequence.

### Claim 3 (depends on 1)

The method of claim 1, wherein the video sequence includes real-time video.

### Claim 4 (depends on 1)

The method of claim 1, wherein the video sequence includes archived video.

### Claim 5 (depends on 1)

The method of claim 1, wherein the video sequence includes a combination of video from a video content provider and computer-generated graphics.

### Claim 6 (depends on 1)

The method of claim 1, wherein the video sequence includes a combination of real-time video and computer-generated graphics.

### Claim 7 (depends on 1)

The method of claim 1, wherein distributing the encoded video sequence includes streaming the encoded video sequence over the communication channel.

### Claim 8 (depends on 1)

The method of claim 1, wherein the communication channel includes a wide area network.

### Claim 9 (depends on 1)

The method of claim 1,
wherein the value of the coefficient level flag equaling zero indicates that a significant coefficient in the sub-block has an absolute value of one, and
wherein the value of the coefficient level flag equaling one indicates that a significant coefficient in the sub-block has an absolute value greater than one.

### Claim 10

A method comprising:
initiating an encoding of a video sequence to produce an encoded video sequence, wherein the encoding of the video sequence includes:
encoding a first instance of a coefficient level flag for a sub-block;
initializing a context index variable to a value of one for the first instance of the coefficient level flag for the sub-block when no coefficient level flags have been encoded for the sub-block before the first instance of the coefficient level flag, wherein a maximum value for the context index variable is three;
selecting a respective context model for each instance of the coefficient level flag in the sub-block using the context index variable;
encoding a value of each coefficient level flag in the sub-block using the respective context model; and
incrementing the context index variable after initializing the context index variable and in response to determining that the value of the coefficient level flag equals zero, wherein the context index variable is incremented no more than twice for the sub-block;
distributing the encoded video sequence over a communication channel;
receiving the encoded video sequence by a decoder device; and
causing the video sequence to be displayed.

### Claim 11 (depends on 10)

The method of claim 10, wherein the video sequence includes archived video.

### Claim 12 (depends on 10)

The method of claim 10, wherein the video sequence includes a combination of video from a video content provider and computer-generated graphics.

### Claim 13 (depends on 10)

The method of claim 10, wherein the video sequence includes a combination of real-time video and computer-generated graphics.

### Claim 14 (depends on 10)

The method of claim 10, wherein the communication channel includes a wide area network.

### Claim 15 (depends on 10)

The method of claim 10,
wherein the value of the coefficient level flag equaling zero indicates that a significant coefficient in the sub-block has an absolute value of one, and
wherein the value of the coefficient level flag equaling one indicates that a significant coefficient in the sub-block has an absolute value greater than one.

### Claim 16

A method comprising:
initiating an encoding of a video sequence to produce an encoded video sequence, wherein the encoding of the video sequence includes:
encoding a first instance of a coefficient level flag for a sub-block;
initializing a context index variable to a value of one for the first instance of the coefficient level flag for the sub-block when no coefficient level flags have been encoded for the sub-block before the first instance of the coefficient level flag, wherein a maximum value for the context index variable is three;
selecting a respective context model for each instance of the coefficient level flag in the sub-block using the context index variable;
encoding a value of each coefficient level flag in the sub-block using the respective context model; and
incrementing the context index variable after initializing the context index variable and in response to determining that the value of the coefficient level flag equals zero, wherein the context index variable is incremented no more than twice for the sub-block;
causing a distribution of the encoded video sequence over a communication channel; and
receiving the encoded video sequence by a decoder device.

### Claim 17 (depends on 16)

The method of claim 16, wherein the video sequence includes a combination of video from a video content provider and computer-generated graphics.

### Claim 18 (depends on 16)

The method of claim 16, wherein the video sequence includes a combination of real-time video and computer-generated graphics.

### Claim 19 (depends on 16)

The method of claim 16,
wherein the value of the coefficient level flag equaling zero indicates that a significant coefficient in the sub-block has an absolute value of one, and
wherein the value of the coefficient level flag equaling one indicates that a significant coefficient in the sub-block has an absolute value greater than one.

### Claim 20 (depends on 16)

The method of claim 16, wherein a size of the sub-block is 4×4 pixels.
