IP Library Granted Patent US 9,425,822
Granted Patent B2
US 9,425,822 · App. 14/806,199 · Granted Aug 23, 2016

Simplified range and context update for multimedia context-adaptive binary arithmetic coding design

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,425,822
App. No.
14/806,199
Granted
Aug 23, 2016
Kind
B2
Abstract

In some aspects, the disclosure is directed to methods and systems for a context-adaptive binary arithmetic encoder and decoder utilizing a fixed point design for range and context updates. Symbol probabilities and probability adaptation factors can be scaled to a predetermined range, such as an 8-bit range, reducing the need for complex and operationally costly table look-ups.

Claims (37)

1. A method for simplified range and context updates for context adaptive binary arithmetic coding, comprising:

receiving, by a parameter updater of a device from a context adaptive binary arithmetic coding (CABAC) encoder or decoder of the device, an encode or decode context comprising a probability of a first least probable symbol;

scaling, by the parameter updater, the probability of the first least probable symbol within a predetermined range;

determining, by the parameter updater, a probability of a subsequent second least probable symbol using the scaled probability of the first least probable symbol multiplied by a probability adaptation factor having a value within the predetermined range; and

providing, by the parameter updater to the CABAC encoder or decoder, the determined probability of the subsequent second least probable symbol.

2. The method of claim 1 , wherein the predetermined range comprises an n-bit range, with n greater than 1.

3. The method of claim 2 , wherein determining the probability of the subsequent second least probable symbol further uses the scaled probability of the first least probable symbol multiplied by the probability adaptation factor, plus 2 n−1 , divided by 2 n .

4. The method of claim 2 , wherein determining the probability of the subsequent second least probable symbol further uses the scaled probability of the first least probable symbol multiplied by the probability adaptation factor, plus 2 n multiplied by the difference of 2 n and the probability adaptation factor, plus 2 n−1 , divided by 2 n .

5. The method of claim 2 , wherein the encode or decode range parameter further comprises a first range; and further comprising determining a second range using the first range multiplied by the scaled probability of the first least probable symbol, plus 2 n−1 , divided by 2 n .

6. The method of claim 5 , further comprising providing the second range to the CABAC encoder or decoder.

7. The method of claim 1 , further comprising:

receiving, by the parameter updater, an identification of a most probable symbol;

determining, by the parameter updater, that the probability of the first least probable symbol is equal to at least half of the predetermined range; and

inverting the identification of the most probable symbol.

8. The method of claim 1 , further comprising:

receiving an identification of a most probable symbol and a current symbol value;

determining whether the most probable symbol is equal to the current symbol value; and

responsive to the determination, adjusting the predetermined range for a subsequent encode or decode range parameter using the scaled probability of the first least probable symbol.

9. The method of claim 8 , further comprising adjusting the predetermined range for the subsequent encode or decode range parameter by adjusting the range to a value inversely proportional to the probability of the least probable symbol, responsive to a determination that the current symbol value is equal to the identified most probable symbol.

10. The method of claim 8 , further comprising adjusting the predetermined range for the subsequent encode or decode range parameter by reducing the range to a value proportional to the probability of the least probable symbol, responsive to a determination that the current symbol value is not equal to the identified most probable symbol.

11. A device, comprising:

a context adaptive binary arithmetic coding (CABAC) context receiver in communication with a CABAC encoder or decoder, configured to receive an encode or decode context comprising a probability of a first least probable symbol;

a CABAC range updater configured to scale the probability of the first least probable symbol within a predetermined range;

a CABAC context updater configured to determine a probability of a subsequent second least probable symbol using the scaled probability of the first least probable symbol multiplied by a probability adaptation factor having a value within the predetermined range, and provide the determined probability of the subsequent second least probable symbol to a CABAC context selector of the CABAC encoder or decoder.

12. The device of claim 11 , wherein the predetermined range comprises an n-bit range, with n greater than 1.

13. The device of claim 12 , wherein the CABAC context updater is further configured to determine the probability of the subsequent second least probable symbol using the scaled probability of the first least probable symbol multiplied by the probability adaptation factor, plus 2 n−1 , divided by 2 n .

14. The device of claim 12 , wherein the CABAC context updater is further configured to determine the probability of the subsequent second least probable symbol using the scaled probability of the first least probable symbol multiplied by the probability adaptation factor, plus 2 n multiplied by the difference of 2 n and the probability adaptation factor, plus 2 n−1 , divided by 2 n .

15. The device of claim 12 , wherein the encode or decode range parameter further comprises a first range; and wherein the CABAC range updater is further configured to determine a second range using the first range multiplied by the scaled probability of the first least probable symbol, plus 2 n−1 , divided by 2 n , and provide the second range to the CABAC encoder or decoder.

16. The device of claim 11 , wherein the CABAC context receiver is further configured to receive an identification of a most probable symbol; and

wherein the CABAC context updater is further configured to determine that the probability of the first least probable symbol is equal to at least half of the predetermined range, and invert the identification of the most probable symbol.

17. The device of claim 11 , wherein the CABAC context receiver is further configured to receive an identification of a most probable symbol and a current symbol value; and

wherein the CABAC context updater is further configured to determine whether the most probable symbol is equal to the current symbol value, and responsive to the determination, adjust the predetermined range for a subsequent encode or decode range parameter using the scaled probability of the first least probable symbol.

18. The device of claim 17 , wherein the CABAC context updater is further configured to adjust the predetermined range for the subsequent encode or decode range parameter by adjusting the range to a value inversely proportional to the probability of the least probable symbol, responsive to a determination that the current symbol value is equal to the identified most probable symbol.

19. The device of claim 17 , wherein the CABAC context updater is further configured to adjust the predetermined range for the subsequent encode or decode range parameter by reducing the range to a value proportional to the probability of the least probable symbol, responsive to a determination that the current symbol value is not equal to the identified most probable symbol.

20. A device for updating arithmetic coding parameters, comprising:

a context adaptive binary arithmetic coding (CABAC) range updater configured to receive a probability of a first least probable symbol and scale the probability of the first least probable symbol within a predetermined range; and

a CABAC context updater configured to determine a probability of a subsequent second least probable symbol using the scaled probability of the first least probable symbol multiplied by a probability adaptation factor having a value within the predetermined range, and provide the determined probability of the subsequent second least probable symbol to a CABAC context selector of a CABAC encoder or decoder.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT NUMBER 9,385,856 TO 9,385,756 PREVIOUSLY RECORDED AT REEL: 47349 FRAME: 001. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 22, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 051144/0648 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE PREVIOUSLY RECORDED ON REEL 047229 FRAME 0408. ASSIGNOR(S) HEREBY CONFIRMS THE THE EFFECTIVE DATE IS 09/05/2018. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047349/0001 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047229/0408 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2015
From: ZHOU, MINHUA
To: BROADCOM CORPORATION
Reel/Frame 036157/0083 →