IP Library Granted Patent US 9,088,769
Granted Patent B2
US 9,088,769 · App. 13/535,392 · Granted Jul 21, 2015

Reduced worst-case context-coded bins in video compression with parity hiding

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,088,769
App. No.
13/535,392
Granted
Jul 21, 2015
Kind
B2
Abstract

Methods and devices for reconstructing coefficient levels from a bitstream of encoded video data for a coefficient group in a transform unit. Parity hiding is used to signal the parity of the upper left coefficient of the coefficient group. Based on the parity, either the significant coefficient flag or the greater-than-one flag is encoded/decoded for that coefficient, but not both. The greater-than-one flag is encoded/decoded irrespective of whether a maximum number of greater-than-one flags have been encoded/decoded with respect to the other coefficients in the coefficient group.

Claims (59)

1. A method of decoding a bitstream of encoded video to reconstruct coefficients of a coefficient group in a video decoder, the coefficient group including an upper left coefficient, the method comprising:

decoding flags for reconstructing the coefficients of the coefficient group other than the upper left coefficient, wherein decoding includes, for each non-zero coefficient, decoding a greater-than-one flag if the number of previously decoded greater-than-one flags for the coefficient group is less than a predetermined threshold number;

determining a parity of the upper left coefficient;

decoding a significant-coefficient flag for the upper left coefficient only if the parity is even; and

decoding a greater-than-one flag for the upper left coefficient only if the parity is odd and irrespective of the predetermined threshold number.

2. The method claimed in claim 1 , wherein the predetermined threshold number is 7.

3. The method claimed in claim 1 , wherein determining a parity comprises decoding a parity flag from the bitstream.

4. The method claimed in claim 1 , wherein determining a parity is based upon a set of the coefficients of the coefficient group other than the upper left coefficient.

5. The method claimed in claim 1 , wherein determining a parity is based upon the parity of a sum of the magnitudes of the coefficients of the coefficient group other than the upper left coefficient.

6. The method claimed in claim 1 , further comprising decoding a greater-than-two flag for the upper left coefficient only if:

the parity is even;

the significant-coefficient flag is equal to 1; and

a maximum number of greater-than-two flags has not been decoded when decoding flags for reconstruction the coefficients of the coefficient group other than the upper left coefficient.

7. The method claimed in claim 1 , wherein decoding flags for reconstructing the coefficients of the coefficient group other than the upper left coefficient further comprises:

decoding significant-coefficient flags;

decoding a greater-than-two flag if at least one greater-than-one flag associated with the coefficients of the coefficient group, other than the upper left coefficient, equals 1; and

decoding remaining level data, if any.

8. A method of encoding video in a video encoder to output a bitstream of encoded data, the video including a coefficient group including an upper left coefficient, the method comprising:

encoding a parity of the upper left coefficient;

encoding flags for the coefficients of the coefficient group other than the upper left coefficient, wherein encoding includes, for each non-zero coefficient other than the upper left coefficient, encoding a greater-than-one flag if the number of previously encoded greater-than-one flags for the coefficient group is less than a predetermined threshold number;

encoding a significant-coefficient flag for the upper left coefficient only if the parity is even; and

encoding a greater-than-one flag for the upper left coefficient only if the parity is odd and irrespective of the predetermined threshold number.

9. The method claimed in claim 8 , wherein the predetermined threshold number is 7.

10. The method claimed in claim 8 , wherein encoding a parity comprises encoding a parity flag that indicates whether the parity is even or odd.

11. The method claimed in claim 8 , wherein encoding a parity comprises determining whether the parity matches a parity value determined based upon a set of the coefficients of the coefficient group other than the upper left coefficient and, if not, adjusting at least one of the coefficients to match the parity value to the parity.

12. The method claimed in claim 11 , wherein the parity value is based upon the parity of a sum of the magnitudes of the coefficients of the coefficient group other than the upper left coefficient.

13. The method claimed in claim 8 , further comprising encoding a greater-than-two flag for the upper left coefficient only if:

the parity is even;

the significant-coefficient flag is equal to 1; and

a maximum number of greater-than-two flags has not been encoded when encoding flags for the coefficients of the coefficient group other than the upper left coefficient.

14. A decoder for decoding a bitstream of encoded video to reconstruct coefficients of a coefficient group in a video decoder, the coefficient group including an upper left coefficient, the decoder comprising:

