annotate cavsdata.h @ 12530:63edd10ad4bc libavcodec tip

Try to fix crashes introduced by r25218 r25218 made assumptions about the existence of past reference frames that weren't necessarily true.
author darkshikari
date Tue, 28 Sep 2010 09:06:22 +0000
parents fdafbcef52f5
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
1 /*
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
2 * Chinese AVS video (AVS1-P2, JiZhun profile) decoder.
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
3 * Copyright (c) 2006 Stefan Gehrer <stefan.gehrer@gmx.de>
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
4 *
3947
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3471
diff changeset
5 * This file is part of FFmpeg.
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3471
diff changeset
6 *
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3471
diff changeset
7 * FFmpeg is free software; you can redistribute it and/or
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
8 * modify it under the terms of the GNU Lesser General Public
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
9 * License as published by the Free Software Foundation; either
3947
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3471
diff changeset
10 * version 2.1 of the License, or (at your option) any later version.
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
11 *
3947
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3471
diff changeset
12 * FFmpeg is distributed in the hope that it will be useful,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
15 * Lesser General Public License for more details.
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
16 *
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
17 * You should have received a copy of the GNU Lesser General Public
3947
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3471
diff changeset
18 * License along with FFmpeg; if not, write to the Free Software
5215
2b72f9bc4f06 license header consistency cosmetics
diego
parents: 5169
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
20 */
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
21
7760
c4a4495715dd Globally rename the header inclusion guard names.
stefano
parents: 5830
diff changeset
22 #ifndef AVCODEC_CAVSDATA_H
c4a4495715dd Globally rename the header inclusion guard names.
stefano
parents: 5830
diff changeset
23 #define AVCODEC_CAVSDATA_H
5163
9ecbfc0c82bf add multiple inclusion guards to headers
mru
parents: 4944
diff changeset
24
4944
5d4544d7cbbc move defines and enums out of cavsdata.h
aurel
parents: 4917
diff changeset
25 #include "cavs.h"
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
26
5249
dc2579bede07 prepare splitting decoder-only parts into own file:
stefang
parents: 5242
diff changeset
27 const uint8_t ff_cavs_partition_flags[30] = {
3469
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
28 0, //I_8X8
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
29 0, //P_SKIP
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
30 0, //P_16X16
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
31 SPLITH, //P_16X8
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
32 SPLITV, //P_8X16
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
33 SPLITH|SPLITV, //P_8X8
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
34 SPLITH|SPLITV, //B_SKIP
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
35 SPLITH|SPLITV, //B_DIRECT
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
36 0, //B_FWD_16X16
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
37 0, //B_BWD_16X16
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
38 0, //B_SYM_16X16
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
39 FWD0|FWD1 |SPLITH,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
40 FWD0|FWD1 |SPLITV,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
41 BWD0|BWD1 |SPLITH,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
42 BWD0|BWD1 |SPLITV,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
43 FWD0|BWD1 |SPLITH,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
44 FWD0|BWD1 |SPLITV,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
45 BWD0|FWD1 |SPLITH,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
46 BWD0|FWD1 |SPLITV,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
47 FWD0|FWD1 |SYM1|SPLITH,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
48 FWD0|FWD1 |SYM1 |SPLITV,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
49 BWD0|FWD1 |SYM1|SPLITH,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
50 BWD0|FWD1 |SYM1 |SPLITV,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
51 FWD0|FWD1|SYM0 |SPLITH,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
52 FWD0|FWD1|SYM0 |SPLITV,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
53 FWD0|BWD1|SYM0 |SPLITH,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
54 FWD0|BWD1|SYM0 |SPLITV,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
55 FWD0|FWD1|SYM0|SYM1|SPLITH,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
56 FWD0|FWD1|SYM0|SYM1 |SPLITV,
c9059c843d4c change partition flags SYM -> FWD|SYM
stefang
parents: 3458
diff changeset
57 SPLITH|SPLITV, //B_8X8 = 29
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
58 };
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
59
5249
dc2579bede07 prepare splitting decoder-only parts into own file:
stefang
parents: 5242
diff changeset
60 const uint8_t ff_cavs_scan3x3[4] = {4,5,7,8};
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
61
5249
dc2579bede07 prepare splitting decoder-only parts into own file:
stefang
parents: 5242
diff changeset
62 const uint8_t ff_cavs_chroma_qp[64] = {
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
63 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
64 16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
65 32,33,34,35,36,37,38,39,40,41,42,42,43,43,44,44,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
66 45,45,46,46,47,47,48,48,48,49,49,49,50,50,50,51
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
67 };
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
68
5249
dc2579bede07 prepare splitting decoder-only parts into own file:
stefang
parents: 5242
diff changeset
69 const uint8_t ff_cavs_dequant_shift[64] = {
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
70 14,14,14,14,14,14,14,14,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
71 13,13,13,13,13,13,13,13,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
72 13,12,12,12,12,12,12,12,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
73 11,11,11,11,11,11,11,11,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
74 11,10,10,10,10,10,10,10,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
75 10, 9, 9, 9, 9, 9, 9, 9,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
76 9, 8, 8, 8, 8, 8, 8, 8,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
77 7, 7, 7, 7, 7, 7, 7, 7
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
78 };
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
79
5249
dc2579bede07 prepare splitting decoder-only parts into own file:
stefang
parents: 5242
diff changeset
80 const uint16_t ff_cavs_dequant_mul[64] = {
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
81 32768,36061,38968,42495,46341,50535,55437,60424,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
82 32932,35734,38968,42495,46177,50535,55109,59933,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
83 65535,35734,38968,42577,46341,50617,55027,60097,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
84 32809,35734,38968,42454,46382,50576,55109,60056,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
85 65535,35734,38968,42495,46320,50515,55109,60076,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
86 65535,35744,38968,42495,46341,50535,55099,60087,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
87 65535,35734,38973,42500,46341,50535,55109,60097,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
88 32771,35734,38965,42497,46341,50535,55109,60099
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
89 };
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
90
12024
fdafbcef52f5 Fix grammar errors in documentation
mru
parents: 8605
diff changeset
91 /** mark block as unavailable, i.e. out of picture
3402
34d3e497e310 cosmetic patch:
stefang
parents: 3395
diff changeset
92 or not yet decoded */
8605
33f51dd2491f rename vector_t to cavs_vector
stefang
parents: 8331
diff changeset
93 const cavs_vector ff_cavs_un_mv = {0,0,1,NOT_AVAIL};
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
94
12024
fdafbcef52f5 Fix grammar errors in documentation
mru
parents: 8605
diff changeset
95 /** mark block as "no prediction from this direction"
3402
34d3e497e310 cosmetic patch:
stefang
parents: 3395
diff changeset
96 e.g. forward motion vector in BWD partition */
8605
33f51dd2491f rename vector_t to cavs_vector
stefang
parents: 8331
diff changeset
97 const cavs_vector ff_cavs_dir_mv = {0,0,1,REF_DIR};
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
98
12024
fdafbcef52f5 Fix grammar errors in documentation
mru
parents: 8605
diff changeset
99 /** mark block as using intra prediction */
8605
33f51dd2491f rename vector_t to cavs_vector
stefang
parents: 8331
diff changeset
100 const cavs_vector ff_cavs_intra_mv = {0,0,1,REF_INTRA};
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
101
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
102 #define EOB 0,0,0
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
103
8331
0579157cbb14 Avoid POSIX-reserved _t in identifier names.
diego
parents: 7760
diff changeset
104 const struct dec_2dvlc ff_cavs_intra_dec[7] = {
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
105 {
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
106 { //level / run / table_inc
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
107 { 1, 1, 1},{ -1, 1, 1},{ 1, 2, 1},{ -1, 2, 1},{ 1, 3, 1},{ -1, 3, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
108 { 1, 4, 1},{ -1, 4, 1},{ 1, 5, 1},{ -1, 5, 1},{ 1, 6, 1},{ -1, 6, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
109 { 1, 7, 1},{ -1, 7, 1},{ 1, 8, 1},{ -1, 8, 1},{ 1, 9, 1},{ -1, 9, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
110 { 1,10, 1},{ -1,10, 1},{ 1,11, 1},{ -1,11, 1},{ 2, 1, 2},{ -2, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
111 { 1,12, 1},{ -1,12, 1},{ 1,13, 1},{ -1,13, 1},{ 1,14, 1},{ -1,14, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
112 { 1,15, 1},{ -1,15, 1},{ 2, 2, 2},{ -2, 2, 2},{ 1,16, 1},{ -1,16, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
113 { 1,17, 1},{ -1,17, 1},{ 3, 1, 3},{ -3, 1, 3},{ 1,18, 1},{ -1,18, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
114 { 1,19, 1},{ -1,19, 1},{ 2, 3, 2},{ -2, 3, 2},{ 1,20, 1},{ -1,20, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
115 { 1,21, 1},{ -1,21, 1},{ 2, 4, 2},{ -2, 4, 2},{ 1,22, 1},{ -1,22, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
116 { 2, 5, 2},{ -2, 5, 2},{ 1,23, 1},{ -1,23, 1},{ EOB }
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
117 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
118 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
119 { 0, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
120 2, 2, 2, 2, 2, 2, 2,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
121 2, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
122 0, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
123 23, //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
124 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
125 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
126 { 1, 1, 0},{ -1, 1, 0},{ 1, 2, 0},{ -1, 2, 0},{ 2, 1, 1},{ -2, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
127 { 1, 3, 0},{ -1, 3, 0},{ EOB },{ 1, 4, 0},{ -1, 4, 0},{ 1, 5, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
128 { -1, 5, 0},{ 1, 6, 0},{ -1, 6, 0},{ 3, 1, 2},{ -3, 1, 2},{ 2, 2, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
129 { -2, 2, 1},{ 1, 7, 0},{ -1, 7, 0},{ 1, 8, 0},{ -1, 8, 0},{ 1, 9, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
130 { -1, 9, 0},{ 2, 3, 1},{ -2, 3, 1},{ 4, 1, 2},{ -4, 1, 2},{ 1,10, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
131 { -1,10, 0},{ 1,11, 0},{ -1,11, 0},{ 2, 4, 1},{ -2, 4, 1},{ 3, 2, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
132 { -3, 2, 2},{ 1,12, 0},{ -1,12, 0},{ 2, 5, 1},{ -2, 5, 1},{ 5, 1, 3},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
133 { -5, 1, 3},{ 1,13, 0},{ -1,13, 0},{ 2, 6, 1},{ -2, 6, 1},{ 1,14, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
134 { -1,14, 0},{ 2, 7, 1},{ -2, 7, 1},{ 2, 8, 1},{ -2, 8, 1},{ 3, 3, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
135 { -3, 3, 2},{ 6, 1, 3},{ -6, 1, 3},{ 1,15, 0},{ -1,15, 0}
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
136 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
137 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
138 { 0, 7, 4, 4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2,-1,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
139 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
140 2, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
141 1, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
142 15, //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
143 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
144 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
145 { 1, 1, 0},{ -1, 1, 0},{ 2, 1, 0},{ -2, 1, 0},{ 1, 2, 0},{ -1, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
146 { 3, 1, 1},{ -3, 1, 1},{ EOB },{ 1, 3, 0},{ -1, 3, 0},{ 2, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
147 { -2, 2, 0},{ 4, 1, 1},{ -4, 1, 1},{ 1, 4, 0},{ -1, 4, 0},{ 5, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
148 { -5, 1, 2},{ 1, 5, 0},{ -1, 5, 0},{ 3, 2, 1},{ -3, 2, 1},{ 2, 3, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
149 { -2, 3, 0},{ 1, 6, 0},{ -1, 6, 0},{ 6, 1, 2},{ -6, 1, 2},{ 2, 4, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
150 { -2, 4, 0},{ 1, 7, 0},{ -1, 7, 0},{ 4, 2, 1},{ -4, 2, 1},{ 7, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
151 { -7, 1, 2},{ 3, 3, 1},{ -3, 3, 1},{ 2, 5, 0},{ -2, 5, 0},{ 1, 8, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
152 { -1, 8, 0},{ 2, 6, 0},{ -2, 6, 0},{ 8, 1, 3},{ -8, 1, 3},{ 1, 9, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
153 { -1, 9, 0},{ 5, 2, 2},{ -5, 2, 2},{ 3, 4, 1},{ -3, 4, 1},{ 2, 7, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
154 { -2, 7, 0},{ 9, 1, 3},{ -9, 1, 3},{ 1,10, 0},{ -1,10, 0}
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
155 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
156 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
157 { 0,10, 6, 4, 4, 3, 3, 3, 2, 2, 2,-1,-1,-1,-1,-1,-1,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
158 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
159 2, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
160 2, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
161 10, //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
162 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
163 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
164 { 1, 1, 0},{ -1, 1, 0},{ 2, 1, 0},{ -2, 1, 0},{ 3, 1, 0},{ -3, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
165 { 1, 2, 0},{ -1, 2, 0},{ EOB },{ 4, 1, 0},{ -4, 1, 0},{ 5, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
166 { -5, 1, 1},{ 2, 2, 0},{ -2, 2, 0},{ 1, 3, 0},{ -1, 3, 0},{ 6, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
167 { -6, 1, 1},{ 3, 2, 0},{ -3, 2, 0},{ 7, 1, 1},{ -7, 1, 1},{ 1, 4, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
168 { -1, 4, 0},{ 8, 1, 2},{ -8, 1, 2},{ 2, 3, 0},{ -2, 3, 0},{ 4, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
169 { -4, 2, 0},{ 1, 5, 0},{ -1, 5, 0},{ 9, 1, 2},{ -9, 1, 2},{ 5, 2, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
170 { -5, 2, 1},{ 2, 4, 0},{ -2, 4, 0},{ 10, 1, 2},{-10, 1, 2},{ 3, 3, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
171 { -3, 3, 0},{ 1, 6, 0},{ -1, 6, 0},{ 11, 1, 3},{-11, 1, 3},{ 6, 2, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
172 { -6, 2, 1},{ 1, 7, 0},{ -1, 7, 0},{ 2, 5, 0},{ -2, 5, 0},{ 3, 4, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
173 { -3, 4, 0},{ 12, 1, 3},{-12, 1, 3},{ 4, 3, 0},{ -4, 3, 0}
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
174 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
175 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
176 { 0,13, 7, 5, 4, 3, 2, 2,-1,-1,-1 -1,-1,-1,-1,-1,-1,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
177 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
178 2, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
179 4, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
180 7, //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
181 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
182 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
183 { 1, 1, 0},{ -1, 1, 0},{ 2, 1, 0},{ -2, 1, 0},{ 3, 1, 0},{ -3, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
184 { EOB },{ 4, 1, 0},{ -4, 1, 0},{ 5, 1, 0},{ -5, 1, 0},{ 6, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
185 { -6, 1, 0},{ 1, 2, 0},{ -1, 2, 0},{ 7, 1, 0},{ -7, 1, 0},{ 8, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
186 { -8, 1, 1},{ 2, 2, 0},{ -2, 2, 0},{ 9, 1, 1},{ -9, 1, 1},{ 10, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
187 {-10, 1, 1},{ 1, 3, 0},{ -1, 3, 0},{ 3, 2, 0},{ -3, 2, 0},{ 11, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
188 {-11, 1, 2},{ 4, 2, 0},{ -4, 2, 0},{ 12, 1, 2},{-12, 1, 2},{ 13, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
189 {-13, 1, 2},{ 5, 2, 0},{ -5, 2, 0},{ 1, 4, 0},{ -1, 4, 0},{ 2, 3, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
190 { -2, 3, 0},{ 14, 1, 2},{-14, 1, 2},{ 6, 2, 0},{ -6, 2, 0},{ 15, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
191 {-15, 1, 2},{ 16, 1, 2},{-16, 1, 2},{ 3, 3, 0},{ -3, 3, 0},{ 1, 5, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
192 { -1, 5, 0},{ 7, 2, 0},{ -7, 2, 0},{ 17, 1, 2},{-17, 1, 2}
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
193 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
194 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
195 { 0,18, 8, 4, 2, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
196 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
197 2, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
198 7, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
199 5, //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
200 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
201 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
202 { EOB },{ 1, 1, 0},{ -1, 1, 0},{ 2, 1, 0},{ -2, 1, 0},{ 3, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
203 { -3, 1, 0},{ 4, 1, 0},{ -4, 1, 0},{ 5, 1, 0},{ -5, 1, 0},{ 6, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
204 { -6, 1, 0},{ 7, 1, 0},{ -7, 1, 0},{ 8, 1, 0},{ -8, 1, 0},{ 9, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
205 { -9, 1, 0},{ 10, 1, 0},{-10, 1, 0},{ 1, 2, 0},{ -1, 2, 0},{ 11, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
206 {-11, 1, 1},{ 12, 1, 1},{-12, 1, 1},{ 13, 1, 1},{-13, 1, 1},{ 2, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
207 { -2, 2, 0},{ 14, 1, 1},{-14, 1, 1},{ 15, 1, 1},{-15, 1, 1},{ 3, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
208 { -3, 2, 0},{ 16, 1, 1},{-16, 1, 1},{ 1, 3, 0},{ -1, 3, 0},{ 17, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
209 {-17, 1, 1},{ 4, 2, 0},{ -4, 2, 0},{ 18, 1, 1},{-18, 1, 1},{ 5, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
210 { -5, 2, 0},{ 19, 1, 1},{-19, 1, 1},{ 20, 1, 1},{-20, 1, 1},{ 6, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
211 { -6, 2, 0},{ 21, 1, 1},{-21, 1, 1},{ 2, 3, 0},{ -2, 3, 0}
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
212 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
213 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
214 { 0,22, 7, 3,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
215 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
216 2, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
217 10, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
218 3, //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
219 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
220 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
221 { EOB },{ 1, 1, 0},{ -1, 1, 0},{ 2, 1, 0},{ -2, 1, 0},{ 3, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
222 { -3, 1, 0},{ 4, 1, 0},{ -4, 1, 0},{ 5, 1, 0},{ -5, 1, 0},{ 6, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
223 { -6, 1, 0},{ 7, 1, 0},{ -7, 1, 0},{ 8, 1, 0},{ -8, 1, 0},{ 9, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
224 { -9, 1, 0},{ 10, 1, 0},{-10, 1, 0},{ 11, 1, 0},{-11, 1, 0},{ 12, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
225 {-12, 1, 0},{ 13, 1, 0},{-13, 1, 0},{ 14, 1, 0},{-14, 1, 0},{ 15, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
226 {-15, 1, 0},{ 16, 1, 0},{-16, 1, 0},{ 1, 2, 0},{ -1, 2, 0},{ 17, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
227 {-17, 1, 0},{ 18, 1, 0},{-18, 1, 0},{ 19, 1, 0},{-19, 1, 0},{ 20, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
228 {-20, 1, 0},{ 21, 1, 0},{-21, 1, 0},{ 2, 2, 0},{ -2, 2, 0},{ 22, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
229 {-22, 1, 0},{ 23, 1, 0},{-23, 1, 0},{ 24, 1, 0},{-24, 1, 0},{ 25, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
230 {-25, 1, 0},{ 3, 2, 0},{ -3, 2, 0},{ 26, 1, 0},{-26, 1, 0}
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
231 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
232 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
233 { 0,27, 4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
234 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
235 2, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
236 INT_MAX, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
237 2, //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
238 }
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
239 };
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
240
8331
0579157cbb14 Avoid POSIX-reserved _t in identifier names.
diego
parents: 7760
diff changeset
241 const struct dec_2dvlc ff_cavs_inter_dec[7] = {
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
242 {
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
243 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
244 { 1, 1, 1},{ -1, 1, 1},{ 1, 2, 1},{ -1, 2, 1},{ 1, 3, 1},{ -1, 3, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
245 { 1, 4, 1},{ -1, 4, 1},{ 1, 5, 1},{ -1, 5, 1},{ 1, 6, 1},{ -1, 6, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
246 { 1, 7, 1},{ -1, 7, 1},{ 1, 8, 1},{ -1, 8, 1},{ 1, 9, 1},{ -1, 9, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
247 { 1,10, 1},{ -1,10, 1},{ 1,11, 1},{ -1,11, 1},{ 1,12, 1},{ -1,12, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
248 { 1,13, 1},{ -1,13, 1},{ 2, 1, 2},{ -2, 1, 2},{ 1,14, 1},{ -1,14, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
249 { 1,15, 1},{ -1,15, 1},{ 1,16, 1},{ -1,16, 1},{ 1,17, 1},{ -1,17, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
250 { 1,18, 1},{ -1,18, 1},{ 1,19, 1},{ -1,19, 1},{ 3, 1, 3},{ -3, 1, 3},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
251 { 1,20, 1},{ -1,20, 1},{ 1,21, 1},{ -1,21, 1},{ 2, 2, 2},{ -2, 2, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
252 { 1,22, 1},{ -1,22, 1},{ 1,23, 1},{ -1,23, 1},{ 1,24, 1},{ -1,24, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
253 { 1,25, 1},{ -1,25, 1},{ 1,26, 1},{ -1,26, 1},{ EOB }
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
254 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
255 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
256 { 0, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
257 2, 2, 2, 2, 2, 2, 2, 2, 2, 2},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
258 3, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
259 0, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
260 26 //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
261 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
262 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
263 { 1, 1, 0},{ -1, 1, 0},{ EOB },{ 1, 2, 0},{ -1, 2, 0},{ 1, 3, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
264 { -1, 3, 0},{ 1, 4, 0},{ -1, 4, 0},{ 1, 5, 0},{ -1, 5, 0},{ 1, 6, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
265 { -1, 6, 0},{ 2, 1, 1},{ -2, 1, 1},{ 1, 7, 0},{ -1, 7, 0},{ 1, 8, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
266 { -1, 8, 0},{ 1, 9, 0},{ -1, 9, 0},{ 1,10, 0},{ -1,10, 0},{ 2, 2, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
267 { -2, 2, 1},{ 1,11, 0},{ -1,11, 0},{ 1,12, 0},{ -1,12, 0},{ 3, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
268 { -3, 1, 2},{ 1,13, 0},{ -1,13, 0},{ 1,14, 0},{ -1,14, 0},{ 2, 3, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
269 { -2, 3, 1},{ 1,15, 0},{ -1,15, 0},{ 2, 4, 1},{ -2, 4, 1},{ 1,16, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
270 { -1,16, 0},{ 2, 5, 1},{ -2, 5, 1},{ 1,17, 0},{ -1,17, 0},{ 4, 1, 3},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
271 { -4, 1, 3},{ 2, 6, 1},{ -2, 6, 1},{ 1,18, 0},{ -1,18, 0},{ 1,19, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
272 { -1,19, 0},{ 2, 7, 1},{ -2, 7, 1},{ 3, 2, 2},{ -3, 2, 2}
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
273 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
274 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
275 { 0, 5, 4, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
276 2, 2, 2,-1,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
277 2, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
278 1, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
279 19 //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
280 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
281 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
282 { 1, 1, 0},{ -1, 1, 0},{ EOB },{ 1, 2, 0},{ -1, 2, 0},{ 2, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
283 { -2, 1, 0},{ 1, 3, 0},{ -1, 3, 0},{ 1, 4, 0},{ -1, 4, 0},{ 3, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
284 { -3, 1, 1},{ 2, 2, 0},{ -2, 2, 0},{ 1, 5, 0},{ -1, 5, 0},{ 1, 6, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
285 { -1, 6, 0},{ 1, 7, 0},{ -1, 7, 0},{ 2, 3, 0},{ -2, 3, 0},{ 4, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
286 { -4, 1, 2},{ 1, 8, 0},{ -1, 8, 0},{ 3, 2, 1},{ -3, 2, 1},{ 2, 4, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
287 { -2, 4, 0},{ 1, 9, 0},{ -1, 9, 0},{ 1,10, 0},{ -1,10, 0},{ 5, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
288 { -5, 1, 2},{ 2, 5, 0},{ -2, 5, 0},{ 1,11, 0},{ -1,11, 0},{ 2, 6, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
289 { -2, 6, 0},{ 1,12, 0},{ -1,12, 0},{ 3, 3, 1},{ -3, 3, 1},{ 6, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
290 { -6, 1, 2},{ 4, 2, 2},{ -4, 2, 2},{ 1,13, 0},{ -1,13, 0},{ 2, 7, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
291 { -2, 7, 0},{ 3, 4, 1},{ -3, 4, 1},{ 1,14, 0},{ -1,14, 0}
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
292 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
293 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
294 { 0, 7, 5, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2,-1,-1,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
295 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
296 2, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
297 2, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
298 14 //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
299 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
300 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
301 { 1, 1, 0},{ -1, 1, 0},{ EOB },{ 2, 1, 0},{ -2, 1, 0},{ 1, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
302 { -1, 2, 0},{ 3, 1, 0},{ -3, 1, 0},{ 1, 3, 0},{ -1, 3, 0},{ 2, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
303 { -2, 2, 0},{ 4, 1, 1},{ -4, 1, 1},{ 1, 4, 0},{ -1, 4, 0},{ 5, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
304 { -5, 1, 1},{ 1, 5, 0},{ -1, 5, 0},{ 3, 2, 0},{ -3, 2, 0},{ 2, 3, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
305 { -2, 3, 0},{ 1, 6, 0},{ -1, 6, 0},{ 6, 1, 1},{ -6, 1, 1},{ 2, 4, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
306 { -2, 4, 0},{ 1, 7, 0},{ -1, 7, 0},{ 4, 2, 1},{ -4, 2, 1},{ 7, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
307 { -7, 1, 2},{ 3, 3, 0},{ -3, 3, 0},{ 1, 8, 0},{ -1, 8, 0},{ 2, 5, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
308 { -2, 5, 0},{ 8, 1, 2},{ -8, 1, 2},{ 1, 9, 0},{ -1, 9, 0},{ 3, 4, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
309 { -3, 4, 0},{ 2, 6, 0},{ -2, 6, 0},{ 5, 2, 1},{ -5, 2, 1},{ 1,10, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
310 { -1,10, 0},{ 9, 1, 2},{ -9, 1, 2},{ 4, 3, 1},{ -4, 3, 1}
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
311 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
312 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
313 { 0,10, 6, 5, 4, 3, 3, 2, 2, 2, 2,-1,-1,-1,-1,-1,-1,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
314 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
315 2, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
316 3, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
317 10 //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
318 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
319 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
320 { 1, 1, 0},{ -1, 1, 0},{ EOB },{ 2, 1, 0},{ -2, 1, 0},{ 3, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
321 { -3, 1, 0},{ 1, 2, 0},{ -1, 2, 0},{ 4, 1, 0},{ -4, 1, 0},{ 5, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
322 { -5, 1, 0},{ 2, 2, 0},{ -2, 2, 0},{ 1, 3, 0},{ -1, 3, 0},{ 6, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
323 { -6, 1, 0},{ 3, 2, 0},{ -3, 2, 0},{ 7, 1, 1},{ -7, 1, 1},{ 1, 4, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
324 { -1, 4, 0},{ 8, 1, 1},{ -8, 1, 1},{ 2, 3, 0},{ -2, 3, 0},{ 4, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
325 { -4, 2, 0},{ 1, 5, 0},{ -1, 5, 0},{ 9, 1, 1},{ -9, 1, 1},{ 5, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
326 { -5, 2, 0},{ 2, 4, 0},{ -2, 4, 0},{ 1, 6, 0},{ -1, 6, 0},{ 10, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
327 {-10, 1, 2},{ 3, 3, 0},{ -3, 3, 0},{ 11, 1, 2},{-11, 1, 2},{ 1, 7, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
328 { -1, 7, 0},{ 6, 2, 0},{ -6, 2, 0},{ 3, 4, 0},{ -3, 4, 0},{ 2, 5, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
329 { -2, 5, 0},{ 12, 1, 2},{-12, 1, 2},{ 4, 3, 0},{ -4, 3, 0}
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
330 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
331 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
332 { 0,13, 7, 5, 4, 3, 2, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
333 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
334 2, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
335 6, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
336 7 //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
337 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
338 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
339 { EOB },{ 1, 1, 0},{ -1, 1, 0},{ 2, 1, 0},{ -2, 1, 0},{ 3, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
340 { -3, 1, 0},{ 4, 1, 0},{ -4, 1, 0},{ 5, 1, 0},{ -5, 1, 0},{ 1, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
341 { -1, 2, 0},{ 6, 1, 0},{ -6, 1, 0},{ 7, 1, 0},{ -7, 1, 0},{ 8, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
342 { -8, 1, 0},{ 2, 2, 0},{ -2, 2, 0},{ 9, 1, 0},{ -9, 1, 0},{ 1, 3, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
343 { -1, 3, 0},{ 10, 1, 1},{-10, 1, 1},{ 3, 2, 0},{ -3, 2, 0},{ 11, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
344 {-11, 1, 1},{ 4, 2, 0},{ -4, 2, 0},{ 12, 1, 1},{-12, 1, 1},{ 1, 4, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
345 { -1, 4, 0},{ 2, 3, 0},{ -2, 3, 0},{ 13, 1, 1},{-13, 1, 1},{ 5, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
346 { -5, 2, 0},{ 14, 1, 1},{-14, 1, 1},{ 6, 2, 0},{ -6, 2, 0},{ 1, 5, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
347 { -1, 5, 0},{ 15, 1, 1},{-15, 1, 1},{ 3, 3, 0},{ -3, 3, 0},{ 16, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
348 {-16, 1, 1},{ 2, 4, 0},{ -2, 4, 0},{ 7, 2, 0},{ -7, 2, 0}
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
349 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
350 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
351 { 0,17, 8, 4, 3, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
352 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
353 2, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
354 9, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
355 5 //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
356 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
357 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
358 { EOB },{ 1, 1, 0},{ -1, 1, 0},{ 2, 1, 0},{ -2, 1, 0},{ 3, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
359 { -3, 1, 0},{ 4, 1, 0},{ -4, 1, 0},{ 5, 1, 0},{ -5, 1, 0},{ 6, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
360 { -6, 1, 0},{ 7, 1, 0},{ -7, 1, 0},{ 1, 2, 0},{ -1, 2, 0},{ 8, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
361 { -8, 1, 0},{ 9, 1, 0},{ -9, 1, 0},{ 10, 1, 0},{-10, 1, 0},{ 11, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
362 {-11, 1, 0},{ 12, 1, 0},{-12, 1, 0},{ 2, 2, 0},{ -2, 2, 0},{ 13, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
363 {-13, 1, 0},{ 1, 3, 0},{ -1, 3, 0},{ 14, 1, 0},{-14, 1, 0},{ 15, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
364 {-15, 1, 0},{ 3, 2, 0},{ -3, 2, 0},{ 16, 1, 0},{-16, 1, 0},{ 17, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
365 {-17, 1, 0},{ 18, 1, 0},{-18, 1, 0},{ 4, 2, 0},{ -4, 2, 0},{ 19, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
366 {-19, 1, 0},{ 20, 1, 0},{-20, 1, 0},{ 2, 3, 0},{ -2, 3, 0},{ 1, 4, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
367 { -1, 4, 0},{ 5, 2, 0},{ -5, 2, 0},{ 21, 1, 0},{-21, 1, 0}
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
368 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
369 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
370 { 0,22, 6, 3, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
371 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
372 2, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
373 INT_MAX, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
374 4 //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
375 }
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
376 };
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
377
8331
0579157cbb14 Avoid POSIX-reserved _t in identifier names.
diego
parents: 7760
diff changeset
378 const struct dec_2dvlc ff_cavs_chroma_dec[5] = {
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
379 {
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
380 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
381 { 1, 1, 1},{ -1, 1, 1},{ 1, 2, 1},{ -1, 2, 1},{ 1, 3, 1},{ -1, 3, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
382 { 1, 4, 1},{ -1, 4, 1},{ 1, 5, 1},{ -1, 5, 1},{ 1, 6, 1},{ -1, 6, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
383 { 1, 7, 1},{ -1, 7, 1},{ 2, 1, 2},{ -2, 1, 2},{ 1, 8, 1},{ -1, 8, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
384 { 1, 9, 1},{ -1, 9, 1},{ 1,10, 1},{ -1,10, 1},{ 1,11, 1},{ -1,11, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
385 { 1,12, 1},{ -1,12, 1},{ 1,13, 1},{ -1,13, 1},{ 1,14, 1},{ -1,14, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
386 { 1,15, 1},{ -1,15, 1},{ 3, 1, 3},{ -3, 1, 3},{ 1,16, 1},{ -1,16, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
387 { 1,17, 1},{ -1,17, 1},{ 1,18, 1},{ -1,18, 1},{ 1,19, 1},{ -1,19, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
388 { 1,20, 1},{ -1,20, 1},{ 1,21, 1},{ -1,21, 1},{ 1,22, 1},{ -1,22, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
389 { 2, 2, 2},{ -2, 2, 2},{ 1,23, 1},{ -1,23, 1},{ 1,24, 1},{ -1,24, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
390 { 1,25, 1},{ -1,25, 1},{ 4, 1, 3},{ -4, 1, 3},{ EOB }
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
391 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
392 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
393 { 0, 5, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
394 2, 2, 2, 2, 2, 2, 2, 2, 2,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
395 2, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
396 0, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
397 25 //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
398 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
399 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
400 { EOB },{ 1, 1, 0},{ -1, 1, 0},{ 1, 2, 0},{ -1, 2, 0},{ 2, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
401 { -2, 1, 1},{ 1, 3, 0},{ -1, 3, 0},{ 1, 4, 0},{ -1, 4, 0},{ 1, 5, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
402 { -1, 5, 0},{ 1, 6, 0},{ -1, 6, 0},{ 3, 1, 2},{ -3, 1, 2},{ 1, 7, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
403 { -1, 7, 0},{ 1, 8, 0},{ -1, 8, 0},{ 2, 2, 1},{ -2, 2, 1},{ 1, 9, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
404 { -1, 9, 0},{ 1,10, 0},{ -1,10, 0},{ 1,11, 0},{ -1,11, 0},{ 4, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
405 { -4, 1, 2},{ 1,12, 0},{ -1,12, 0},{ 1,13, 0},{ -1,13, 0},{ 1,14, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
406 { -1,14, 0},{ 2, 3, 1},{ -2, 3, 1},{ 1,15, 0},{ -1,15, 0},{ 2, 4, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
407 { -2, 4, 1},{ 5, 1, 3},{ -5, 1, 3},{ 3, 2, 2},{ -3, 2, 2},{ 1,16, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
408 { -1,16, 0},{ 1,17, 0},{ -1,17, 0},{ 1,18, 0},{ -1,18, 0},{ 2, 5, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
409 { -2, 5, 1},{ 1,19, 0},{ -1,19, 0},{ 1,20, 0},{ -1,20, 0}
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
410 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
411 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
412 { 0, 6, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
413 2, 2, 2, 2,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
414 0, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
415 1, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
416 20 //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
417 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
418 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
419 { 1, 1, 0},{ -1, 1, 0},{ EOB },{ 2, 1, 0},{ -2, 1, 0},{ 1, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
420 { -1, 2, 0},{ 3, 1, 1},{ -3, 1, 1},{ 1, 3, 0},{ -1, 3, 0},{ 4, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
421 { -4, 1, 1},{ 2, 2, 0},{ -2, 2, 0},{ 1, 4, 0},{ -1, 4, 0},{ 5, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
422 { -5, 1, 2},{ 1, 5, 0},{ -1, 5, 0},{ 3, 2, 1},{ -3, 2, 1},{ 2, 3, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
423 { -2, 3, 0},{ 1, 6, 0},{ -1, 6, 0},{ 6, 1, 2},{ -6, 1, 2},{ 1, 7, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
424 { -1, 7, 0},{ 2, 4, 0},{ -2, 4, 0},{ 7, 1, 2},{ -7, 1, 2},{ 1, 8, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
425 { -1, 8, 0},{ 4, 2, 1},{ -4, 2, 1},{ 1, 9, 0},{ -1, 9, 0},{ 3, 3, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
426 { -3, 3, 1},{ 2, 5, 0},{ -2, 5, 0},{ 2, 6, 0},{ -2, 6, 0},{ 8, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
427 { -8, 1, 2},{ 1,10, 0},{ -1,10, 0},{ 1,11, 0},{ -1,11, 0},{ 9, 1, 2},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
428 { -9, 1, 2},{ 5, 2, 2},{ -5, 2, 2},{ 3, 4, 1},{ -3, 4, 1},
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
429 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
430 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
431 { 0,10, 6, 4, 4, 3, 3, 2, 2, 2, 2, 2,-1,-1,-1,-1,-1,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
432 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
433 1, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
434 2, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
435 11 //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
436 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
437 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
438 { EOB },{ 1, 1, 0},{ -1, 1, 0},{ 2, 1, 0},{ -2, 1, 0},{ 3, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
439 { -3, 1, 0},{ 4, 1, 0},{ -4, 1, 0},{ 1, 2, 0},{ -1, 2, 0},{ 5, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
440 { -5, 1, 1},{ 2, 2, 0},{ -2, 2, 0},{ 6, 1, 1},{ -6, 1, 1},{ 1, 3, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
441 { -1, 3, 0},{ 7, 1, 1},{ -7, 1, 1},{ 3, 2, 0},{ -3, 2, 0},{ 8, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
442 { -8, 1, 1},{ 1, 4, 0},{ -1, 4, 0},{ 2, 3, 0},{ -2, 3, 0},{ 9, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
443 { -9, 1, 1},{ 4, 2, 0},{ -4, 2, 0},{ 1, 5, 0},{ -1, 5, 0},{ 10, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
444 {-10, 1, 1},{ 3, 3, 0},{ -3, 3, 0},{ 5, 2, 1},{ -5, 2, 1},{ 2, 4, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
445 { -2, 4, 0},{ 11, 1, 1},{-11, 1, 1},{ 1, 6, 0},{ -1, 6, 0},{ 12, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
446 {-12, 1, 1},{ 1, 7, 0},{ -1, 7, 0},{ 6, 2, 1},{ -6, 2, 1},{ 13, 1, 1},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
447 {-13, 1, 1},{ 2, 5, 0},{ -2, 5, 0},{ 1, 8, 0},{ -1, 8, 0},
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
448 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
449 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
450 { 0,14, 7, 4, 3, 3, 2, 2, 2,-1,-1,-1,-1,-1,-1,-1,-1,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
451 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
452 1, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
453 4, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
454 8 //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
455 },{
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
456 { //level / run
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
457 { EOB },{ 1, 1, 0},{ -1, 1, 0},{ 2, 1, 0},{ -2, 1, 0},{ 3, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
458 { -3, 1, 0},{ 4, 1, 0},{ -4, 1, 0},{ 5, 1, 0},{ -5, 1, 0},{ 6, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
459 { -6, 1, 0},{ 7, 1, 0},{ -7, 1, 0},{ 8, 1, 0},{ -8, 1, 0},{ 1, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
460 { -1, 2, 0},{ 9, 1, 0},{ -9, 1, 0},{ 10, 1, 0},{-10, 1, 0},{ 11, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
461 {-11, 1, 0},{ 2, 2, 0},{ -2, 2, 0},{ 12, 1, 0},{-12, 1, 0},{ 13, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
462 {-13, 1, 0},{ 3, 2, 0},{ -3, 2, 0},{ 14, 1, 0},{-14, 1, 0},{ 1, 3, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
463 { -1, 3, 0},{ 15, 1, 0},{-15, 1, 0},{ 4, 2, 0},{ -4, 2, 0},{ 16, 1, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
464 {-16, 1, 0},{ 17, 1, 0},{-17, 1, 0},{ 5, 2, 0},{ -5, 2, 0},{ 1, 4, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
465 { -1, 4, 0},{ 2, 3, 0},{ -2, 3, 0},{ 18, 1, 0},{-18, 1, 0},{ 6, 2, 0},
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
466 { -6, 2, 0},{ 19, 1, 0},{-19, 1, 0},{ 1, 5, 0},{ -1, 5, 0},
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
467 },
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
468 //level_add
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
469 { 0,20, 7, 3, 2, 2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
470 -1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
471 0, //golomb_order
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
472 INT_MAX, //inc_limit
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
473 5, //max_run
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
474 }
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
475 };
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
476
3471
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
477 #undef EOB
c2db6e76b269 replace run by run+1 in VLC tables
stefang
parents: 3469
diff changeset
478
3380
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
479 static const uint8_t alpha_tab[64] = {
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
480 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
481 4, 4, 5, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 18, 20,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
482 22, 24, 26, 28, 30, 33, 33, 35, 35, 36, 37, 37, 39, 39, 42, 44,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
483 46, 48, 50, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
484 };
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
485
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
486 static const uint8_t beta_tab[64] = {
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
487 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
488 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
489 6, 7, 7, 7, 8, 8, 8, 9, 9, 10, 10, 11, 11, 12, 13, 14,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
490 15, 16, 17, 18, 19, 20, 21, 22, 23, 23, 24, 24, 25, 25, 26, 27
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
491 };
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
492
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
493 static const uint8_t tc_tab[64] = {
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
494 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
495 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
496 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4,
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
497 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
498 };
1f47e26323bc new files for the CAVS decoder by (Stefan Gehrer <stefan gehrer gmx de)
michael
parents:
diff changeset
499
5239
5760ab0250aa move modification of intra prediction modes into
stefang
parents: 5235
diff changeset
500 const int_fast8_t ff_left_modifier_l[8] = { 0,-1, 6,-1,-1, 7, 6, 7};
5760ab0250aa move modification of intra prediction modes into
stefang
parents: 5235
diff changeset
501 const int_fast8_t ff_top_modifier_l[8] = {-1, 1, 5,-1,-1, 5, 7, 7};
5760ab0250aa move modification of intra prediction modes into
stefang
parents: 5235
diff changeset
502 const int_fast8_t ff_left_modifier_c[7] = { 5,-1, 2,-1, 6, 5, 6};
5760ab0250aa move modification of intra prediction modes into
stefang
parents: 5235
diff changeset
503 const int_fast8_t ff_top_modifier_c[7] = { 4, 1,-1,-1, 4, 6, 6};
5163
9ecbfc0c82bf add multiple inclusion guards to headers
mru
parents: 4944
diff changeset
504
7760
c4a4495715dd Globally rename the header inclusion guard names.
stefano
parents: 5830
diff changeset
505 #endif /* AVCODEC_CAVSDATA_H */