IP Library Granted Patent US 9,930,348
Granted Patent B2
US 9,930,348 · App. 14/656,071 · Granted Mar 27, 2018

Coefficient level coding in a video coding process

Inventors: Rajan Laxman Joshi (San Diego, CA); Marta Karczewicz (San Diego, CA)
Assignee: QUALCOMM Incorporated
H04N19/18H03M7/40H04N19/00H04N19/115H04N19/13H04N19/136H04N19/157H04N19/176H04N19/70
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 9,930,348
App. No.
14/656,071
Granted
Mar 27, 2018
Kind
B2
Abstract

A device for coding video data includes a memory configured to store video data, and at least one processor configured to: determine a maximum number of bits to be used when coding a syntax element indicating absolute values of transform coefficients of a coding unit of the video data, determine a maximum number of suffix bits to be used when coding a Golomb-Rice/Exponential-Golomb coding suffix codeword of the syntax element, determine a maximum number of prefix bits to be used when coding a unary Golomb-Rice/Exponential-Golomb coding prefix codeword of the syntax element, determine the absolute values of transform coefficients for the coding unit, code a prefix codeword for one of the absolute values, and code a suffix codeword for the one of the absolute values, and code the coding unit based on the prefix codeword and the suffix codeword.

Claims (49)

1. A method of decoding video data, the method comprising:

receiving, from an encoded bitstream, a first syntax element indicating a range of values based on a bit-depth, wherein the range of values is used to represent absolute values of transform coefficients of a coding unit of the video data, wherein the range of values includes a minimum value and a maximum value, wherein the bit-depth represents a number of bits used to represent luma or chroma video components of the coding unit of the video data, and wherein the coding unit of the video data is a region of the video data;

receiving, from the encoded bitstream, a second syntax element indicating an absolute value of a first transform coefficient of the transform coefficients of the coding unit of the video data, wherein the second syntax element is represented by a prefix codeword and a suffix codeword concatenated to the prefix codeword;

determining a maximum number of suffix bits to be used when decoding the suffix codeword of the second syntax element, wherein the maximum number of suffix bits is based on the maximum value of the range indicated by the first syntax element that is based on the bit-depth representing the number of bits used to represent luma or chroma video components of the coding unit of the video data;

determining a maximum number of prefix bits to be used when decoding the prefix codeword of the second syntax element, wherein the maximum number of prefix bits is based on a difference between the determined maximum number of suffix bits and a value representative of a maximum number of bits used to represent the transform coefficients of the coding unit of the video data;

decoding the prefix codeword of the second syntax element based on the determined maximum number of prefix bits, wherein the prefix codeword has a number of bits that is less than or equal to the determined maximum number of prefix bits;

decoding the suffix codeword of the second syntax element based on the determined maximum number of suffix bits, wherein the suffix codeword has a number of bits that is less than or equal to the determined maximum number of suffix bits;

determining the absolute value of the first transform coefficient based on the decoded prefix codeword and the decoded suffix codeword; and

decoding the coding unit based on the determined absolute value of the first transform coefficient.

2. The method of claim 1 , wherein the prefix codeword comprises a truncated unary representation.

3. The method of claim 1 , wherein the second syntax element is coeff_abs_level_remaining.

4. The method of claim 1 , wherein the maximum number of suffix bits is equal to a value of a Log2TransformRange variable for a video component of the coding unit, wherein the value of the Log2TransformRange variable indicates a maximum number of bits needed to represent the absolute values of the transform coefficients.

5. The method of claim 1 , further comprising adjusting the maximum number of prefix bits and the maximum number of suffix bits when a coding mode of the coding unit is bypass mode, lossless mode, or skip mode.

6. The method of claim 5 , further comprising determining that the maximum number of prefix bits and the maximum number of suffix bits are equal when the coding mode is bypass mode, lossless mode, or skip mode.

7. The method of claim 1 , wherein a maximum value of the prefix comprises a maximum truncated unary representation having the maximum number of prefix bits.

8. The method of claim 1 , further comprising adjusting the maximum number of prefix bits and the maximum number of suffix bits based on a coding mode of the coding unit.

9. The method of claim 1 , wherein the first syntax element is Log2TransformRange and the second syntax element is coeff_abs_level_remaining.

10. A method of encoding video data, the method comprising:

generating transform coefficients for a coding unit of the video data, wherein the coding unit of the video data is a region of the video data;

generating a first syntax element indicating a range of values based on a bit-depth, wherein the range of values is used to represent absolute values of the transform coefficients of the coding unit of the video data, wherein the range of values includes a minimum value and a maximum value, and wherein the bit-depth represents a number of bits used to represent luma or chroma video components of the coding unit of the video data;

generating a second syntax element indicating an absolute value of a first transform coefficient of the transform coefficients of the coding unit of the video data;

