IP Library › Granted Patent US 11,368,511
Granted Patent B2
US 11,368,511 · App. 16/895,475 · Granted Jun 21, 2022

Unification of rice parameter lookup table

Inventors: Cheung Auyeung (Sunnyvale, CA); Xiang Li (Saratoga, CA); Shan Liu (San Jose, CA)
Assignee: TENCENT AMERICA LLC
H04L65/608G06F16/9017H04L65/4069H04L65/607H04N19/176
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,368,511
App. No.
16/895,475
Granted
Jun 21, 2022
Kind
B2
Abstract

According to an embodiment, a method of selecting a Rice parameter for encoding a video bitstream using at least one processor includes obtaining an absolute level corresponding to a current transform block; determining whether transform skip is enabled; generating a lookup variable based on the absolute level and the determination of whether the transform skip is enabled; obtaining the Rice parameter from a lookup table based on the lookup variable; and encoding a residual subblock based on the Rice parameter.

Claims (57)

1. A method of selecting a Rice parameter for encoding a video bitstream using at least one processor, the method comprising:

obtaining an absolute level corresponding to a current transform block;

determining whether transform skip is enabled;

generating a lookup variable based on the absolute level and the determination of whether the transform skip is enabled;

obtaining the Rice parameter directly from a lookup table based on the lookup variable; and

encoding a residual subblock based on the Rice parameter.

2. The method of claim 1 , wherein the Rice parameter is obtained from the lookup table when the transform skip is enabled and when the transform skip is disabled.

3. The method of claim 1 , further comprising:

based on the transform skip being disabled, generating an adjusted variable by adjusting the absolute level based on a base level corresponding to the current transform block; and

generating the lookup variable by clipping the adjusted variable.

4. The method of claim 1 , further comprising:

based on the transform skip being enabled, generating an adjusted variable by adjusting the absolute level; and

generating the lookup variable by clipping the adjusted variable.

5. The method of claim 1 , further comprising:

based on the transform skip being enabled, generating an offset variable by applying an offset to the absolute level; and

generating the lookup variable by clipping the offset variable.

6. The method of claim 1 , further comprising:

based on the transform skip being enabled, generating an adjusted variable by clipping the absolute level; and

generating the lookup variable by applying an offset to the adjusted variable.

7. The method of claim 1 , wherein the determination of whether the transform skip is enabled is performed based on a transform skip flag.

8. The method of claim 1 , wherein the lookup variable is determined based on at least one from among a base level corresponding to the current transform block, a color component index, a luma location specifying a top-left sample of the current transform block relative to a top-left sample of a current picture, a current coefficient scan location, a binary logarithm of a width of the current transform block, and a binary logarithm of a height of the current transform block.

9. The method of claim 1 , wherein the Rice parameter has a value between 0 and 2.

10. The method of claim 1 , wherein the Rice parameter has a value between 0 and 3.

11. A device for selecting a Rice parameter for encoding a video bitstream, the device comprising:

at least one memory configured to store program code; and

at least one processor configured to read the program code and operate as instructed by the program code, the program code including:

first obtaining code configured to cause the at least one processor to obtain an absolute level corresponding to a current transform block;

determining code configured to cause the at least one processor to determine whether transform skip is enabled;

generating code configured to cause the at least one processor to generate a lookup variable based on the absolute level and the determination of whether the transform skip is enabled;

second obtaining code configured to cause the at least one processor to obtain the Rice parameter directly from a lookup table based on the lookup variable; and

encoding code configured to cause the at least one processor to encode a residual subblock based on the Rice parameter.

12. The device of claim 11 , wherein the Rice parameter is obtained from the lookup table when the transform skip is enabled and when the transform skip is disabled.

13. The device of claim 11 , wherein the generating code comprises first generating code, and

wherein the program code further comprises:

second generating code configured to cause the at least one processor to, based on the transform skip being disabled, generate an adjusted variable by adjusting the absolute level based on a base level corresponding to the current transform block; and

third generating code configured to cause the at least one processor to generate the lookup variable by clipping the adjusted variable.

14. The device of claim 11 , wherein the generating code comprises first generating code, and

wherein the program code further comprises:

second generating code configured to cause the at least one processor to, based on the transform skip being enabled, generate an adjusted variable by adjusting the absolute level; and

third generating code configured to cause the at least one processor to generate the lookup variable by clipping the adjusted variable.

15. The device of claim 11 , wherein the generating code comprises first generating code, and

wherein the program code further comprises:

second generating code configured to cause the at least one processor to, based on the transform skip being enabled, generate an offset variable by applying an offset to the absolute level; and

third generating code configured to cause the at least one processor to generate the lookup variable by clipping the offset variable.

16. The device of claim 11 , further wherein the generating code comprises first generating code, and

wherein the program code further comprises:

second generating code configured to cause the at least one processor to, based on the transform skip being enabled, generate a clipped variable by clipping the absolute level; and

third generating code configured to cause the at least one processor to generate the lookup variable by applying an offset to the clipped variable.

17. The device of claim 11 , wherein the determination of whether the transform skip is enabled is performed based on a transform skip flag.

18. The device of claim 11 , wherein the lookup variable is determined based on at least one from among a base level corresponding to the current transform block, a color component index, a luma location specifying a top-left sample of the current transform block relative to a top-left sample of a current picture, a current coefficient scan location, a binary logarithm of a width of the current transform block, and a binary logarithm of a height of the current transform block.

19. The device of claim 11 , wherein the Rice parameter has a value between 0 and 3.

20. A non-transitory computer-readable medium storing instructions, the instructions comprising: one or more instructions that, when executed by one or more processors of a device for selecting a Rice parameter for encoding a video bitstream, cause the one or more processors to:

obtain an absolute level corresponding to a current transform block;

determine whether transform skip is enabled;

generate a lookup variable based on the absolute level and the determination of whether the transform skip is enabled;

obtain the Rice parameter directly from a lookup table based on the lookup variable; and

encode a residual subblock based on the Rice parameter.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 8, 2020
From: AUYEUNG, CHEUNG; LI, XIANG; LIU, SHAN
To: TENCENT AMERICA LLC
Reel/Frame 052872/0915 →
Continuity (2)
Provisional Application 62863972 · Jun 20, 2019
Related Publication 20200404040A1 · Dec 24, 2020