annotate vc1data.h @ 3359:87187ebe2c28 libavcodec

Rename VC9 to VC1 as there is no such thing as VC9
author kostya
date Tue, 27 Jun 2006 02:55:54 +0000
parents
children 2c4ddf5b9217
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3359
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
1 /**
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
2 * @file vc1data.h
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
3 * VC1 tables.
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
4 */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
5
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
6 #ifndef VC1DATA_H
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
7 #define VC1DATA_H
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
8
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
9 /* bfraction is fractional, we scale to the GCD 3*5*7*8 = 840 */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
10 const int16_t vc1_bfraction_lut[23] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
11 420 /*1/2*/, 280 /*1/3*/, 560 /*2/3*/, 210 /*1/4*/,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
12 630 /*3/4*/, 168 /*1/5*/, 336 /*2/5*/,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
13 504 /*3/5*/, 672 /*4/5*/, 140 /*1/6*/, 700 /*5/6*/,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
14 120 /*1/7*/, 240 /*2/7*/, 360 /*3/7*/, 480 /*4/7*/,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
15 600 /*5/7*/, 720 /*6/7*/, 105 /*1/8*/, 315 /*3/8*/,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
16 525 /*5/8*/, 735 /*7/8*/,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
17 -1 /*inv.*/, 0 /*BI fm*/
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
18 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
19 const uint8_t vc1_bfraction_bits[23] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
20 3, 3, 3, 3,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
21 3, 3, 3,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
22 7, 7, 7, 7,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
23 7, 7, 7, 7,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
24 7, 7, 7, 7,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
25 7, 7,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
26 7, 7
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
27 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
28 const uint8_t vc1_bfraction_codes[23] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
29 0, 1, 2, 3,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
30 4, 5, 6,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
31 112, 113, 114, 115,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
32 116, 117, 118, 119,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
33 120, 121, 122, 123,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
34 124, 125,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
35 126, 127
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
36 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
37
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
38 //Same as H.264
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
39 static const AVRational vc1_pixel_aspect[16]={
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
40 {0, 1},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
41 {1, 1},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
42 {12, 11},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
43 {10, 11},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
44 {16, 11},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
45 {40, 33},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
46 {24, 11},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
47 {20, 11},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
48 {32, 11},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
49 {80, 33},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
50 {18, 11},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
51 {15, 11},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
52 {64, 33},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
53 {160, 99},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
54 {0, 1},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
55 {0, 1}
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
56 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
57
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
58 /* BitPlane IMODE - such a small table... */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
59 static const uint8_t vc1_imode_codes[7] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
60 0, 2, 1, 3, 1, 2, 3
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
61 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
62 static const uint8_t vc1_imode_bits[7] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
63 4, 2, 3, 2, 4, 3, 3
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
64 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
65
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
66 /* Normal-2 imode */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
67 static const uint8_t vc1_norm2_codes[4] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
68 0, 4, 5, 3
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
69 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
70 static const uint8_t vc1_norm2_bits[4] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
71 1, 3, 3, 2
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
72 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
73
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
74 static const uint16_t vc1_norm6_codes[64] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
75 0x001, 0x002, 0x003, 0x000, 0x004, 0x001, 0x002, 0x047, 0x005, 0x003, 0x004, 0x04B, 0x005, 0x04D, 0x04E, 0x30E,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
76 0x006, 0x006, 0x007, 0x053, 0x008, 0x055, 0x056, 0x30D, 0x009, 0x059, 0x05A, 0x30C, 0x05C, 0x30B, 0x30A, 0x037,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
77 0x007, 0x00A, 0x00B, 0x043, 0x00C, 0x045, 0x046, 0x309, 0x00D, 0x049, 0x04A, 0x308, 0x04C, 0x307, 0x306, 0x036,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
78 0x00E, 0x051, 0x052, 0x305, 0x054, 0x304, 0x303, 0x035, 0x058, 0x302, 0x301, 0x034, 0x300, 0x033, 0x032, 0x007,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
79 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
80
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
81 static const uint8_t vc1_norm6_bits[64] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
82 1, 4, 4, 8, 4, 8, 8, 10, 4, 8, 8, 10, 8, 10, 10, 13,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
83 4, 8, 8, 10, 8, 10, 10, 13, 8, 10, 10, 13, 10, 13, 13, 9,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
84 4, 8, 8, 10, 8, 10, 10, 13, 8, 10, 10, 13, 10, 13, 13, 9,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
85 8, 10, 10, 13, 10, 13, 13, 9, 10, 13, 13, 9, 13, 9, 9, 6,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
86 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
87 /* Normal-6 imode */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
88 static const uint8_t vc1_norm6_spec[64][5] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
89 { 0, 1, 1 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
90 { 1, 2, 4 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
91 { 2, 3, 4 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
92 { 3, 0, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
93 { 4, 4, 4 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
94 { 5, 1, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
95 { 6, 2, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
96 { 7, 2, 5, 7, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
97 { 8, 5, 4 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
98 { 9, 3, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
99 {10, 4, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
100 {11, 2, 5, 11, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
101 {12, 5, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
102 {13, 2, 5, 13, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
103 {14, 2, 5, 14, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
104 {15, 3, 5, 14, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
105 {16, 6, 4 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
106 {17, 6, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
107 {18, 7, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
108 {19, 2, 5, 19, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
109 {20, 8, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
110 {21, 2, 5, 21, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
111 {22, 2, 5, 22, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
112 {23, 3, 5, 13, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
113 {24, 9, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
114 {25, 2, 5, 25, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
115 {26, 2, 5, 26, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
116 {27, 3, 5, 12, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
117 {28, 2, 5, 28, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
118 {29, 3, 5, 11, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
119 {30, 3, 5, 10, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
120 {31, 3, 5, 7, 4 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
121 {32, 7, 4 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
122 {33, 10, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
123 {34, 11, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
124 {35, 2, 5, 3, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
125 {36, 12, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
126 {37, 2, 5, 5, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
127 {38, 2, 5, 6, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
128 {39, 3, 5, 9, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
129 {40, 13, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
130 {41, 2, 5, 9, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
131 {42, 2, 5, 10, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
132 {43, 3, 5, 8, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
133 {44, 2, 5, 12, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
134 {45, 3, 5, 7, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
135 {46, 3, 5, 6, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
136 {47, 3, 5, 6, 4 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
137 {48, 14, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
138 {49, 2, 5, 17, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
139 {50, 2, 5, 18, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
140 {51, 3, 5, 5, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
141 {52, 2, 5, 20, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
142 {53, 3, 5, 4, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
143 {54, 3, 5, 3, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
144 {55, 3, 5, 5, 4 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
145 {56, 2, 5, 24, 5 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
146 {57, 3, 5, 2, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
147 {58, 3, 5, 1, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
148 {59, 3, 5, 4, 4 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
149 {60, 3, 5, 0, 8 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
150 {61, 3, 5, 3, 4 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
151 {62, 3, 5, 2, 4 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
152 {63, 3, 5, 1, 1 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
153 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
154
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
155 /* 4MV Block pattern VLC tables */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
156 static const uint8_t vc1_4mv_block_pattern_codes[4][16] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
157 { 14, 58, 59, 25, 12, 26, 15, 15, 13, 24, 27, 0, 28, 1, 2, 2},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
158 { 8, 18, 19, 4, 20, 5, 30, 11, 21, 31, 6, 12, 7, 13, 14, 0},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
159 { 15, 6, 7, 2, 8, 3, 28, 9, 10, 29, 4, 11, 5, 12, 13, 0},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
160 { 0, 11, 12, 4, 13, 5, 30, 16, 14, 31, 6, 17, 7, 18, 19, 19}
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
161 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
162 static const uint8_t vc1_4mv_block_pattern_bits[4][16] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
163 { 5, 6, 6, 5, 5, 5, 5, 4, 5, 5, 5, 3, 5, 3, 3, 2},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
164 { 4, 5, 5, 4, 5, 4, 5, 4, 5, 5, 4, 4, 4, 4, 4, 2},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
165 { 4, 4, 4, 4, 4, 4, 5, 4, 4, 5, 4, 4, 4, 4, 4, 3},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
166 { 2, 4, 4, 4, 4, 4, 5, 5, 4, 5, 4, 5, 4, 5, 5, 4}
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
167 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
168
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
169 const uint8_t wmv3_dc_scale_table[32]={
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
170 0, 4, 6, 8, 8, 8, 9, 9,10,10,11,11,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
171 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
172
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
173 /* P-Picture CBPCY VLC tables */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
174 static const uint16_t vc1_cbpcy_p_codes[4][64] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
175 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
176 0, 1, 1, 4, 5, 1, 12, 4, 13, 14, 10, 11, 12, 7, 13, 2,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
177 15, 1, 96, 1, 49, 97, 2, 100, 3, 4, 5, 101, 102, 52, 53, 4,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
178 6, 7, 54, 103, 8, 9, 10, 110, 11, 12, 111, 56, 114, 58, 115, 5,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
179 13, 7, 8, 9, 10, 11, 12, 30, 13, 14, 15, 118, 119, 62, 63, 3
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
180 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
181 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
182 0, 1, 2, 1, 3, 1, 16, 17, 5, 18, 12, 19, 13, 1, 28, 58,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
183 1, 1, 1, 2, 3, 2, 3, 236, 237, 4, 5, 238, 6, 7, 239, 8,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
184 9, 240, 10, 11, 121, 122, 12, 13, 14, 15, 241, 246, 16, 17, 124, 63,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
185 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 247, 125
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
186 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
187 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
188 0, 1, 2, 3, 2, 3, 1, 4, 5, 24, 7, 13, 16, 17, 9, 5,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
189 25, 1, 1, 1, 2, 3, 96, 194, 1, 2, 98, 99, 195, 200, 101, 26,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
190 201, 102, 412, 413, 414, 54, 220, 111, 221, 3, 224, 113, 225, 114, 230, 29,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
191 231, 415, 240, 4, 241, 484, 5, 243, 3, 244, 245, 485, 492, 493, 247, 31
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
192 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
193 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
194 0, 1, 1, 1, 2, 2, 3, 4, 3, 5, 6, 7, 8, 9, 10, 11,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
195 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
196 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
197 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 28, 29, 30, 31
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
198 }
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
199 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
200 static const uint8_t vc1_cbpcy_p_bits[4][64] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
201 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
202 13, 6, 5, 6, 6, 7, 7, 5, 7, 7, 6, 6, 6, 5, 6, 3,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
203 7, 8, 8, 13, 7, 8, 13, 8, 13, 13, 13, 8, 8, 7, 7, 3,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
204 13, 13, 7, 8, 13, 13, 13, 8, 13, 13, 8, 7, 8, 7, 8, 3,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
205 13, 12, 12, 12, 12, 12, 12, 6, 12, 12, 12, 8, 8, 7, 7, 2
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
206 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
207 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
208 14, 3, 3, 5, 3, 4, 5, 5, 3, 5, 4, 5, 4, 6, 5, 6,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
209 8, 14, 13, 8, 8, 13, 13, 8, 8, 13, 13, 8, 13, 13, 8, 13,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
210 13, 8, 13, 13, 7, 7, 13, 13, 13, 13, 8, 8, 13, 13, 7, 6,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
211 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 8, 7
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
212 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
213 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
214 13, 5, 5, 5, 4, 4, 6, 4, 4, 6, 4, 5, 5, 5, 4, 3,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
215 6, 8, 10, 9, 8, 8, 7, 8, 13, 13, 7, 7, 8, 8, 7, 5,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
216 8, 7, 9, 9, 9, 6, 8, 7, 8, 13, 8, 7, 8, 7, 8, 5,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
217 8, 9, 8, 13, 8, 9, 13, 8, 12, 8, 8, 9, 9, 9, 8, 5
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
218 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
219 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
220 9, 2, 3, 9, 2, 9, 9, 9, 2, 9, 9, 9, 9, 9, 9, 9,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
221 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
222 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
223 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 8, 8, 8, 8
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
224 }
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
225 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
226
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
227 /* MacroBlock Transform Type: 7.1.3.11, p89
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
228 * 8x8:B
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
229 * 8x4:B:btm 8x4:B:top 8x4:B:both,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
230 * 4x8:B:right 4x8:B:left 4x8:B:both
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
231 * 4x4:B 8x8:MB
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
232 * 8x4:MB:btm 8x4:MB:top 8x4,MB,both
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
233 * 4x8,MB,right 4x8,MB,left
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
234 * 4x4,MB */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
235 static const uint16_t vc1_ttmb_codes[3][16] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
236 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
237 0x0003,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
238 0x002E, 0x005F, 0x0000,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
239 0x0016, 0x0015, 0x0001,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
240 0x0004, 0x0014,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
241 0x02F1, 0x0179, 0x017B,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
242 0x0BC0, 0x0BC1, 0x05E1,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
243 0x017A
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
244 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
245 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
246 0x0006,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
247 0x0006, 0x0003, 0x0007,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
248 0x000F, 0x000E, 0x0000,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
249 0x0002, 0x0002,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
250 0x0014, 0x0011, 0x000B,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
251 0x0009, 0x0021, 0x0015,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
252 0x0020
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
253 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
254 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
255 0x0006,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
256 0x0000, 0x000E, 0x0005,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
257 0x0002, 0x0003, 0x0003,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
258 0x000F, 0x0002,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
259 0x0081, 0x0021, 0x0009,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
260 0x0101, 0x0041, 0x0011,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
261 0x0100
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
262 }
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
263 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
264
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
265 static const uint8_t vc1_ttmb_bits[3][16] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
266 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
267 2,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
268 6, 7, 2,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
269 5, 5, 2,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
270 3, 5,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
271 10, 9, 9,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
272 12, 12, 11,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
273 9
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
274 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
275 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
276 3,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
277 4, 4, 4,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
278 4, 4, 3,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
279 3, 2,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
280 7, 7, 6,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
281 6, 8, 7,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
282 8
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
283 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
284 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
285 3,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
286 3, 4, 5,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
287 3, 3, 4,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
288 4, 2,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
289 10, 8, 6,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
290 11, 9, 7,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
291 11
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
292 }
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
293 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
294
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
295 /* TTBLK (Transform Type per Block) tables */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
296 static const uint8_t vc1_ttblk_codes[3][8] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
297 { 0, 1, 3, 5, 16, 17, 18, 19},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
298 { 3, 0, 1, 2, 3, 5, 8, 9},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
299 { 1, 0, 1, 4, 6, 7, 10, 11}
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
300 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
301 static const uint8_t vc1_ttblk_bits[3][8] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
302 { 2, 2, 2, 3, 5, 5, 5, 5},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
303 { 2, 3, 3, 3, 3, 3, 4, 4},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
304 { 2, 3, 3, 3, 3, 3, 4, 4}
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
305 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
306
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
307 /* SUBBLKPAT tables, p93-94, reordered */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
308 static const uint8_t vc1_subblkpat_codes[3][15] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
309 { 14, 12, 7, 11, 9, 26, 2, 10, 27, 8, 0, 6, 1, 15, 1},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
310 { 14, 0, 8, 15, 10, 4, 23, 13, 5, 9, 25, 3, 24, 22, 1},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
311 { 5, 6, 2, 2, 8, 0, 28, 3, 1, 3, 29, 1, 19, 18, 15}
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
312 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
313 static const uint8_t vc1_subblkpat_bits[3][15] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
314 { 5, 5, 5, 5, 5, 6, 4, 5, 6, 5, 4, 5, 4, 5, 1},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
315 { 4, 3, 4, 4, 4, 5, 5, 4, 5, 4, 5, 4, 5, 5, 2},
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
316 { 3, 3, 4, 3, 4, 5, 5, 3, 5, 4, 5, 4, 5, 5, 4}
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
317 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
318
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
319 /* MV differential tables, p265 */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
320 static const uint16_t vc1_mv_diff_codes[4][73] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
321 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
322 0, 2, 3, 8, 576, 3, 2, 6,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
323 5, 577, 578, 7, 8, 9, 40, 19,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
324 37, 82, 21, 22, 23, 579, 580, 166,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
325 96, 167, 49, 194, 195, 581, 582, 583,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
326 292, 293, 294, 13, 2, 7, 24, 50,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
327 102, 295, 13, 7, 8, 18, 50, 103,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
328 38, 20, 21, 22, 39, 204, 103, 23,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
329 24, 25, 104, 410, 105, 106, 107, 108,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
330 109, 220, 411, 442, 222, 443, 446, 447,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
331 7 /* 73 elements */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
332 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
333 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
334 0, 4, 5, 3, 4, 3, 4, 5,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
335 20, 6, 21, 44, 45, 46, 3008, 95,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
336 112, 113, 57, 3009, 3010, 116, 117, 3011,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
337 118, 3012, 3013, 3014, 3015, 3016, 3017, 3018,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
338 3019, 3020, 3021, 3022, 1, 4, 15, 160,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
339 161, 41, 6, 11, 42, 162, 43, 119,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
340 56, 57, 58, 163, 236, 237, 3023, 119,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
341 120, 242, 122, 486, 1512, 487, 246, 494,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
342 1513, 495, 1514, 1515, 1516, 1517, 1518, 1519,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
343 31 /* 73 elements */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
344 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
345 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
346 0, 512, 513, 514, 515, 2, 3, 258,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
347 259, 260, 261, 262, 263, 264, 265, 266,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
348 267, 268, 269, 270, 271, 272, 273, 274,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
349 275, 276, 277, 278, 279, 280, 281, 282,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
350 283, 284, 285, 286, 1, 5, 287, 288,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
351 289, 290, 6, 7, 291, 292, 293, 294,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
352 295, 296, 297, 298, 299, 300, 301, 302,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
353 303, 304, 305, 306, 307, 308, 309, 310,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
354 311, 312, 313, 314, 315, 316, 317, 318,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
355 319 /* 73 elements */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
356 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
357 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
358 0, 1, 1, 2, 3, 4, 1, 5,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
359 4, 3, 5, 8, 6, 9, 10, 11,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
360 12, 7, 104, 14, 105, 4, 10, 15,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
361 11, 6, 14, 8, 106, 107, 108, 15,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
362 109, 9, 55, 10, 1, 2, 1, 2,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
363 3, 12, 6, 2, 6, 7, 28, 7,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
364 15, 8, 5, 18, 29, 152, 77, 24,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
365 25, 26, 39, 108, 13, 109, 55, 56,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
366 57, 116, 11, 153, 234, 235, 118, 119,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
367 15 /* 73 elements */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
368 }
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
369 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
370 static const uint8_t vc1_mv_diff_bits[4][73] = {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
371 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
372 6, 7, 7, 8, 14, 6, 5, 6, 7, 14, 14, 6, 6, 6, 8, 9,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
373 10, 9, 7, 7, 7, 14, 14, 10, 9, 10, 8, 10, 10, 14, 14, 14,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
374 13, 13, 13, 6, 3, 5, 6, 8, 9, 13, 5, 4, 4, 5, 7, 9,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
375 6, 5, 5, 5, 6, 9, 8, 5, 5, 5, 7, 10, 7, 7, 7, 7,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
376 7, 8, 10, 9, 8, 9, 9, 9, 3 /* 73 elements */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
377 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
378 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
379 5, 7, 7, 6, 6, 5, 5, 6, 7, 5, 7, 8, 8, 8, 14, 9,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
380 9, 9, 8, 14, 14, 9, 9, 14, 9, 14, 14, 14, 14, 14, 14, 14,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
381 14, 14, 14, 14, 2, 3, 6, 8, 8, 6, 3, 4, 6, 8, 6, 9,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
382 6, 6, 6, 8, 8, 8, 14, 7, 7, 8, 7, 9, 13, 9, 8, 9,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
383 13, 9, 13, 13, 13, 13, 13, 13, 5 /* 73 elements */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
384
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
385 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
386 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
387 3, 12, 12, 12, 12, 3, 4, 11, 11, 11, 11, 11, 11, 11, 11, 11,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
388 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
389 11, 11, 11, 11, 1, 5, 11, 11, 11, 11, 4, 4, 11, 11, 11, 11,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
390 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
391 11, 11, 11, 11, 11, 11, 11, 11, 11 /* 73 elements */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
392 },
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
393 {
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
394 15, 11, 15, 15, 15, 15, 12, 15, 12, 11, 12, 12, 15, 12, 12, 12,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
395 12, 15, 15, 12, 15, 10, 11, 12, 11, 10, 11, 10, 15, 15, 15, 11,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
396 15, 10, 14, 10, 4, 4, 5, 7, 8, 9, 5, 3, 4, 5, 6, 8,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
397 5, 4, 3, 5, 6, 8, 7, 5, 5, 5, 6, 7, 9, 7, 6, 6,
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
398 6, 7, 10, 8, 8, 8, 7, 7, 4 /* 73 elements */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
399 }
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
400 };
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
401
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
402 /* DC differentials low+hi-mo, p217 are the same as in msmpeg4data .h */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
403
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
404 /* Scantables/ZZ scan are at 11.9 (p262) and 8.1.1.12 (p10) */
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
405
87187ebe2c28 Rename VC9 to VC1 as there is no such thing as VC9
kostya
parents:
diff changeset
406 #endif /* VC1DATA_H */