a processor;

a memory; and

a decoding application stored in memory and containing instructions for configuring the processor to perform the method claimed claim 1 .

15. The decoder claimed in claim 14 , wherein the predetermined threshold number is 7.

16. The decoder claimed in claim 14 , wherein determining a parity comprises decoding a parity flag from the bitstream.

17. The decoder claimed in claim 14 , wherein determining a parity is based upon a set of the coefficients of the coefficient group other than the upper left coefficient.

18. The decoder claimed in claim 14 , wherein determining a parity is based upon the parity of a sum of the magnitudes of the coefficients of the coefficient group other than the upper left coefficient.

19. The decoder claimed in claim 14 , wherein the decoder is further configured to decode a greater-than-two flag for the upper left coefficient only if:

the parity is even;

the significant-coefficient flag is equal to 1; and

a maximum number of greater-than-two flags has not been decoded when decoding flags for reconstruction the coefficients of the coefficient group other than the upper left coefficient.

20. The decoder claimed in claim 14 , wherein decoding flags for reconstructing the coefficients of the coefficient group other than the upper left coefficient further comprises:

decoding significant-coefficient flags;

decoding a greater-than-two flag if at least one greater-than-one flag associated with the coefficients of the coefficient group, other than the upper left coefficient, equals 1; and

decoding remaining level data, if any.

21. An encoder for encoding video in a video encoder to output a bitstream of encoded data, the video including a coefficient group including an upper left coefficient, the encoder comprising:

a processor;

a memory; and

an encoding application stored in memory and containing instructions for configuring the processor to perform the method claimed in claim 8 .

22. The encoder claimed in claim 21 , wherein the predetermined threshold number is 7.

23. The encoder claimed in claim 21 , wherein encoding a parity comprises encoding a parity flag that indicates whether the parity is even or odd.

24. The encoder claimed in claim 21 , wherein encoding a parity comprises determining whether the parity matches a parity value determined based upon a set of the coefficients of the coefficient group other than the upper left coefficient and, if not, adjusting at least one of the coefficients to match the parity value to the parity.

25. The encoder claimed in claim 24 , wherein the parity value is based upon the parity of a sum of the magnitudes of the coefficients of the coefficient group other than the upper left coefficient.

26. The encoder claimed in claim 21 , wherein the encoder is further configured to encode a greater-than-two flag for the upper left coefficient only if:

the parity is even;

the significant-coefficient flag is equal to 1; and

a maximum number of greater-than-two flags has not been encoded when encoding flags for the coefficients of the coefficient group other than the upper left coefficient.

27. A non-transitory processor-readable medium storing processor-executable instructions which, when executed, configures one or more processors to perform the method claimed in claim 1 .

Assignments (9)
CORRECTIVE ASSIGNMENT TO CORRECT THE ADDED PATENT NUMBER TO REMOVE PATENT NO. 8,873,407 AT PREVIOUSLY RECORDED ON REEL 64066 FRAME 1. ASSIGNOR(S) HEREBY CONFIRMS THE NUNC PRO TUNC ASSIGNMENT EFFECTIVE DATE MARCH 20, 2023. Recorded Feb 2, 2026
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 074921/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT 12817157 APPLICATION NUMBER PREVIOUSLY RECORDED AT REEL: 064015 FRAME: 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 5, 2023
From: OT PATENT ESCROW, LLC
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064807/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE COVER SHEET AT PAGE 50 TO REMOVE 12817157 PREVIOUSLY RECORDED ON REEL 063471 FRAME 0474. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 5, 2023
From: BLACKBERRY LIMITED
To: OT PATENT ESCROW, LLC
Reel/Frame 064806/0669 →
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064066/0001 →
NUNC PRO TUNC ASSIGNMENT Recorded Jun 16, 2023
From: OT PATENT ESCROW, LLC
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064015/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2023
From: BLACKBERRY LIMITED
To: OT PATENT ESCROW, LLC
Reel/Frame 063471/0474 →
CHANGE OF NAME Recorded May 19, 2015
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 035729/0723 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 17, 2012
From: SLIPSTREAM DATA INC.
To: RESEARCH IN MOTION LIMITED
Reel/Frame 028564/0650 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 28, 2012
From: HE, DAKE; WANG, JING
To: SLIPSTREAM DATA INC.
Reel/Frame 028456/0967 →