KR100813877B1 - 효율적인 h.264/avc cavlc 디코딩 방법 - Google Patents
효율적인 h.264/avc cavlc 디코딩 방법 Download PDFInfo
- Publication number
- KR100813877B1 KR100813877B1 KR1020060042514A KR20060042514A KR100813877B1 KR 100813877 B1 KR100813877 B1 KR 100813877B1 KR 1020060042514 A KR1020060042514 A KR 1020060042514A KR 20060042514 A KR20060042514 A KR 20060042514A KR 100813877 B1 KR100813877 B1 KR 100813877B1
- Authority
- KR
- South Korea
- Prior art keywords
- decoding
- code
- value
- arithmetic expression
- classifying
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/42—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory
- H03M7/425—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory for the decoding process only
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
| nC | 표 | 의미 |
| 0, 1 | Num-VLC0 | 계수의 개수가 작다. |
| 2, 3 | Num-VLC1 | 계수의 개수가 보통이다. |
| 4, 5, 6, 7 | Num-VLC2 | 계수의 개수가 많다. |
| 8 or above | Num-FLC | 6-bit FLC (Fixed Length Coding) |
| T1s | TC | 0<=nC<2 | 2<=nC<4 | 4<=nC<8 | 8<=nC |
| 0 | 0 | 1 | 11 | 1111 | 0000 11 |
| 0 | 1 | 001 01 | 0010 11 | 0011 11 | 0000 00 |
| 1 | 1 | 01 | 10 | 1110 | 0000 01 |
| 0 | 2 | 0000 0111 | 0001 11 | 0010 11 | 0001 00 |
| 1 | 2 | 0001 00 | 0011 1 | 0111 1 | 0001 01 |
| 2 | 2 | 001 | 011 | 1101 | 0001 10 |
| 0 | 3 | 0000 0011 1 | 0000 111 | 0010 00 | 0010 00 |
| 1 | 3 | 0000 0110 | 0010 10 | 0110 0 | 0010 01 |
| 2 | 3 | 0000 101 | 0010 01 | 0111 0 | 0010 10 |
| 3 | 3 | 0001 1 | 0101 | 1100 | 0010 11 |
| 0 | 4 | 0000 0001 11 | 0000 0111 | 0001 111 | 0011 00 |
| 1 | 4 | 0000 0011 0 | 0001 10 | 0101 0 | 0011 01 |
| 2 | 4 | 0000 0101 | 0001 01 | 0101 1 | 0011 10 |
| 3 | 4 | 0000 11 | 0100 | 1011 | 0011 11 |
| 0 | 5 | 0000 0000 111 | 0000 0100 | 0001 011 | 0100 00 |
| 1 | 5 | 0000 0001 10 | 0000 110 | 0100 0 | 0100 01 |
| 2 | 5 | 0000 0010 1 | 0000 101 | 0100 1 | 0100 10 |
| 3 | 5 | 0000 100 | 0010 0 | 1010 | 0100 11 |
| 0 | 6 | 0000 0000 0111 1 | 0000 0011 1 | 0001 001 | 0101 00 |
| 1 | 6 | 0000 0000 110 | 0000 0110 | 0011 10 | 0101 01 |
| 2 | 6 | 0000 0001 01 | 0000 0101 | 0011 01 | 0101 10 |
| 3 | 6 | 0000 0100 | 0010 00 | 1001 | 0101 11 |
| 0 | 7 | 0000 0000 0101 1 | 0000 0001 111 | 0001 000 | 0110 00 |
| 1 | 7 | 0000 0000 0111 0 | 0000 0011 0 | 0010 10 | 0110 01 |
| 2 | 7 | 0000 0000 101 | 0000 0010 1 | 0010 01 | 0110 10 |
| 3 | 7 | 0000 0010 0 | 0001 00 | 1000 | 0110 11 |
| 0 | 8 | 0000 0000 0100 0 | 0000 0001 011 | 0000 1111 | 0111 00 |
| 1 | 8 | 0000 0000 0101 0 | 0000 0001 110 | 0001 110 | 0111 01 |
| 2 | 8 | 0000 0000 0110 1 | 0000 0001 101 | 0001 101 | 0111 10 |
| 3 | 8 | 0000 0001 00 | 0000 100 | 0110 1 | 0111 11 |
| 0 | 9 | 0000 0000 0011 11 | 0000 0000 1111 | 0000 1011 | 1000 00 |
| 1 | 9 | 0000 0000 0011 10 | 0000 0001 010 | 0000 1110 | 1000 01 |
| 2 | 9 | 0000 0000 0100 1 | 0000 0001 001 | 0001 010 | 1000 10 |
| 3 | 9 | 0000 0000 100 | 0000 0010 0 | 0011 00 | 1000 11 |
| 0 | 10 | 0000 0000 0010 11 | 0000 0000 1011 | 0000 0111 1 | 1001 00 |
| 1 | 10 | 0000 0000 0010 10 | 0000 0000 1110 | 0000 1010 | 1001 01 |
| 2 | 10 | 0000 0000 0011 01 | 0000 0000 1101 | 0000 1101 | 1001 10 |
| 3 | 10 | 0000 0000 0110 0 | 0000 0001 100 | 0001 100 | 1001 11 |
| 0 | 11 | 0000 0000 0001 111 | 0000 0000 1000 | 0000 0101 1 | 1010 00 |
| 1 | 11 | 0000 0000 0001 110 | 0000 0000 1010 | 0000 0111 0 | 1010 01 |
| 2 | 11 | 0000 0000 0010 01 | 0000 0000 1001 | 0000 1001 | 1010 10 |
| 3 | 11 | 0000 0000 0011 00 | 0000 0001 000 | 0000 1100 | 1010 11 |
| 0 | 12 | 0000 0000 0001 011 | 0000 0000 0111 1 | 0000 0100 0 | 1011 00 |
| 1 | 12 | 0000 0000 0001 010 | 0000 0000 0111 0 | 0000 0101 0 | 1011 01 |
| 2 | 12 | 0000 0000 0001 101 | 0000 0000 0110 1 | 0000 0110 1 | 1011 10 |
| 3 | 12 | 0000 0000 0010 00 | 0000 0000 1100 | 0000 1000 | 1011 11 |
| 0 | 13 | 0000 0000 0000 1111 | 0000 0000 0101 1 | 0000 0011 01 | 1100 00 |
| 1 | 13 | 0000 0000 0000 001 | 0000 0000 0101 0 | 0000 0011 1 | 1100 01 |
| 2 | 13 | 0000 0000 0001 001 | 0000 0000 0100 1 | 0000 0100 1 | 1100 10 |
| 3 | 13 | 0000 0000 0001 100 | 0000 0000 0110 0 | 0000 0110 0 | 1100 11 |
| 0 | 14 | 0000 0000 0000 1011 | 0000 0000 0011 1 | 0000 0010 01 | 1101 00 |
| 1 | 14 | 0000 0000 0000 1110 | 0000 0000 0010 11 | 0000 0011 00 | 1101 01 |
| 2 | 14 | 0000 0000 0000 1101 | 0000 0000 0011 0 | 0000 0010 11 | 1101 10 |
| 3 | 14 | 0000 0000 0001 000 | 0000 0000 0100 0 | 0000 0010 10 | 1101 11 |
| 0 | 15 | 0000 0000 0000 0111 | 0000 0000 0010 01 | 0000 0001 01 | 1110 00 |
| 1 | 15 | 0000 0000 0000 1010 | 0000 0000 0010 00 | 0000 0010 00 | 1110 01 |
| 2 | 15 | 0000 0000 0000 1001 | 0000 0000 0010 10 | 0000 0001 11 | 1110 10 |
| 3 | 15 | 0000 0000 0000 1100 | 0000 0000 0000 1 | 0000 0001 10 | 1110 11 |
| 0 | 16 | 0000 0000 0000 0100 | 0000 0000 0001 11 | 0000 0000 01 | 1111 00 |
| 1 | 16 | 0000 0000 0000 0110 | 0000 0000 0001 10 | 0000 0001 00 | 1111 01 |
| 2 | 16 | 0000 0000 0000 0101 | 0000 0000 0001 01 | 0000 0000 11 | 1111 10 |
| 3 | 16 | 0000 0000 0000 1000 | 0000 0000 0001 00 | 0000 0000 10 | 1111 11 |
| Code | Value | Bit count | [T1s, TC] |
| 1 xxxx xxxx | >= 256 | 1 | [0, 0] |
| 0 1xxx xxxx | >= 128 | 2 | [1, 1] |
| 0 01xx xxxx | >= 64 | 3 | [2, 2] |
| 0 0011 xxxx | >= 48 | 5 | [3, 3] |
| 0 0010 1xxx | >= 40 | 6 | [0, 1] |
| 0 0010 0xxx | >= 32 | 6 | [1, 2] |
| 0 0001 1xxx | >= 24 | 6 | [3, 4] |
| 0 0001 01xx | >= 20 | 7 | [2, 3] |
| 0 0001 00xx | >= 16 | 7 | [3, 5] |
| 0 0000 111x | >= 14 | 8 | [0, 2] |
| 0 0000 110x | >= 12 | 8 | [1, 3] |
| 0 0000 101x | >= 10 | 8 | [2, 4] |
| 0 0000 100x | >= 8 | 8 | [3, 6] |
| 0 0000 0111 | 7 | 9 | [0, 3] |
| 0 0000 0110 | 6 | 9 | [1, 4] |
| 0 0000 0101 | 5 | 9 | [2, 5] |
| 0 0000 0100 | 4 | 9 | [3, 7] |
| Code | Value | Bit count | [T1s, TC] |
| 0000 0001 11xx xxxx | >= 448 | 10 | [0, 4] |
| 0000 0001 10xx xxxx | >= 384 | 10 | [1, 5] |
| 0000 0001 01xx xxxx | >= 320 | 10 | [2, 6] |
| 0000 0001 00xx xxxx | >= 256 | 10 | [3, 8] |
| 0000 0000 111x xxxx | >= 224 | 11 | [0, 5] |
| 0000 0000 110x xxxx | >= 192 | 11 | [1, 6] |
| 0000 0000 101x xxxx | >= 160 | 11 | [2, 7] |
| 0000 0000 100x xxxx | >= 128 | 11 | [3, 9] |
| 0000 0000 0111 1xxx | >= 120 | 13 | [0, 6] |
| 0000 0000 0111 0xxx | >= 112 | 13 | [1, 7] |
| 0000 0000 0110 1xxx | >= 104 | 13 | [2, 8] |
| 0000 0000 0110 0xxx | >= 96 | 13 | [3, 10] |
| 0000 0000 0101 1xxx | >= 88 | 13 | [0, 7] |
| 0000 0000 0101 0xxx | >= 80 | 13 | [1, 8] |
| 0000 0000 0100 1xxx | >= 72 | 13 | [2, 9] |
| 0000 0000 0100 0xxx | >= 64 | 13 | [0, 8] |
| 0000 0000 0011 11xx | >= 60 | 14 | [0, 9] |
| 0000 0000 0011 10xx | >= 56 | 14 | [1, 9] |
| 0000 0000 0011 01xx | >= 52 | 14 | [2, 10] |
| 0000 0000 0011 00xx | >= 48 | 14 | [3, 11] |
| 0000 0000 0010 11xx | >= 44 | 14 | [0, 10] |
| 0000 0000 0010 10xx | >= 40 | 14 | [1, 10] |
| 0000 0000 0010 01xx | >= 36 | 14 | [2, 11] |
| 0000 0000 0010 00xx | >= 32 | 14 | [3, 12] |
| 0000 0000 0001 111x | >= 30 | 15 | [0, 11] |
| 0000 0000 0001 110x | >= 28 | 15 | [1, 11] |
| 0000 0000 0001 101x | >= 26 | 15 | [2, 12] |
| 0000 0000 0001 100x | >= 24 | 15 | [3, 13] |
| 0000 0000 0001 011x | >= 22 | 15 | [0, 12] |
| 0000 0000 0001 010x | >= 20 | 15 | [1, 12] |
| 0000 0000 0001 001x | >= 18 | 15 | [2, 13] |
| 0000 0000 0001 000x | >= 16 | 15 | [3, 14] |
| 0000 0000 0000 1111 | 15 | 16 | [0, 13] |
| 0000 0000 0000 1110 | 14 | 16 | [1, 14] |
| 0000 0000 0000 1101 | 13 | 16 | [2, 14] |
| 0000 0000 0000 1100 | 12 | 16 | [3, 15] |
| 0000 0000 0000 1011 | 11 | 16 | [0, 14] |
| 0000 0000 0000 1010 | 10 | 16 | [1, 15] |
| 0000 0000 0000 1001 | 9 | 16 | [2, 15] |
| 0000 0000 0000 1000 | 8 | 16 | [3, 16] |
| 0000 0000 0000 0111 | 7 | 16 | [0, 15] |
| 0000 0000 0000 0110 | 6 | 16 | [1, 16] |
| 0000 0000 0000 0101 | 5 | 16 | [2, 16] |
| 0000 0000 0000 0100 | 4 | 16 | [0, 16] |
| 0000 0000 0000 001x | >= 2 | 15 | [1, 13] |
| Code | Value | Bit count | [T1s, TC] |
| 1 1xxx xxxx | >= 384 | 2 | [0, 0] |
| 1 0xxx xxxx | >= 256 | 2 | [1, 1] |
| 0 11xx xxxx | >= 192 | 3 | [2, 2] |
| 0 101x xxxx | >= 160 | 4 | [3, 3] |
| 0 100x xxxx | >= 128 | 4 | [3, 4] |
| 0 0111 xxxx | >= 112 | 5 | [1, 2] |
| 0 0110 xxxx | >= 96 | 5 | [3, 5] |
| 0 0101 1xxx | >= 88 | 6 | [0, 1] |
| 0 0101 0xxx | >= 80 | 6 | [1, 3] |
| 0 0100 1xxx | >= 72 | 6 | [2, 3] |
| 0 0100 0xxx | >= 64 | 6 | [3, 6] |
| 0 0011 1xxx | >= 56 | 6 | [0, 2] |
| 0 0011 0xxx | >= 48 | 6 | [1, 4] |
| 0 0010 1xxx | >= 40 | 6 | [2, 4] |
| 0 0010 0xxx | >= 32 | 6 | [3, 7] |
| 0 0001 11xx | >= 28 | 7 | [0, 3] |
| 0 0001 10xx | >= 24 | 7 | [1, 5] |
| 0 0001 01xx | >= 20 | 7 | [2, 5] |
| 0 0001 00xx | >= 16 | 7 | [3, 8] |
| 0 0000 111x | >= 14 | 8 | [0, 4] |
| 0 0000 110x | >= 12 | 8 | [1, 6] |
| 0 0000 101x | >= 10 | 8 | [2, 6] |
| 0 0000 100x | >= 8 | 8 | [0, 5] |
| 0 0000 0111 | 7 | 9 | [0, 6] |
| 0 0000 0110 | 6 | 9 | [1, 7] |
| 0 0000 0101 | 5 | 9 | [2, 7] |
| 0 0000 0100 | 4 | 9 | [3, 9] |
| Code | Value | Bit count | [T1s, TC] |
| 00 0000 0111 1xxx | >= 120 | 11 | [0, 7] |
| 00 0000 0111 0xxx | >= 112 | 11 | [1, 8] |
| 00 0000 0110 1xxx | >= 104 | 11 | [2, 8] |
| 00 0000 0110 0xxx | >= 96 | 11 | [3, 10] |
| 00 0000 0101 1xxx | >= 88 | 11 | [0, 8] |
| 00 0000 0101 0xxx | >= 80 | 11 | [1, 9] |
| 00 0000 0100 1xxx | >= 72 | 11 | [2, 9] |
| 00 0000 0100 0xxx | >= 64 | 11 | [3, 11] |
| 00 0000 0011 11xx | >= 60 | 12 | [0, 9] |
| 00 0000 0011 10xx | >= 56 | 12 | [1, 10] |
| 00 0000 0011 01xx | >= 52 | 12 | [2, 10] |
| 00 0000 0011 00xx | >= 48 | 12 | [3, 12] |
| 00 0000 0010 11xx | >= 44 | 12 | [0, 10] |
| 00 0000 0010 10xx | >= 40 | 12 | [1, 11] |
| 00 0000 0010 01xx | >= 36 | 12 | [2, 11] |
| 00 0000 0010 00xx | >= 32 | 12 | [0, 11] |
| 00 0000 0001 111x | >= 30 | 13 | [0, 12] |
| 00 0000 0001 110x | >= 28 | 13 | [1, 12] |
| 00 0000 0001 101x | >= 26 | 13 | [2, 12] |
| 00 0000 0001 100x | >= 24 | 13 | [3, 13] |
| 00 0000 0001 011x | >= 22 | 13 | [0, 13] |
| 00 0000 0001 010x | >= 20 | 13 | [1, 13] |
| 00 0000 0001 001x | >= 18 | 13 | [2, 13] |
| 00 0000 0001 000x | >= 16 | 13 | [3, 14] |
| 00 0000 0000 111x | >= 14 | 13 | [0, 14] |
| 00 0000 0000 110x | >= 12 | 13 | [2, 14] |
| 00 0000 0000 1011 | 11 | 14 | [1, 14] |
| 00 0000 0000 1010 | 10 | 14 | [2, 15] |
| 00 0000 0000 1001 | 9 | 14 | [0, 15] |
| 00 0000 0000 1000 | 8 | 14 | [1, 15] |
| 00 0000 0000 0111 | 7 | 14 | [0, 16] |
| 00 0000 0000 0110 | 6 | 14 | [1, 16] |
| 00 0000 0000 0101 | 5 | 14 | [2, 16] |
| 00 0000 0000 0100 | 4 | 14 | [3, 16] |
| 00 0000 0000 001x | >= 2 | 13 | [3, 15] |
| Code | Value | Bit count | [T1s, TC] |
| 111 1xxx | >= 120 | 4 | [0, 0] |
| 111 0xxx | >= 112 | 4 | [1, 1] |
| 110 1xxx | >= 104 | 4 | [2, 2] |
| 110 0xxx | >= 96 | 4 | [3, 3] |
| 101 1xxx | >= 88 | 4 | [3, 4] |
| 101 0xxx | >= 80 | 4 | [3, 5] |
| 100 1xxx | >= 72 | 4 | [3, 6] |
| 100 0xxx | >= 64 | 4 | [3, 7] |
| 011 11xx | >= 60 | 5 | [1, 2] |
| 011 10xx | >= 56 | 5 | [2, 3] |
| 011 01xx | >= 52 | 5 | [3, 8] |
| 011 00xx | >= 48 | 5 | [1, 3] |
| 010 11xx | >= 44 | 5 | [2, 4] |
| 010 10xx | >= 40 | 5 | [1, 4] |
| 010 01xx | >= 36 | 5 | [2, 5] |
| 010 00xx | >= 32 | 5 | [1, 5] |
| 001 111x | >= 30 | 6 | [0, 1] |
| 001 110x | >= 28 | 6 | [1, 6] |
| 001 101x | >= 26 | 6 | [2, 6] |
| 001 100x | >= 24 | 6 | [3, 9] |
| 001 011x | >= 22 | 6 | [0, 2] |
| 001 010x | >= 20 | 6 | [1, 7] |
| 001 001x | >= 18 | 6 | [2, 7] |
| 001 000x | >= 16 | 6 | [0, 3] |
| 000 1111 | 15 | 7 | [0, 4] |
| 000 1110 | 14 | 7 | [1, 8] |
| 000 1101 | 13 | 7 | [2, 8] |
| 000 1100 | 12 | 7 | [3, 10] |
| 000 1011 | 11 | 7 | [0, 5] |
| Code | Value | Bit count | [T1s, TC] |
| 00 0101 0xxx | >= 80 | 7 | [2, 9] |
| 00 0100 1xxx | >= 72 | 7 | [0, 6] |
| 00 0100 0xxx | >= 64 | 7 | [0, 7] |
| 00 0011 11xx | >= 60 | 8 | [0, 8] |
| 00 0011 10xx | >= 56 | 8 | [1, 9] |
| 00 0011 01xx | >= 52 | 8 | [2, 10] |
| 00 0011 00xx | >= 48 | 8 | [3, 11] |
| 00 0010 11xx | >= 44 | 8 | [0, 9] |
| 00 0010 10xx | >= 40 | 8 | [1, 10] |
| 00 0010 01xx | >= 36 | 8 | [2, 11] |
| 00 0010 00xx | >= 32 | 8 | [3, 12] |
| 00 0001 111x | >= 30 | 9 | [0, 10] |
| 00 0001 110x | >= 28 | 9 | [1, 11] |
| 00 0001 101x | >= 26 | 9 | [2, 12] |
| 00 0001 100x | >= 24 | 9 | [3, 13] |
| 00 0001 011x | >= 22 | 9 | [0, 11] |
| 00 0001 010x | >= 20 | 9 | [1, 12] |
| 00 0001 001x | >= 18 | 9 | [2, 13] |
| 00 0001 000x | >= 16 | 9 | [0, 12] |
| 00 0000 111x | >= 14 | 9 | [1, 13] |
| 00 0000 1101 | 13 | 10 | [0, 13] |
| 00 0000 1100 | 12 | 10 | [1, 14] |
| 00 0000 1011 | 11 | 10 | [2, 14] |
| 00 0000 1010 | 10 | 10 | [3, 14] |
| 00 0000 1001 | 9 | 10 | [0, 14] |
| 00 0000 1000 | 8 | 10 | [1, 15] |
| 00 0000 0111 | 7 | 10 | [2, 15] |
| 00 0000 0110 | 6 | 10 | [3, 15] |
| 00 0000 0101 | 5 | 10 | [0, 15] |
| 00 0000 0100 | 4 | 10 | [1, 16] |
| 00 0000 0011 | 3 | 10 | [2, 16] |
| 00 0000 0010 | 2 | 10 | [3, 16] |
| 00 0000 0001 | 1 | 10 | [0, 16] |
| Code | Value | Bit count | [T1s, TC] |
| 1xxx xxxx | >= 128 | 1 | [1, 1] |
| 01xx xxxx | >= 64 | 2 | [0, 0] |
| 001x xxxx | >= 32 | 3 | [2, 2] |
| 0001 11xx | >= 28 | 6 | [0, 1] |
| 0001 10xx | >= 24 | 6 | [1, 2] |
| 0001 01xx | >= 20 | 6 | [3, 3] |
| 0001 00xx | >= 16 | 6 | [0, 2] |
| 0000 11xx | >= 12 | 6 | [0, 3] |
| 0000 10xx | >= 8 | 6 | [0, 4] |
| 0000 011x | >= 6 | 7 | [1, 3] |
| 0000 010x | >= 4 | 7 | [2, 3] |
| 0000 0011 | 3 | 8 | [1, 4] |
| 0000 0010 | 2 | 8 | [2, 4] |
| 0000 000x | >= 0 | 7 | [3, 4] |
| run_before (RB) | zero_left (ZL) | ||||||
| 1 | 2 | 3 | 4 | 5 | 6 | > 6 | |
| 0 | 1 | 1 | 11 | 11 | 11 | 11 | 111 |
| 1 | 0 | 01 | 10 | 10 | 10 | 000 | 110 |
| 2 | 00 | 01 | 01 | 011 | 001 | 101 | |
| 3 | 00 | 001 | 010 | 011 | 100 | ||
| 4 | 000 | 001 | 010 | 011 | |||
| 5 | 000 | 101 | 010 | ||||
| 6 | 100 | 001 | |||||
| 7 | 0001 | ||||||
| 8 | 00001 | ||||||
| 9 | 000001 | ||||||
| 10 | 0000001 | ||||||
| 11 | 00000001 | ||||||
| 12 | 000000001 | ||||||
| 13 | 0000000001 | ||||||
| 14 | 00000000001 | ||||||
| TZ | TotalCoeff(coeff_token) | |||||||
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | |
| 0 | 1 | 111 | 0101 | 0001 1 | 0101 | 0000 01 | 0000 01 | 0000 01 |
| 1 | 011 | 110 | 111 | 111 | 0100 | 0000 1 | 0000 1 | 0001 |
| 2 | 010 | 101 | 110 | 0101 | 0011 | 111 | 101 | 0000 1 |
| 3 | 0011 | 100 | 101 | 0100 | 111 | 110 | 100 | 011 |
| 4 | 0010 | 011 | 0100 | 100 | 110 | 101 | 011 | 11 |
| 5 | 0001 1 | 0101 | 0011 | 101 | 101 | 100 | 11 | 10 |
| 6 | 0001 0 | 0100 | 100 | 100 | 100 | 011 | 010 | 010 |
| 7 | 0001 11 | 0011 | 011 | 0011 | 011 | 010 | 0001 | 001 |
| 8 | 0000 10 | 0010 | 0010 | 011 | 0010 | 0001 | 001 | 0000 00 |
| 9 | 0000 011 | 0001 1 | 0001 1 | 0010 | 0000 1 | 001 | 0000 00 | |
| 10 | 0000 010 | 0001 0 | 0001 0 | 0001 0 | 0001 | 0000 00 | ||
| 11 | 0000 0011 | 0000 11 | 0000 01 | 0000 1 | 0000 0 | |||
| 12 | 0000 0010 | 0000 10 | 0000 1 | 0000 0 | ||||
| 13 | 0000 0001 1 | 0000 01 | 0000 00 | |||||
| 14 | 0000 0001 0 | 0000 00 | ||||||
| 15 | 0000 0000 1 | |||||||
| TZ | TotalCoeff(coeff_token) | |||||||
| 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | |
| 0 | 0000 01 | 0000 01 | 0000 1 | 0000 | 0000 | 000 | 00 | 0 |
| 1 | 0001 | 0000 00 | 0000 0 | 0001 | 0001 | 001 | 01 | 1 |
| 2 | 0000 1 | 0001 | 001 | 001 | 01 | 1 | 1 | |
| 3 | 011 | 11 | 11 | 010 | 1 | 01 | ||
| 4 | 11 | 10 | 10 | 1 | 001 | |||
| 5 | 10 | 001 | 01 | 011 | ||||
| 6 | 010 | 01 | 0001 | |||||
| 7 | 001 | 0000 1 | ||||||
| 8 | 0000 00 | |||||||
| 9 | ||||||||
| 10 | ||||||||
| 11 | ||||||||
| 12 | ||||||||
| 13 | ||||||||
| 14 | ||||||||
| 15 | ||||||||
| TZ | TotalCoeff (TC) | ||
| 1 | 2 | 3 | |
| 0 | 1 | 1 | 1 |
| 1 | 01 | 01 | 0 |
| 2 | 001 | 00 | |
| 3 | 000 | ||
Claims (17)
- (a) TotalCoeffs(TC)와 TrailingOnes(T1s)의 조합으로 구성된 Coeff_Token의 디코딩 단계, (b) 각각의 0이 아닌 계수들 앞에 있는 0의 개수인 run_before의 디코딩 단계 및 (c) 마지막 0이 아닌 계수 이전의 0인 계수들의 개수인 total_zeros의 디코딩 단계를 포함하되,상기 Coeff_Token의 디코딩 단계, 상기 run_before의 디코딩 단계 및 상기 total_zeros의 디코딩 단계는 각각(1) VLC 코드들을 소정의 기준에 따라 정렬 및 그룹으로 분류하는 단계;(2) 상기 각 그룹마다 디코딩을 위한 산술식을 지정하는 단계; 및(3) 상기 산술식에 따라 디코딩을 수행하는 단계를 포함하는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제1항에 있어서,상기 Coeff_Token의 디코딩 단계는(a-1) VLC 코드들을 비트의 길이 및 코드값의 순서대로 정렬하는 단계;(a-2) 상기 정렬된 VLC 코드를 관련있는 그룹으로 분류하는 단계; 및(a-3) 상기 분류된 그룹마다 제1 산술식을 각각 정의하고 상기 제1 산술식을 이용하여 디코딩하는 단계를 포함하는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제2항에 있어서,상기 Coeff_Token의 디코딩 단계는 좌측 4x4블록의 DCT 계수의 개수[nA]와 상단 4x4블록의 DCT 계수의 개수[nB]의 평균값인 nC(=Round[(nA+nB)/2])에 따라 VLC0 테이블 내지 VLC2 테이블 중 어느 하나를 선택하고, 상기 선택된 테이블에 포함된 VLC 코드에 대하여 상기 (a-1) 단계를 수행하는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제3항에 있어서,상기 nC값이 -1인 경우에는 크로마 DC 테이블이 선택되며, 상기 nC값이 0 이상 2 미만인 경우에는 VLC0 테이블이 선택되며, 상기 nC값이 2 이상 4 미만인 경우에는 VLC1 테이블이 선택되며, 상기 nC값이 4 이상 8 미만인 경우에는 VLC2 테이블이 선택되는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제2항에 있어서,상기 (a-1) 단계는 상기 VLC 코드들에서 비트 1's의 위치, 연속된 VLC 코드들의 값의 연속성 및 상기 VLC 코드들 중에서 Exp-Golomb 코드의 prefix 인 m: VLC 코드에서 첫 번째 비트 1 이 나오기까지의 비트 0의 개수에 따라 상기 그룹으로 분류하는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제4항에 있어서,상기 VLC0 테이블이 선택되는 경우, 상기 (a-1) 단계는 상기 VLC 코드들을 9 비트의 길이를 가지는 이진수로 표현하는 단계를 포함하고, 상기 (a-2) 단계는 상기 표현된 이진수를 이진수의 값의 크기에 따라 3개의 그룹으로 분류하는 단계를 포함하고, (a-3) 단계는 상기 분류된 3개의 그룹 각각에 FAST_GETM을 이용하거나 산술식 [T1s=(code&256)?0:(3-f); TC=T1s], [T1s=f+(f>>1); TC=T1s+1], [T1s=7-(code>>g); TC=T1s+(3-g)+((T1s+1)>>2)] 중 선택된 어느 하나를 할당하여 디코딩하는 단계를 포함하는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제4항에 있어서,상기 VLC0 테이블이 선택되는 경우, 상기 (a-1) 단계는 상기 VLC 코드들을 16 비트의 길이를 가지는 이진수로 표현하는 단계를 포함하고, 상기 (a-2) 단계는 상기 표현된 이진수를 이진수의 값의 크기에 따라 5개의 그룹으로 분류하는 단계를 포함하고, (a-3) 단계는 상기 분류된 5개의 그룹 각각에 산술식 [T1s=7-(code16>>(g+5)); TC=T1s+5-g+((T1s+1)>>2)], [T1s=3-(f&3); TC=T1s+6+((15-f)>>2)+((T1s+1)>>2)], [T1s=3-(f&3); TC=T1s+10-(g<<1)+((15-f)>>2)+((4-T1s)>>2)], [T1s=3-(code16&3); TC=T1s+12+((15-code16)>>2)+((code16&2)>>1)] 및 [T1s=1-g; TC=13+3*g] 중 선택된 어느 하나를 할당하여 디코딩하는 단계를 포함하는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제4항에 있어서,상기 VLC1 테이블이 선택되는 경우, 상기 (a-1) 단계는 상기 VLC 코드들을 9 비트의 길이를 가지는 이진수로 표현하는 단계를 포함하고, 상기 (a-2) 단계는 상기 표현된 이진수를 이진수의 값의 크기에 따라 3개의 그룹으로 분류하는 단계를 포함하고, (a-3) 단계는 상기 분류된 3개의 그룹 각각에 산술식 [T1s=(g<<1)+(f>>1); TC=T1s+((g+f)>>2)], [T1s=3-((code>>f)&(3-h)); TC=(3-g)+(k<<1)+(k>>1)], [T1s=((f-g)==3)?0:(7-f); TC=T1s+(6-g)-(k&(f&1))] 중 선택된 어느 하나를 할당하고 디코딩하는 단계를 포함하는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제4항에 있어서,상기 VLC1 테이블이 선택되는 경우, 상기 (a-1) 단계는 상기 VLC 코드들을 14 비트의 길이를 가지는 이진수로 표현하는 단계를 포함하고, 상기 (a-2) 단계는 상기 표현된 이진수를 이진수의 값의 크기에 따라 4개의 그룹으로 분류하는 단계를 포함하고, (a-3) 단계는 상기 분류된 4개의 그룹 각각에 산술식 [T1s=3-(f&3); TC=T1s+9-(g<<1)+((15-f)>>2) -((f&1)&(T1s>>1))], [T1s=3-(f&3); TC=12+((15-f)>>2+((T1s+1)>>2)], [T1s=12-code14-3*((13-code14)>>2); TC=17-((code14+1)>>2)] 및 [T1s=(code14<4) ? 3 : (7-code14); TC=15+g] 중 선택된 어느 하나를 할당하고 디코딩하는 단계를 포함하는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제4항에 있어서,상기 VLC2 테이블이 선택되는 경우, 상기 (a-1) 단계는 상기 VLC 코드들을 7 비트의 길이를 가지는 이진수로 표현하는 단계를 포함하고, 상기 (a-2) 단계는 상기 표현된 이진수를 이진수의 값의 크기에 따라 4개의 그룹으로 분류하는 단계를 포함하고, (a-3) 단계는 상기 분류된 4개의 그룹 각각에 산술식 [T1s=(f>3)?3:f; TC=f], [T1s=(f<4)?f:(1+(f&1)); TC=(f==3)?8:(T1s+(f>>1)+((9-f)>>3))], [T1s=((15-code)&3)*(1-g); TC=(T1s==0)?(7-(code>>2)) : (((T1s+7)>>1)<<1)], [T1s=(f&3); TC=(g<<2)+(1+(f>>2))+(g&1)] 중 선택된 어느 하나를 할당하고 디코딩하는 단계를 포함하는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제4항에 있어서,상기 VLC2 테이블이 선택되는 경우, 상기 (a-1) 단계는 상기 VLC 코드들을 10 비트의 길이를 가지는 이진수로 표현하는 단계를 포함하고, 상기 (a-2) 단계는 상기 표현된 이진수를 이진수의 값의 크기에 따라 4개의 그룹으로 분류하는 단계를 포함하고, (a-3) 단계는 상기 분류된 4개의 그룹 각각에 산술식 [T1s=((f+6)>>4)<<1; TC=T1s+7-(f&1)], [T1s=3-(f&3); TC=T1s+((5-g)<<1)+((15-f)>>2)], [T1s=(code10&2)>>1; TC=T1s+12] 및 [T1s=(13-code10)&3; TC=16-((code10-1) >>2)] 중 선택된 어느 하나를 할당하고 디코딩하는 단계를 포함하는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제4항에 있어서,상기 크로마 DC 테이블이 선택되는 경우, 상기 (a-1) 단계는 상기 VLC 코드들을 8 비트의 길이를 가지는 이진수로 표현하는 단계를 포함하고, 상기 (a-2) 단계는 상기 표현된 이진수를 이진수의 값의 크기에 따라 4개의 그룹으로 분류하는 단계를 포함하고, (a-3) 단계는 상기 분류된 4개의 그룹 각각에 산술식 [T1s=(g>>2)+(((9-g) >>3)<<1); TC=T1s], [T1s=((g-1)>>2) * (f+(f>>1)); TC=f+1-(((f+1)>>2)<<1)], [T1s=4-(code8>>g); TC=4-g] 및 [T1s=3; TC=4] 중 선택된 어느 하나를 할당하고 디코딩하는 단계를 포함하는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제1항에 있어서,상기 run_before의 디코딩 단계는(b-1) zero_left 값에 따라 테이블로 분류하고, 상기 테이블 내의 VLC 코드들을 그룹으로 분류하는 단계; 및(b-2) 상기 분류된 그룹마다 제2 산술식을 각각 정의하고, 상기 제2 산술식을 이용하여 디코딩하는 단계를 포함하는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제13항에 있어서,상기 (b-1) 단계는 zero_left 값에 따라 7개의 테이블로 분류하고 상기 7개의 테이블에 포함된 VLC 값들을 5개의 그룹으로 분류하는 단계를 포함하며, 상기 (b-2) 단계는 상기 분류된 5개의 그룹 각각에 산술식 [RB=ZL-(code&((code>>1)+1))], [RB=3-(code>>1)], [RB=(ZL<6)?f:((code<2)?(code+1):f)], [RB=7-(code11>>9)] 및 [RB=4+m] 중 선택된 어느 하나를 할당하고 디코딩하는 단계를 포함하는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제1항에 있어서,상기 total_zeros의 디코딩 단계는(c-1) TotalCoeff의 값에 따라 VLC 코드 값을 분류하여 테이블을 작성하는 단계;(c-2) 조건문의 개수가 소정 기준 이하인 테이블에 대하여 제3 산술식을 정의하고 상기 제3 산술식을 이용하여 디코딩하는 단계; 및(c-3) 상기 조건문의 개수가 소정 기준 이상인 테이블에 대하여 TLBS 방법으로 디코딩하는 단계를 포함하는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제15항에 있어서,상기 (c-1) 단계는 상기 TotalCoeff의 값에 따라 15개의 total_zeros 테이블로 분류하는 단계를 포함하며, 상기 (c-2) 단계는 TotalCoeff의 값이 1, 13, 14 및 15인 total_zeros 테이블에 대하여 상기 제3 산술식을 정의하고 상기 제3 산술식에 따라 디코딩하는 단계를 포함하며, 상기 (c-3) 단계는 TotalCoeff의 값이 2 내지 12인 total_zeros 테이블에 대하여 상기 TLBS 방법으로 디코딩하는 단계를 포함하는 것을 특징으로 하는 CAVLC 디코딩 방법.
- 제15항에 있어서,상기 (c-2) 단계는 TotalCoeff의 값이 1, 13, 14 및 15인 total_zeros 테이블 각각에 대하여 산술식 [TZ=0], [TZ=(m<<1)-((code>>(7-m))&1)], [TZ=16-code], [TZ=((code>>g)&(h+1))+(h-g)], 및 [TZ=code&(g+1)] 중 선택된 어느 하나를 할당하고 디코딩하는 단계를 포함하는 것을 특징으로 하는 CAVLC 디코딩 방법.
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020060042514A KR100813877B1 (ko) | 2006-05-11 | 2006-05-11 | 효율적인 h.264/avc cavlc 디코딩 방법 |
| US11/608,262 US7423562B2 (en) | 2006-05-11 | 2006-12-08 | Effective decoding method of H.264/AVC context-based adaptive variable length coding |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020060042514A KR100813877B1 (ko) | 2006-05-11 | 2006-05-11 | 효율적인 h.264/avc cavlc 디코딩 방법 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR20070109487A KR20070109487A (ko) | 2007-11-15 |
| KR100813877B1 true KR100813877B1 (ko) | 2008-03-18 |
Family
ID=38684603
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020060042514A Expired - Fee Related KR100813877B1 (ko) | 2006-05-11 | 2006-05-11 | 효율적인 h.264/avc cavlc 디코딩 방법 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US7423562B2 (ko) |
| KR (1) | KR100813877B1 (ko) |
Families Citing this family (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4368575B2 (ja) * | 2002-04-19 | 2009-11-18 | パナソニック株式会社 | 可変長復号化方法、可変長復号化装置およびプログラム |
| JP4379444B2 (ja) * | 2006-07-26 | 2009-12-09 | ソニー株式会社 | 復号化方法、復号化方法のプログラム、復号化方法のプログラムを記録した記録媒体、復号化装置 |
| US8098735B2 (en) * | 2006-12-21 | 2012-01-17 | Lsi Corporation | Efficient 8×8 CABAC residual block decode |
| US7501964B2 (en) * | 2007-04-16 | 2009-03-10 | Texas Instruments Incorporated | Entropy coding for digital codecs |
| KR100923948B1 (ko) * | 2007-11-26 | 2009-10-29 | 한국전자통신연구원 | 어플리케이션 특정 명령어 프로세서에 기반한 h.264cavlc 디코딩 방법 |
| KR100935856B1 (ko) * | 2007-11-29 | 2010-01-07 | 한국전자통신연구원 | H.264 cavlc 디코딩에서의 cavlc 테이블 탐색방법 |
| US8542727B2 (en) * | 2007-12-31 | 2013-09-24 | Intel Corporation | Systems and apparatuses for performing CABAC parallel encoding and decoding |
| KR100941059B1 (ko) * | 2008-01-23 | 2010-02-05 | 경상대학교산학협력단 | 새로운 복호화 테이블을 기반으로 하는 저전력 토탈 제로정보의 복호화 방법 및 장치 |
| US7592937B1 (en) * | 2008-06-02 | 2009-09-22 | Mediatek Inc. | CABAC decoding unit and method |
| US8138956B2 (en) * | 2008-06-02 | 2012-03-20 | Mediatek Inc. | CABAC encoder and CABAC encoding method |
| KR101501568B1 (ko) * | 2008-07-04 | 2015-03-12 | 에스케이 텔레콤주식회사 | 영상 부호화 및 복호화 장치 및, 방법 |
| US7773004B2 (en) * | 2008-07-08 | 2010-08-10 | Qualcomm Incorporated | CAVLC run-before decoding scheme |
| CN101873496B (zh) * | 2010-05-24 | 2012-02-29 | 杭州海康威视软件有限公司 | 一种h.264的基于上下文自适应变长解码方法及装置 |
| CN102377994B (zh) * | 2010-08-05 | 2014-05-07 | 富士通株式会社 | 上下文自适应可变长度编码方法和系统 |
| CN102547260B (zh) * | 2010-12-22 | 2014-11-19 | 联芯科技有限公司 | 基于上下文自适应的可变长编码的解码方法及系统 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20030062913A (ko) * | 2002-01-21 | 2003-07-28 | 주식회사 엘지이아이 | 가변 길이 복호화기 |
| KR20050061777A (ko) * | 2003-12-18 | 2005-06-23 | 엘지전자 주식회사 | Cavlc 복호 방법 |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7099387B2 (en) * | 2002-03-22 | 2006-08-29 | Realnetorks, Inc. | Context-adaptive VLC video transform coefficients encoding/decoding methods and apparatuses |
| JP4271134B2 (ja) * | 2004-12-10 | 2009-06-03 | 株式会社東芝 | 可変長符号化デコーダおよびデコード方法 |
| US7292163B1 (en) * | 2006-04-14 | 2007-11-06 | Xilinx, Inc. | Circuit for and method of encoding a data stream |
-
2006
- 2006-05-11 KR KR1020060042514A patent/KR100813877B1/ko not_active Expired - Fee Related
- 2006-12-08 US US11/608,262 patent/US7423562B2/en not_active Expired - Fee Related
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20030062913A (ko) * | 2002-01-21 | 2003-07-28 | 주식회사 엘지이아이 | 가변 길이 복호화기 |
| KR20050061777A (ko) * | 2003-12-18 | 2005-06-23 | 엘지전자 주식회사 | Cavlc 복호 방법 |
Also Published As
| Publication number | Publication date |
|---|---|
| US7423562B2 (en) | 2008-09-09 |
| KR20070109487A (ko) | 2007-11-15 |
| US20070262886A1 (en) | 2007-11-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR100813877B1 (ko) | 효율적인 h.264/avc cavlc 디코딩 방법 | |
| US7496143B2 (en) | Method and arrangement for coding transform coefficients in picture and/or video coders and decoders and a corresponding computer program and a corresponding computer-readable storage medium | |
| CN101164340B (zh) | Cabac解码系统及方法 | |
| JP4886755B2 (ja) | コンテキスト適応バイナリ算術符号化と復号化のシステム及び方法 | |
| US9338478B2 (en) | Video compression using multiple variable length coding methods for multiple types of transform coefficient blocks | |
| KR100856398B1 (ko) | 복수 매핑 테이블을 이용한 가변장 부호화 및 복호화방법과 그 장치 | |
| US20040126028A1 (en) | Image encoding method, image decoding method, image encoding apparatus, image decoding apparatus, image encoding program, and image decoding program | |
| US20040240559A1 (en) | Context adaptive binary arithmetic code decoding engine | |
| Hu et al. | A new lossless compression scheme based on Huffman coding scheme for image compression | |
| US20070126853A1 (en) | Variable length codes for scalable video coding | |
| EP2112765A1 (en) | Method for encoding a sequence of integers, storage device and signal carrying an encoded integer sequence and method for decoding a sequence of integers | |
| US20070053425A1 (en) | Variable length codes for scalable video coding | |
| CN100471279C (zh) | 一种基于上下文自适应变长解码的方法 | |
| Hoffman et al. | High-throughput CAVLC architecture for real-time H. 264 coding using reconfigurable devices | |
| KR100753282B1 (ko) | Cavlc 디코딩을 위한 vlc 테이블 선택방법 및 그cavlc 디코딩방법 | |
| KR100848905B1 (ko) | 가변 길이 복호화기 | |
| CN101188753B (zh) | 一种视频熵解码查找表的构造方法及视频熵解码方法 | |
| Yeo et al. | High throughput parallel decoding method for H. 264/AVC CAVLC | |
| Hu et al. | A novel two-stage lossless image compression scheme | |
| Sima et al. | Variable Length Decoder Implemented on a TriMedia/CPU64 Reconfigurable Functional Unit | |
| CN101258756A (zh) | 用于可伸缩视频编码的可变长度编码 | |
| KR20010010964A (ko) | 동영상 부호화 방법 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A201 | Request for examination | ||
| PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
| PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
| R17-X000 | Change to representative recorded |
St.27 status event code: A-3-3-R10-R17-oth-X000 |
|
| D13-X000 | Search requested |
St.27 status event code: A-1-2-D10-D13-srh-X000 |
|
| D14-X000 | Search report completed |
St.27 status event code: A-1-2-D10-D14-srh-X000 |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
St.27 status event code: A-1-2-D10-D21-exm-PE0902 |
|
| P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
| P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
| PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
St.27 status event code: A-1-2-D10-D22-exm-PE0701 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
St.27 status event code: A-2-4-F10-F11-exm-PR0701 |
|
| PR1002 | Payment of registration fee |
St.27 status event code: A-2-2-U10-U11-oth-PR1002 Fee payment year number: 1 |
|
| PG1601 | Publication of registration |
St.27 status event code: A-4-4-Q10-Q13-nap-PG1601 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 4 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 5 |
|
| FPAY | Annual fee payment |
Payment date: 20130111 Year of fee payment: 6 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 6 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
| FPAY | Annual fee payment |
Payment date: 20131231 Year of fee payment: 7 |
|
| P22-X000 | Classification modified |
St.27 status event code: A-4-4-P10-P22-nap-X000 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 7 |
|
| LAPS | Lapse due to unpaid annual fee | ||
| PC1903 | Unpaid annual fee |
St.27 status event code: A-4-4-U10-U13-oth-PC1903 Not in force date: 20150311 Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE |
|
| PC1903 | Unpaid annual fee |
St.27 status event code: N-4-6-H10-H13-oth-PC1903 Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE Not in force date: 20150311 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |
|
| PN2301 | Change of applicant |
St.27 status event code: A-5-5-R10-R13-asn-PN2301 St.27 status event code: A-5-5-R10-R11-asn-PN2301 |