determining a maximum number of suffix bits to be used when encoding a suffix codeword corresponding to the second syntax element, wherein the maximum number of suffix bits is based on the maximum value of the range indicated by the first syntax element that is based on the bit-depth representing the number of bits used to represent luma or chroma video components of the coding unit of the video data;

determining a maximum number of prefix bits to be used when encoding a prefix codeword corresponding to the second syntax element, wherein the maximum number of prefix bits is based on a difference between the determined maximum number of suffix bits and a value representative of a maximum number of bits used to represent the transform coefficients of the coding unit of the video data;

encoding the prefix codeword corresponding to the second syntax element based on the determined maximum number of prefix bits, wherein the prefix codeword has a number of bits that is less than or equal to the determined maximum number of prefix bits;

encoding the suffix codeword corresponding to the second syntax element based on the determined maximum number of suffix bits, wherein the suffix codeword has a number of bits that is less than or equal to the determined maximum number of suffix bits, and wherein the suffix codeword is concatenated to the prefix codeword; and

generating an encoded bitstream including the prefix codeword and the suffix codeword that together represent the second syntax element.

11. The method of claim 10 , wherein the prefix codeword comprises a truncated unary representation.

12. The method of claim 10 , wherein the second syntax element is coeff_abs_level_remaining.

13. The method of claim 10 , wherein the maximum number of suffix bits is equal to a value of a Log2TransformRange variable for a video component of the coding unit, wherein the value of the Log2TransformRange variable indicates a maximum number of bits needed to represent the absolute values of the transform coefficients.

14. The method of claim 10 , further comprising adjusting the maximum number of prefix bits and the maximum number of suffix bits when a coding mode of the coding unit is bypass mode, lossless mode, or skip mode.

15. The method of claim 14 , further comprising determining that the maximum number of prefix bits and the maximum number of suffix bits are equal when the coding mode is bypass mode, lossless mode, or skip mode.

16. The method of claim 10 , wherein a maximum value of the prefix comprises a maximum truncated unary representation having the maximum number of prefix bits.

17. The method of claim 10 , further comprising adjusting the maximum number of prefix bits and the maximum number of suffix bits based on a coding mode of the coding unit.

18. The method of claim 10 , wherein the first syntax element is Log2TransformRange and the second syntax element is coeff_abs_level_remaining.

19. A device for decoding video data comprising:

a memory configured to store video data; and

at least one processor configured to:

receive, from an encoded bitstream, a first syntax element indicating a range of values based on a bit-depth, wherein the range of values is used to represent absolute values of transform coefficients of a coding unit of the video data, wherein the range of values includes a minimum value and a maximum value, wherein the bit-depth represents a number of bits used to represent luma or chroma video components of the coding unit of the video data, and wherein the coding unit of the video data is a region of the video data;

receive, from the encoded bitstream, a second syntax element indicating an absolute value of a first transform coefficient of the transform coefficients of the coding unit of the video data, wherein the second syntax element is represented by a prefix codeword and a suffix codeword concatenated to the prefix codeword;

determine a maximum number of suffix bits to be used when decoding the suffix codeword of the second syntax element, wherein the maximum number of suffix bits is based on the maximum value of the range indicated by the first syntax element that is based on the bit-depth representing the number of bits used to represent luma or chroma video components of the coding unit of the video data;

determine a maximum number of prefix bits to be used when decoding the prefix codeword of the second syntax element, wherein the maximum number of prefix bits is based on a difference between the determined maximum number of suffix bits and a value representative of a maximum number of bits used to represent the transform coefficients of the coding unit of the video data;

decode the prefix codeword of the second syntax element based on the determined maximum number of prefix bits, wherein the prefix codeword has a number of bits that is less than or equal to the determined maximum number of prefix bits;

decode the suffix codeword of the second syntax element based on the determined maximum number of suffix bits, wherein the suffix codeword has a number of bits that is less than or equal to the determined maximum number of suffix bits;

determine the absolute value of the first transform coefficient based on the decoded prefix codeword and the decoded suffix codeword; and

decode the coding unit based on the determined absolute value of the first transform coefficient.

20. The device of claim 19 , wherein the at least one processor is further configured to adjust the maximum number of prefix bits and the maximum number of suffix bits when a coding mode of the coding unit is bypass mode, lossless mode, or skip mode.

21. The device of claim 19 , wherein the prefix codeword comprises a truncated unary representation.

22. The device of claim 19 , wherein the second syntax element is coeff_abs_level_remaining.

23. The device of claim 19 , wherein the first syntax element is Log2TransformRange and the second syntax element is coeff_abs_level_remaining.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 1, 2015
From: JOSHI, RAJAN LAXMAN; KARCZEWICZ, MARTA
To: QUALCOMM INCORPORATED
Reel/Frame 035314/0302 →
Continuity (3)
Provisional Application 61953659 · Mar 14, 2014
Provisional Application 61954404 · Mar 17, 2014
Related Publication 20150264362A1 · Sep 17, 2015