Podrobná bibliografia
| Názov: |
ENTROPY ENCODING AND DECODING USING DIRECT LEVEL AND RUN-LENGTH/LEVEL CONTEXT-ADAPTIVE ARITHMETIC CODING/DECODING MODES |
| Document Number: |
20120069899 |
| Dátum vydania: |
March 22, 2012 |
| Appl. No: |
13/306761 |
| Application Filed: |
November 29, 2011 |
| Abstrakt: |
An encoder performs context-adaptive arithmetic encoding of transform coefficient data. For example, an encoder switches between coding of direct levels of quantized transform coefficient data and run-level coding of run lengths and levels of quantized transform coefficient data. The encoder can determine when to switch between coding modes based on a pre-determined switch point or by counting consecutive coefficients having a predominant value (e.g., zero). A decoder performs corresponding context-adaptive arithmetic decoding. |
| Inventors: |
Mehrotra, Sanjeev (Kirkland, WA, US); Chen, Wei-Ge (Sammamish, WA, US) |
| Assignees: |
Microsoft Corporation (Redmond, WA, US) |
| Claim: |
1-77. (canceled) |
| Claim: |
78. A computer-readable storage medium, not consisting of a signal, storing computer-executable instructions for causing a computing device that implements an encoder to perform a method of encoding audio or video data, the method comprising: performing a frequency transform on a block of plural samples to produce plural transform coefficients; quantizing the plural transform coefficients; and entropy coding the plural quantized transform coefficients, wherein the entropy coding includes: encoding one or more of the plural quantized transform coefficients using a direct level encoding mode, including performing first context-adaptive arithmetic coding of a level value of a given coefficient of the plural quantized transform coefficients, wherein the first context-adaptive arithmetic coding uses a first set of plural contexts, and wherein the first context-adaptive arithmetic coding includes selecting one of the first set of plural contexts based at least in part on level values of two previously encoded quantized transform coefficients; switching to a run-level encoding mode for remaining coefficients of the plural quantized transform coefficients; encoding the remaining quantized transform coefficients using the run-level encoding mode, including: performing second context-adaptive arithmetic coding of a non-zero level value of one of the remaining quantized transform coefficients, wherein the second context-adaptive arithmetic coding uses a second set of plural contexts different than the first set of plural contexts, and wherein the second context-adaptive arithmetic coding includes selecting one of the second set of plural contexts based at least in part on a level value of a previously encoded quantized transform coefficient; and performing third context-adaptive arithmetic coding of a run value, the run value indicating a count of consecutive zero-value remaining quantized transform coefficients adjacent the remaining quantized transform coefficient with the non-zero level value, wherein the third context-adaptive arithmetic coding uses a third set of plural contexts different than the first set of plural contexts and different than the second set of plural contexts. |
| Claim: |
79. The computer-readable storage medium of claim 78 wherein the entropy coding further includes: selecting the first context-adaptive arithmetic coding from among multiple encoding techniques available for the direct level encoding mode, wherein the multiple encoding techniques available for the direct level encoding mode further include variable length coding of level values; and selecting the second context-adaptive arithmetic coding and the third context-adaptive arithmetic coding from among multiple encoding techniques available for the run-level encoding mode, wherein the multiple encoding techniques available for the run-level encoding mode further include variable length coding of run values and level values. |
| Claim: |
80. The computer-readable storage medium of claim 78 wherein the switching from the direct level encoding mode to the run-level encoding mode happens at a pre-determined switch point. |
| Claim: |
81. The computer-readable storage medium of claim 78 wherein the selected context from the first set of plural contexts changes depending on (1) whether the level value of a first of the two previously encoded quantized transform coefficients is zero or non-zero and (2) whether the level value of a second of the two previously encoded quantized transform coefficients is zero or non-zero. |
| Claim: |
82. The computer-readable storage medium of claim 78 wherein the encoding the remaining ones of the plural quantized transform coefficients using the run-level encoding mode includes repeating the second context-adaptive arithmetic coding and the third context-adaptive arithmetic coding for each of one or more other pairs of non-zero level value and run value. |
| Claim: |
83. The computer-readable storage medium of claim 82 wherein: for a first non-zero level value in the run-level encoding mode, the selection of one of the second set of plural contexts considers the level value of the given quantized transform coefficient from the direct level encoding mode; and for a subsequent non-zero level value in the run-level encoding mode, the selection of one of the second set of plural contexts considers the first non-zero level value. |
| Claim: |
84. The computer-readable storage medium of claim 78 wherein the selected context from the second set of plural contexts changes depending on whether the level value of the previously encoded quantized transform coefficient is one or greater than one. |
| Claim: |
85. A computer-readable storage medium, not consisting of a signal, storing computer-executable instructions for causing a computing device that implements a decoder to perform a method of decoding audio or video data, the method comprising: entropy decoding plural quantized transform coefficients in a block, wherein the entropy decoding the encoded information includes: decoding one or more of the plural quantized transform coefficients using a direct level decoding mode, including performing first context-adaptive arithmetic decoding of a level value of a given coefficient of the plural quantized transform coefficients, wherein the first context-adaptive arithmetic decoding uses a first set of plural contexts, and wherein the first context-adaptive arithmetic decoding includes selecting one of the first set of plural contexts based at least in part on level values of two previously decoded quantized transform coefficients; switching to a run-level decoding mode for remaining coefficients of the plural quantized transform coefficients in the block; decoding the remaining quantized transform coefficients using the run-level decoding mode, including: performing second context-adaptive arithmetic decoding of a non-zero level value of one of the remaining quantized transform coefficients, wherein the second context-adaptive arithmetic decoding uses a second set of plural contexts different than the first set of plural contexts, and wherein the second context-adaptive arithmetic decoding includes selecting one of the second set of plural contexts based at least in part on a level value of a previously decoded quantized transform coefficient; and performing third context-adaptive arithmetic decoding of a run value, the run value indicating a count of consecutive zero-value remaining quantized transform coefficients adjacent the remaining quantized transform coefficient with the non-zero level value, wherein the third context-adaptive arithmetic decoding uses a third set of plural contexts different than the first set of plural contexts and different than the second set of plural contexts; and inverse quantizing the plural transform coefficients in the block; and performing an inverse frequency transform on the plural transform coefficients to produce a block of the plural samples. |
| Claim: |
86. The computer-readable storage medium of claim 85 wherein the entropy decoding further includes: selecting the first context-adaptive arithmetic decoding from among multiple decoding techniques available for the direct level decoding mode, wherein the multiple decoding techniques available for the direct level decoding mode further include variable length decoding of level values; and selecting the second context-adaptive arithmetic decoding and the third context-adaptive arithmetic decoding from among multiple decoding techniques available for the run-level decoding mode, wherein the multiple decoding techniques available for the run-level decoding mode further include variable length decoding of run values and level values. |
| Claim: |
87. The computer-readable storage medium of claim 85 wherein the switching from the direct level decoding mode to the run-level decoding mode happens at a pre-determined switch point. |
| Claim: |
88. The computer-readable storage medium of claim 85 wherein the selected context from the first set of plural contexts changes depending on (1) whether the level value of a first of the two previously decoded quantized transform coefficients is zero or non-zero and (2) whether the level value of a second of the two previously decoded quantized transform coefficients is zero or non-zero. |
| Claim: |
89. The computer-readable storage medium of claim 85 wherein the decoding the remaining ones of the plural quantized transform coefficients using the run-level decoding mode includes repeating the second context-adaptive arithmetic decoding and the third context-adaptive arithmetic decoding for each of one or more other pairs of non-zero level value and run value. |
| Claim: |
90. The computer-readable storage medium of claim 89 wherein: for a first non-zero level value in the run-level decoding mode, the selection of one of the second set of plural contexts considers the level value of the given quantized transform coefficient from the direct level decoding mode; and for a subsequent non-zero level value in the run-level decoding mode, the selection of one of the second set of plural contexts considers the first non-zero level value. |
| Claim: |
91. The computer-readable storage medium of claim 85 wherein the selected context from the second set of plural contexts changes depending on whether the level value of the previously decoded quantized transform coefficient is one or greater than one. |
| Claim: |
92. A computing device that implements a decoder, the computing device comprising: one or more processors; memory; and one or more storage media storing instructions for causing the computing device to perform a method of decoding audio or video data, the method comprising: entropy decoding plural quantized transform coefficients in a block, wherein the entropy decoding includes: decoding one or more of the plural quantized transform coefficients using a first decoding mode, including performing first context-adaptive arithmetic decoding of a level value of a given coefficient of the plural quantized transform coefficients, wherein the first context-adaptive arithmetic decoding uses a first set of plural contexts, and wherein the first context-adaptive arithmetic decoding includes selecting one of the first set of plural contexts based at least in part on level values of two previously decoded quantized transform coefficients; switching to a second decoding mode for remaining coefficients of the plural quantized transform coefficients in the block; and decoding the remaining quantized transform coefficients using the second decoding mode, including: performing second context-adaptive arithmetic decoding of a first level value and a second level value of a first remaining coefficient and second remaining coefficient, respectively, of the remaining quantized transform coefficients, wherein the second context-adaptive arithmetic decoding uses a second set of plural contexts different than the first set of plural contexts, and wherein: for the first level value in the second decoding mode, the selection of one of the second set of plural contexts considers the level value of the given quantized transform coefficient from the first decoding mode; and for the second level value in the second decoding mode, the selection of one of the second set of plural contexts considers the first level value; and inverse quantizing the plural transform coefficients in the block; and performing an inverse frequency transform on the plural transform coefficients to produce on a block of the plural samples. |
| Claim: |
93. The computing device of claim 92 wherein the first decoding mode is a direct level decoding mode, wherein the second decoding mode is a run-level decoding mode, and wherein the decoding the remaining coefficients using the second decoding mode further includes: performing third context-adaptive arithmetic decoding of a run value, the run value indicating a count of consecutive zero-value remaining quantized transform coefficients adjacent the first or second level value in the second decoding mode, wherein the third context-adaptive arithmetic decoding uses a third set of plural contexts different than the first set of plural contexts and different than the second set of plural contexts. |
| Claim: |
94. The computing device of claim 93 wherein the entropy decoding further includes: selecting the first context-adaptive arithmetic decoding from among multiple decoding techniques available for the direct level decoding mode, wherein the multiple decoding techniques available for the direct level decoding mode further include variable length decoding of level values; and selecting the second context-adaptive arithmetic decoding and the third context-adaptive arithmetic decoding from among multiple decoding techniques available for the run-level decoding mode, wherein the multiple decoding techniques available for the run-level decoding mode further include variable length decoding of run values and level values. |
| Claim: |
95. The computing device of claim 92 wherein the switching from the direct level decoding mode to the run-level decoding mode happens at a pre-determined switch point. |
| Claim: |
96. The computing device of claim 92 wherein the selected context from the first set of plural contexts changes depending on (1) whether the level value of a first of the two previously decoded quantized transform coefficients is zero or non-zero and (2) whether the level value of a second of the two previously decoded quantized transform coefficients is zero or non-zero. |
| Claim: |
97. The computing device of claim 92 wherein the computing device includes a display and a wireless communication connection, and wherein the method further comprises receiving, over the wireless communication connection, a bit stream comprising the audio or video data. |
| Current U.S. Class: |
37524/003 |
| Current International Class: |
04; 10 |
| Prístupové číslo: |
edspap.20120069899 |
| Databáza: |
USPTO Patent Applications |