annotate vp8data.h @ 12506:747e5f278c4b libavcodec

The debug text output of macroblocks can indicate MB_TYPE_INTERLACED, but it used to do it only for h264 codec. Allow it for other codecs, as mpeg2 and mpeg4 also set this flag.
author iive
date Tue, 21 Sep 2010 22:44:27 +0000
parents d596749eb0bc
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11921
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
1 /**
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
2 * VP8 compatible video decoder
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
3 *
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
4 * Copyright (C) 2010 David Conrad
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
5 * Copyright (C) 2010 Ronald S. Bultje
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
6 *
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
7 * This file is part of FFmpeg.
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
8 *
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
9 * FFmpeg is free software; you can redistribute it and/or
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
10 * modify it under the terms of the GNU Lesser General Public
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
11 * License as published by the Free Software Foundation; either
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
12 * version 2.1 of the License, or (at your option) any later version.
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
13 *
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
14 * FFmpeg is distributed in the hope that it will be useful,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
17 * Lesser General Public License for more details.
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
18 *
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
19 * You should have received a copy of the GNU Lesser General Public
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
20 * License along with FFmpeg; if not, write to the Free Software
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
21 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
22 */
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
23
11930
1e8556438209 Fix a typo, spotted by Diego.
rbultje
parents: 11921
diff changeset
24 // TODO: move these #define and enum to a better header...
11921
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
25
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
26 #define VP8_MAX_QUANT 127
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
27
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
28 enum dct_token {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
29 DCT_0,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
30 DCT_1,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
31 DCT_2,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
32 DCT_3,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
33 DCT_4,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
34 DCT_CAT1,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
35 DCT_CAT2,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
36 DCT_CAT3,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
37 DCT_CAT4,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
38 DCT_CAT5,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
39 DCT_CAT6,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
40 DCT_EOB,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
41
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
42 NUM_DCT_TOKENS
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
43 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
44
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
45 #include "h264pred.h"
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
46
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
47 // used to signal 4x4 intra pred in luma MBs
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
48 #define MODE_I4x4 4
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
49
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
50 enum inter_mvmode {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
51 VP8_MVMODE_NEAREST = MODE_I4x4 + 1,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
52 VP8_MVMODE_NEAR,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
53 VP8_MVMODE_ZERO,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
54 VP8_MVMODE_NEW,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
55 VP8_MVMODE_SPLIT
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
56 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
57
11989
176c5deb6756 Optimize split MC, so we don't always do 4x4 blocks of 4x4pixels each, but
rbultje
parents: 11930
diff changeset
58 enum inter_splitmvmode {
176c5deb6756 Optimize split MC, so we don't always do 4x4 blocks of 4x4pixels each, but
rbultje
parents: 11930
diff changeset
59 VP8_SPLITMVMODE_16x8 = 0, ///< 2 16x8 blocks (vertical)
176c5deb6756 Optimize split MC, so we don't always do 4x4 blocks of 4x4pixels each, but
rbultje
parents: 11930
diff changeset
60 VP8_SPLITMVMODE_8x16, ///< 2 8x16 blocks (horizontal)
176c5deb6756 Optimize split MC, so we don't always do 4x4 blocks of 4x4pixels each, but
rbultje
parents: 11930
diff changeset
61 VP8_SPLITMVMODE_8x8, ///< 2x2 blocks of 8x8px each
176c5deb6756 Optimize split MC, so we don't always do 4x4 blocks of 4x4pixels each, but
rbultje
parents: 11930
diff changeset
62 VP8_SPLITMVMODE_4x4, ///< 4x4 blocks of 4x4px each
11990
3c51d7ac41c9 Simplify MV parsing, removes laying out 2 or 4 (16x8/8x8/8x16) MVs over all
rbultje
parents: 11989
diff changeset
63 VP8_SPLITMVMODE_NONE, ///< (only used in prediction) no split MVs
11989
176c5deb6756 Optimize split MC, so we don't always do 4x4 blocks of 4x4pixels each, but
rbultje
parents: 11930
diff changeset
64 };
176c5deb6756 Optimize split MC, so we don't always do 4x4 blocks of 4x4pixels each, but
rbultje
parents: 11930
diff changeset
65
11921
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
66 static const uint8_t vp8_pred4x4_mode[] =
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
67 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
68 [DC_PRED8x8] = DC_PRED,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
69 [VERT_PRED8x8] = VERT_PRED,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
70 [HOR_PRED8x8] = HOR_PRED,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
71 [PLANE_PRED8x8] = TM_VP8_PRED,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
72 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
73
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
74 static const int8_t vp8_pred16x16_tree_intra[4][2] =
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
75 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
76 { -MODE_I4x4, 1 }, // '0'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
77 { 2, 3 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
78 { -DC_PRED8x8, -VERT_PRED8x8 }, // '100', '101'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
79 { -HOR_PRED8x8, -PLANE_PRED8x8 }, // '110', '111'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
80 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
81
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
82 static const int8_t vp8_pred16x16_tree_inter[4][2] =
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
83 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
84 { -DC_PRED8x8, 1 }, // '0'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
85 { 2, 3 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
86 { -VERT_PRED8x8, -HOR_PRED8x8 }, // '100', '101'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
87 { -PLANE_PRED8x8, -MODE_I4x4 }, // '110', '111'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
88 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
89
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
90 static const int vp8_mode_contexts[6][4] = {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
91 { 7, 1, 1, 143 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
92 { 14, 18, 14, 107 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
93 { 135, 64, 57, 68 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
94 { 60, 56, 128, 65 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
95 { 159, 134, 128, 34 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
96 { 234, 188, 128, 28 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
97 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
98
11990
3c51d7ac41c9 Simplify MV parsing, removes laying out 2 or 4 (16x8/8x8/8x16) MVs over all
rbultje
parents: 11989
diff changeset
99 static const uint8_t vp8_mbsplits[5][16] = {
11921
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
100 { 0, 0, 0, 0, 0, 0, 0, 0,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
101 1, 1, 1, 1, 1, 1, 1, 1 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
102 { 0, 0, 1, 1, 0, 0, 1, 1,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
103 0, 0, 1, 1, 0, 0, 1, 1 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
104 { 0, 0, 1, 1, 0, 0, 1, 1,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
105 2, 2, 3, 3, 2, 2, 3, 3 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
106 { 0, 1, 2, 3, 4, 5, 6, 7,
11990
3c51d7ac41c9 Simplify MV parsing, removes laying out 2 or 4 (16x8/8x8/8x16) MVs over all
rbultje
parents: 11989
diff changeset
107 8, 9, 10, 11, 12, 13, 14, 15 },
3c51d7ac41c9 Simplify MV parsing, removes laying out 2 or 4 (16x8/8x8/8x16) MVs over all
rbultje
parents: 11989
diff changeset
108 { 0, 0, 0, 0, 0, 0, 0, 0,
3c51d7ac41c9 Simplify MV parsing, removes laying out 2 or 4 (16x8/8x8/8x16) MVs over all
rbultje
parents: 11989
diff changeset
109 0, 0, 0, 0, 0, 0, 0, 0 }
11921
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
110 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
111
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
112 static const uint8_t vp8_mbfirstidx[4][16] = {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
113 { 0, 8 }, { 0, 2 }, { 0, 2, 8, 10 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
114 { 0, 1, 2, 3, 4, 5, 6, 7,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
115 8, 9, 10, 11, 12, 13, 14, 15 }
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
116 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
117
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
118 static const uint8_t vp8_mbsplit_count[4] = { 2, 2, 4, 16 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
119 static const uint8_t vp8_mbsplit_prob[3] = { 110, 111, 150 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
120
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
121 static const uint8_t vp8_submv_prob[5][3] = {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
122 { 147, 136, 18 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
123 { 106, 145, 1 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
124 { 179, 121, 1 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
125 { 223, 1, 34 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
126 { 208, 1, 1 }
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
127 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
128
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
129 static const uint8_t vp8_pred16x16_prob_intra[4] = { 145, 156, 163, 128 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
130 static const uint8_t vp8_pred16x16_prob_inter[4] = { 112, 86, 140, 37 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
131
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
132 static const int8_t vp8_pred4x4_tree[9][2] =
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
133 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
134 { -DC_PRED, 1 }, // '0'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
135 { -TM_VP8_PRED, 2 }, // '10'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
136 { -VERT_PRED, 3 }, // '110'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
137 { 4, 6 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
138 { -HOR_PRED, 5 }, // '11100'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
139 { -DIAG_DOWN_RIGHT_PRED, -VERT_RIGHT_PRED }, // '111010', '111011'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
140 { -DIAG_DOWN_LEFT_PRED, 7 }, // '11110'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
141 { -VERT_LEFT_PRED, 8 }, // '111110'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
142 { -HOR_DOWN_PRED, -HOR_UP_PRED }, // '1111110', '1111111'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
143 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
144
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
145 static const int8_t vp8_pred8x8c_tree[3][2] =
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
146 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
147 { -DC_PRED8x8, 1 }, // '0'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
148 { -VERT_PRED8x8, 2 }, // '10
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
149 { -HOR_PRED8x8, -PLANE_PRED8x8 }, // '110', '111'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
150 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
151
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
152 static const uint8_t vp8_pred8x8c_prob_intra[3] = { 142, 114, 183 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
153 static const uint8_t vp8_pred8x8c_prob_inter[3] = { 162, 101, 204 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
154
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
155 static const uint8_t vp8_pred4x4_prob_inter[9] =
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
156 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
157 120, 90, 79, 133, 87, 85, 80, 111, 151
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
158 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
159
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
160 static const uint8_t vp8_pred4x4_prob_intra[10][10][9] =
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
161 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
162 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
163 { 39, 53, 200, 87, 26, 21, 43, 232, 171 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
164 { 56, 34, 51, 104, 114, 102, 29, 93, 77 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
165 { 88, 88, 147, 150, 42, 46, 45, 196, 205 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
166 { 107, 54, 32, 26, 51, 1, 81, 43, 31 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
167 { 39, 28, 85, 171, 58, 165, 90, 98, 64 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
168 { 34, 22, 116, 206, 23, 34, 43, 166, 73 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
169 { 34, 19, 21, 102, 132, 188, 16, 76, 124 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
170 { 68, 25, 106, 22, 64, 171, 36, 225, 114 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
171 { 62, 18, 78, 95, 85, 57, 50, 48, 51 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
172 { 43, 97, 183, 117, 85, 38, 35, 179, 61 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
173 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
174 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
175 { 112, 113, 77, 85, 179, 255, 38, 120, 114 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
176 { 40, 42, 1, 196, 245, 209, 10, 25, 109 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
177 { 193, 101, 35, 159, 215, 111, 89, 46, 111 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
178 { 100, 80, 8, 43, 154, 1, 51, 26, 71 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
179 { 88, 43, 29, 140, 166, 213, 37, 43, 154 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
180 { 61, 63, 30, 155, 67, 45, 68, 1, 209 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
181 { 41, 40, 5, 102, 211, 183, 4, 1, 221 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
182 { 142, 78, 78, 16, 255, 128, 34, 197, 171 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
183 { 51, 50, 17, 168, 209, 192, 23, 25, 82 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
184 { 60, 148, 31, 172, 219, 228, 21, 18, 111 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
185 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
186 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
187 { 175, 69, 143, 80, 85, 82, 72, 155, 103 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
188 { 56, 58, 10, 171, 218, 189, 17, 13, 152 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
189 { 231, 120, 48, 89, 115, 113, 120, 152, 112 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
190 { 144, 71, 10, 38, 171, 213, 144, 34, 26 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
191 { 114, 26, 17, 163, 44, 195, 21, 10, 173 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
192 { 121, 24, 80, 195, 26, 62, 44, 64, 85 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
193 { 63, 20, 8, 114, 114, 208, 12, 9, 226 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
194 { 170, 46, 55, 19, 136, 160, 33, 206, 71 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
195 { 81, 40, 11, 96, 182, 84, 29, 16, 36 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
196 { 152, 179, 64, 126, 170, 118, 46, 70, 95 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
197 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
198 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
199 { 75, 79, 123, 47, 51, 128, 81, 171, 1 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
200 { 57, 17, 5, 71, 102, 57, 53, 41, 49 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
201 { 125, 98, 42, 88, 104, 85, 117, 175, 82 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
202 { 115, 21, 2, 10, 102, 255, 166, 23, 6 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
203 { 38, 33, 13, 121, 57, 73, 26, 1, 85 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
204 { 41, 10, 67, 138, 77, 110, 90, 47, 114 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
205 { 57, 18, 10, 102, 102, 213, 34, 20, 43 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
206 { 101, 29, 16, 10, 85, 128, 101, 196, 26 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
207 { 117, 20, 15, 36, 163, 128, 68, 1, 26 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
208 { 95, 84, 53, 89, 128, 100, 113, 101, 45 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
209 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
210 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
211 { 63, 59, 90, 180, 59, 166, 93, 73, 154 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
212 { 40, 40, 21, 116, 143, 209, 34, 39, 175 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
213 { 138, 31, 36, 171, 27, 166, 38, 44, 229 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
214 { 57, 46, 22, 24, 128, 1, 54, 17, 37 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
215 { 47, 15, 16, 183, 34, 223, 49, 45, 183 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
216 { 46, 17, 33, 183, 6, 98, 15, 32, 183 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
217 { 40, 3, 9, 115, 51, 192, 18, 6, 223 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
218 { 65, 32, 73, 115, 28, 128, 23, 128, 205 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
219 { 87, 37, 9, 115, 59, 77, 64, 21, 47 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
220 { 67, 87, 58, 169, 82, 115, 26, 59, 179 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
221 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
222 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
223 { 54, 57, 112, 184, 5, 41, 38, 166, 213 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
224 { 30, 34, 26, 133, 152, 116, 10, 32, 134 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
225 { 104, 55, 44, 218, 9, 54, 53, 130, 226 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
226 { 75, 32, 12, 51, 192, 255, 160, 43, 51 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
227 { 39, 19, 53, 221, 26, 114, 32, 73, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
228 { 31, 9, 65, 234, 2, 15, 1, 118, 73 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
229 { 56, 21, 23, 111, 59, 205, 45, 37, 192 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
230 { 88, 31, 35, 67, 102, 85, 55, 186, 85 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
231 { 55, 38, 70, 124, 73, 102, 1, 34, 98 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
232 { 64, 90, 70, 205, 40, 41, 23, 26, 57 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
233 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
234 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
235 { 86, 40, 64, 135, 148, 224, 45, 183, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
236 { 22, 26, 17, 131, 240, 154, 14, 1, 209 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
237 { 164, 50, 31, 137, 154, 133, 25, 35, 218 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
238 { 83, 12, 13, 54, 192, 255, 68, 47, 28 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
239 { 45, 16, 21, 91, 64, 222, 7, 1, 197 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
240 { 56, 21, 39, 155, 60, 138, 23, 102, 213 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
241 { 18, 11, 7, 63, 144, 171, 4, 4, 246 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
242 { 85, 26, 85, 85, 128, 128, 32, 146, 171 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
243 { 35, 27, 10, 146, 174, 171, 12, 26, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
244 { 51, 103, 44, 131, 131, 123, 31, 6, 158 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
245 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
246 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
247 { 68, 45, 128, 34, 1, 47, 11, 245, 171 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
248 { 62, 17, 19, 70, 146, 85, 55, 62, 70 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
249 { 102, 61, 71, 37, 34, 53, 31, 243, 192 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
250 { 75, 15, 9, 9, 64, 255, 184, 119, 16 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
251 { 37, 43, 37, 154, 100, 163, 85, 160, 1 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
252 { 63, 9, 92, 136, 28, 64, 32, 201, 85 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
253 { 56, 8, 17, 132, 137, 255, 55, 116, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
254 { 86, 6, 28, 5, 64, 255, 25, 248, 1 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
255 { 58, 15, 20, 82, 135, 57, 26, 121, 40 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
256 { 69, 60, 71, 38, 73, 119, 28, 222, 37 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
257 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
258 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
259 { 101, 75, 128, 139, 118, 146, 116, 128, 85 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
260 { 56, 41, 15, 176, 236, 85, 37, 9, 62 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
261 { 190, 80, 35, 99, 180, 80, 126, 54, 45 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
262 { 146, 36, 19, 30, 171, 255, 97, 27, 20 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
263 { 71, 30, 17, 119, 118, 255, 17, 18, 138 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
264 { 101, 38, 60, 138, 55, 70, 43, 26, 142 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
265 { 32, 41, 20, 117, 151, 142, 20, 21, 163 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
266 { 138, 45, 61, 62, 219, 1, 81, 188, 64 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
267 { 112, 19, 12, 61, 195, 128, 48, 4, 24 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
268 { 85, 126, 47, 87, 176, 51, 41, 20, 32 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
269 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
270 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
271 { 66, 102, 167, 99, 74, 62, 40, 234, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
272 { 41, 53, 9, 178, 241, 141, 26, 8, 107 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
273 { 134, 183, 89, 137, 98, 101, 106, 165, 148 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
274 { 104, 79, 12, 27, 217, 255, 87, 17, 7 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
275 { 74, 43, 26, 146, 73, 166, 49, 23, 157 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
276 { 65, 38, 105, 160, 51, 52, 31, 115, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
277 { 47, 41, 14, 110, 182, 183, 21, 17, 194 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
278 { 87, 68, 71, 44, 114, 51, 15, 186, 23 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
279 { 66, 45, 25, 102, 197, 189, 23, 18, 22 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
280 { 72, 187, 100, 130, 157, 111, 32, 75, 80 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
281 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
282 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
283
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
284 static const int8_t vp8_segmentid_tree[][2] =
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
285 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
286 { 1, 2 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
287 { -0, -1 }, // '00', '01'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
288 { -2, -3 }, // '10', '11'
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
289 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
290
12343
a18ab740d2db VP8: eliminate a dereference in coefficient decoding
darkshikari
parents: 12336
diff changeset
291 static const uint8_t vp8_coeff_band[16] =
11921
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
292 {
12343
a18ab740d2db VP8: eliminate a dereference in coefficient decoding
darkshikari
parents: 12336
diff changeset
293 0, 1, 2, 3, 6, 4, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7
11921
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
294 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
295
12358
d596749eb0bc VP8: slightly faster DCT coefficient probability update
darkshikari
parents: 12352
diff changeset
296 /* Inverse of vp8_coeff_band: mappings of bands to coefficient indexes.
d596749eb0bc VP8: slightly faster DCT coefficient probability update
darkshikari
parents: 12352
diff changeset
297 * Each list is -1-terminated. */
d596749eb0bc VP8: slightly faster DCT coefficient probability update
darkshikari
parents: 12352
diff changeset
298 static const int8_t vp8_coeff_band_indexes[8][10] =
d596749eb0bc VP8: slightly faster DCT coefficient probability update
darkshikari
parents: 12352
diff changeset
299 {
d596749eb0bc VP8: slightly faster DCT coefficient probability update
darkshikari
parents: 12352
diff changeset
300 {0, -1},
d596749eb0bc VP8: slightly faster DCT coefficient probability update
darkshikari
parents: 12352
diff changeset
301 {1, -1},
d596749eb0bc VP8: slightly faster DCT coefficient probability update
darkshikari
parents: 12352
diff changeset
302 {2, -1},
d596749eb0bc VP8: slightly faster DCT coefficient probability update
darkshikari
parents: 12352
diff changeset
303 {3, -1},
d596749eb0bc VP8: slightly faster DCT coefficient probability update
darkshikari
parents: 12352
diff changeset
304 {5, -1},
d596749eb0bc VP8: slightly faster DCT coefficient probability update
darkshikari
parents: 12352
diff changeset
305 {6, -1},
d596749eb0bc VP8: slightly faster DCT coefficient probability update
darkshikari
parents: 12352
diff changeset
306 {4, 7, 8, 9, 10, 11, 12, 13, 14, -1},
d596749eb0bc VP8: slightly faster DCT coefficient probability update
darkshikari
parents: 12352
diff changeset
307 {15, -1}
d596749eb0bc VP8: slightly faster DCT coefficient probability update
darkshikari
parents: 12352
diff changeset
308 };
d596749eb0bc VP8: slightly faster DCT coefficient probability update
darkshikari
parents: 12352
diff changeset
309
11921
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
310 static const uint8_t vp8_dct_cat1_prob[] = { 159, 0 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
311 static const uint8_t vp8_dct_cat2_prob[] = { 165, 145, 0 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
312 static const uint8_t vp8_dct_cat3_prob[] = { 173, 148, 140, 0 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
313 static const uint8_t vp8_dct_cat4_prob[] = { 176, 155, 140, 135, 0 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
314 static const uint8_t vp8_dct_cat5_prob[] = { 180, 157, 141, 134, 130, 0 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
315 static const uint8_t vp8_dct_cat6_prob[] = { 254, 254, 243, 230, 196, 177, 153, 140, 133, 130, 129, 0 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
316
12253
112b3a0db187 Decode DCT tokens by branching to a different code path for each branch
conrad
parents: 12229
diff changeset
317 // only used for cat3 and above; cat 1 and 2 are referenced directly
112b3a0db187 Decode DCT tokens by branching to a different code path for each branch
conrad
parents: 12229
diff changeset
318 static const uint8_t * const vp8_dct_cat_prob[] =
11921
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
319 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
320 vp8_dct_cat3_prob,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
321 vp8_dct_cat4_prob,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
322 vp8_dct_cat5_prob,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
323 vp8_dct_cat6_prob,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
324 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
325
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
326 static const uint8_t vp8_token_default_probs[4][8][3][NUM_DCT_TOKENS-1] =
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
327 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
328 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
329 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
330 { 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
331 { 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
332 { 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
333 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
334 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
335 { 253, 136, 254, 255, 228, 219, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
336 { 189, 129, 242, 255, 227, 213, 255, 219, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
337 { 106, 126, 227, 252, 214, 209, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
338 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
339 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
340 { 1, 98, 248, 255, 236, 226, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
341 { 181, 133, 238, 254, 221, 234, 255, 154, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
342 { 78, 134, 202, 247, 198, 180, 255, 219, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
343 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
344 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
345 { 1, 185, 249, 255, 243, 255, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
346 { 184, 150, 247, 255, 236, 224, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
347 { 77, 110, 216, 255, 236, 230, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
348 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
349 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
350 { 1, 101, 251, 255, 241, 255, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
351 { 170, 139, 241, 252, 236, 209, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
352 { 37, 116, 196, 243, 228, 255, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
353 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
354 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
355 { 1, 204, 254, 255, 245, 255, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
356 { 207, 160, 250, 255, 238, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
357 { 102, 103, 231, 255, 211, 171, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
358 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
359 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
360 { 1, 152, 252, 255, 240, 255, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
361 { 177, 135, 243, 255, 234, 225, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
362 { 80, 129, 211, 255, 194, 224, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
363 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
364 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
365 { 1, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
366 { 246, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
367 { 255, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
368 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
369 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
370 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
371 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
372 { 198, 35, 237, 223, 193, 187, 162, 160, 145, 155, 62 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
373 { 131, 45, 198, 221, 172, 176, 220, 157, 252, 221, 1 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
374 { 68, 47, 146, 208, 149, 167, 221, 162, 255, 223, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
375 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
376 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
377 { 1, 149, 241, 255, 221, 224, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
378 { 184, 141, 234, 253, 222, 220, 255, 199, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
379 { 81, 99, 181, 242, 176, 190, 249, 202, 255, 255, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
380 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
381 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
382 { 1, 129, 232, 253, 214, 197, 242, 196, 255, 255, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
383 { 99, 121, 210, 250, 201, 198, 255, 202, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
384 { 23, 91, 163, 242, 170, 187, 247, 210, 255, 255, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
385 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
386 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
387 { 1, 200, 246, 255, 234, 255, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
388 { 109, 178, 241, 255, 231, 245, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
389 { 44, 130, 201, 253, 205, 192, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
390 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
391 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
392 { 1, 132, 239, 251, 219, 209, 255, 165, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
393 { 94, 136, 225, 251, 218, 190, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
394 { 22, 100, 174, 245, 186, 161, 255, 199, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
395 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
396 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
397 { 1, 182, 249, 255, 232, 235, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
398 { 124, 143, 241, 255, 227, 234, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
399 { 35, 77, 181, 251, 193, 211, 255, 205, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
400 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
401 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
402 { 1, 157, 247, 255, 236, 231, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
403 { 121, 141, 235, 255, 225, 227, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
404 { 45, 99, 188, 251, 195, 217, 255, 224, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
405 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
406 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
407 { 1, 1, 251, 255, 213, 255, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
408 { 203, 1, 248, 255, 255, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
409 { 137, 1, 177, 255, 224, 255, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
410 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
411 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
412 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
413 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
414 { 253, 9, 248, 251, 207, 208, 255, 192, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
415 { 175, 13, 224, 243, 193, 185, 249, 198, 255, 255, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
416 { 73, 17, 171, 221, 161, 179, 236, 167, 255, 234, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
417 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
418 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
419 { 1, 95, 247, 253, 212, 183, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
420 { 239, 90, 244, 250, 211, 209, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
421 { 155, 77, 195, 248, 188, 195, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
422 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
423 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
424 { 1, 24, 239, 251, 218, 219, 255, 205, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
425 { 201, 51, 219, 255, 196, 186, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
426 { 69, 46, 190, 239, 201, 218, 255, 228, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
427 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
428 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
429 { 1, 191, 251, 255, 255, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
430 { 223, 165, 249, 255, 213, 255, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
431 { 141, 124, 248, 255, 255, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
432 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
433 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
434 { 1, 16, 248, 255, 255, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
435 { 190, 36, 230, 255, 236, 255, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
436 { 149, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
437 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
438 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
439 { 1, 226, 255, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
440 { 247, 192, 255, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
441 { 240, 128, 255, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
442 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
443 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
444 { 1, 134, 252, 255, 255, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
445 { 213, 62, 250, 255, 255, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
446 { 55, 93, 255, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
447 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
448 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
449 { 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
450 { 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
451 { 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
452 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
453 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
454 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
455 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
456 { 202, 24, 213, 235, 186, 191, 220, 160, 240, 175, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
457 { 126, 38, 182, 232, 169, 184, 228, 174, 255, 187, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
458 { 61, 46, 138, 219, 151, 178, 240, 170, 255, 216, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
459 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
460 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
461 { 1, 112, 230, 250, 199, 191, 247, 159, 255, 255, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
462 { 166, 109, 228, 252, 211, 215, 255, 174, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
463 { 39, 77, 162, 232, 172, 180, 245, 178, 255, 255, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
464 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
465 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
466 { 1, 52, 220, 246, 198, 199, 249, 220, 255, 255, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
467 { 124, 74, 191, 243, 183, 193, 250, 221, 255, 255, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
468 { 24, 71, 130, 219, 154, 170, 243, 182, 255, 255, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
469 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
470 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
471 { 1, 182, 225, 249, 219, 240, 255, 224, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
472 { 149, 150, 226, 252, 216, 205, 255, 171, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
473 { 28, 108, 170, 242, 183, 194, 254, 223, 255, 255, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
474 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
475 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
476 { 1, 81, 230, 252, 204, 203, 255, 192, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
477 { 123, 102, 209, 247, 188, 196, 255, 233, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
478 { 20, 95, 153, 243, 164, 173, 255, 203, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
479 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
480 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
481 { 1, 222, 248, 255, 216, 213, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
482 { 168, 175, 246, 252, 235, 205, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
483 { 47, 116, 215, 255, 211, 212, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
484 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
485 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
486 { 1, 121, 236, 253, 212, 214, 255, 255, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
487 { 141, 84, 213, 252, 201, 202, 255, 219, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
488 { 42, 80, 160, 240, 162, 185, 255, 205, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
489 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
490 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
491 { 1, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
492 { 244, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
493 { 238, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
494 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
495 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
496 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
497
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
498 static const uint8_t vp8_token_update_probs[4][8][3][NUM_DCT_TOKENS-1] =
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
499 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
500 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
501 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
502 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
503 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
504 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
505 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
506 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
507 { 176, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
508 { 223, 241, 252, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
509 { 249, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
510 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
511 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
512 { 255, 244, 252, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
513 { 234, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
514 { 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
515 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
516 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
517 { 255, 246, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
518 { 239, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
519 { 254, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
520 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
521 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
522 { 255, 248, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
523 { 251, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
524 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
525 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
526 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
527 { 255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
528 { 251, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
529 { 254, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
530 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
531 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
532 { 255, 254, 253, 255, 254, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
533 { 250, 255, 254, 255, 254, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
534 { 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
535 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
536 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
537 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
538 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
539 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
540 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
541 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
542 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
543 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
544 { 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
545 { 225, 252, 241, 253, 255, 255, 254, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
546 { 234, 250, 241, 250, 253, 255, 253, 254, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
547 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
548 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
549 { 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
550 { 223, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
551 { 238, 253, 254, 254, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
552 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
553 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
554 { 255, 248, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
555 { 249, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
556 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
557 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
558 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
559 { 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
560 { 247, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
561 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
562 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
563 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
564 { 255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
565 { 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
566 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
567 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
568 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
569 { 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
570 { 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
571 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
572 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
573 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
574 { 255, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
575 { 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
576 { 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
577 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
578 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
579 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
580 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
581 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
582 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
583 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
584 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
585 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
586 { 186, 251, 250, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
587 { 234, 251, 244, 254, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
588 { 251, 251, 243, 253, 254, 255, 254, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
589 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
590 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
591 { 255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
592 { 236, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
593 { 251, 253, 253, 254, 254, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
594 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
595 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
596 { 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
597 { 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
598 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
599 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
600 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
601 { 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
602 { 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
603 { 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
604 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
605 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
606 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
607 { 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
608 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
609 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
610 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
611 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
612 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
613 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
614 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
615 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
616 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
617 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
618 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
619 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
620 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
621 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
622 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
623 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
624 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
625 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
626 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
627 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
628 { 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
629 { 250, 254, 252, 254, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
630 { 248, 254, 249, 253, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
631 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
632 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
633 { 255, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
634 { 246, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
635 { 252, 254, 251, 254, 254, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
636 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
637 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
638 { 255, 254, 252, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
639 { 248, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
640 { 253, 255, 254, 254, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
641 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
642 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
643 { 255, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
644 { 245, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
645 { 253, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
646 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
647 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
648 { 255, 251, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
649 { 252, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
650 { 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
651 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
652 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
653 { 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
654 { 249, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
655 { 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
656 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
657 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
658 { 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
659 { 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
660 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
661 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
662 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
663 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
664 { 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
665 { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
666 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
667 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
668 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
669
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
670 // fixme: copied from h264data.h
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
671 static const uint8_t zigzag_scan[16]={
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
672 0+0*4, 1+0*4, 0+1*4, 0+2*4,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
673 1+1*4, 2+0*4, 3+0*4, 2+1*4,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
674 1+2*4, 0+3*4, 1+3*4, 2+2*4,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
675 3+1*4, 3+2*4, 2+3*4, 3+3*4,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
676 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
677
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
678 static const uint8_t vp8_dc_qlookup[VP8_MAX_QUANT+1] =
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
679 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
680 4, 5, 6, 7, 8, 9, 10, 10, 11, 12, 13, 14, 15, 16, 17, 17,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
681 18, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 25, 25, 26, 27, 28,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
682 29, 30, 31, 32, 33, 34, 35, 36, 37, 37, 38, 39, 40, 41, 42, 43,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
683 44, 45, 46, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
684 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
685 75, 76, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
686 91, 93, 95, 96, 98, 100, 101, 102, 104, 106, 108, 110, 112, 114, 116, 118,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
687 122, 124, 126, 128, 130, 132, 134, 136, 138, 140, 143, 145, 148, 151, 154, 157,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
688 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
689
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
690 static const uint16_t vp8_ac_qlookup[VP8_MAX_QUANT+1] =
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
691 {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
692 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
693 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
694 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
695 52, 53, 54, 55, 56, 57, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
696 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
697 110, 112, 114, 116, 119, 122, 125, 128, 131, 134, 137, 140, 143, 146, 149, 152,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
698 155, 158, 161, 164, 167, 170, 173, 177, 181, 185, 189, 193, 197, 201, 205, 209,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
699 213, 217, 221, 225, 229, 234, 239, 245, 249, 254, 259, 264, 269, 274, 279, 284,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
700 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
701
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
702 static const uint8_t vp8_mv_update_prob[2][19] = {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
703 { 237,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
704 246,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
705 253, 253, 254, 254, 254, 254, 254,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
706 254, 254, 254, 254, 254, 250, 250, 252, 254, 254 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
707 { 231,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
708 243,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
709 245, 253, 254, 254, 254, 254, 254,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
710 254, 254, 254, 254, 254, 251, 251, 254, 254, 254 }
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
711 };
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
712
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
713 static const uint8_t vp8_mv_default_prob[2][19] = {
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
714 { 162,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
715 128,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
716 225, 146, 172, 147, 214, 39, 156,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
717 128, 129, 132, 75, 145, 178, 206, 239, 254, 254 },
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
718 { 164,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
719 128,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
720 204, 170, 119, 235, 140, 230, 228,
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
721 128, 130, 130, 74, 148, 180, 203, 236, 254, 254 }
f2007d7c3f1d Native VP8 decoder.
rbultje
parents:
diff changeset
722 };