annotate msmpeg4data.h @ 4580:55d7ebd2d699 libavcodec

fix chroma mc2 bug, this is based on a patch by (Oleg Metelitsa oleg hitron co kr) and does slow the mc2 chroma put down, avg interrestingly seems unaffected speedwise on duron this of course should be rather done in a way which doesnt slow it down but its better a few % slower but correct then incorrect
author michael
date Fri, 23 Feb 2007 14:29:13 +0000
parents c8c591fe26f8
children d9ea176a6621
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3699
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
1 /*
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
2 * MSMPEG4 backend for ffmpeg encoder and decoder
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
3 * copyright (c) 2001 Fabrice Bellard
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
4 * copyright (c) 2002-2004 Michael Niedermayer <michaelni@gmx.at>
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
5 *
3947
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3699
diff changeset
6 * This file is part of FFmpeg.
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3699
diff changeset
7 *
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3699
diff changeset
8 * FFmpeg is free software; you can redistribute it and/or
3699
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
9 * modify it under the terms of the GNU Lesser General Public
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
10 * License as published by the Free Software Foundation; either
3947
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3699
diff changeset
11 * version 2.1 of the License, or (at your option) any later version.
3699
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
12 *
3947
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3699
diff changeset
13 * FFmpeg is distributed in the hope that it will be useful,
3699
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
16 * Lesser General Public License for more details.
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
17 *
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
18 * You should have received a copy of the GNU Lesser General Public
3947
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3699
diff changeset
19 * License along with FFmpeg; if not, write to the Free Software
3699
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
21 *
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
22 * msmpeg4v1 & v2 stuff by Michael Niedermayer <michaelni@gmx.at>
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
23 */
c537a97eec66 Add official LGPL license headers to the files that were missing them.
diego
parents: 2967
diff changeset
24
1106
1e39f273ecd6 per file doxy
michaelni
parents: 1013
diff changeset
25 /**
1e39f273ecd6 per file doxy
michaelni
parents: 1013
diff changeset
26 * @file msmpeg4data.h
2967
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
27 * MSMPEG4 data tables.
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
28 */
986e461dc072 Initial revision
glantau
parents:
diff changeset
29
986e461dc072 Initial revision
glantau
parents:
diff changeset
30 /* intra picture macro block coded block pattern */
2474
81a9f883a17a In that patch:
michael
parents: 2465
diff changeset
31 const uint16_t ff_msmp4_mb_i_table[64][2] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
32 { 0x1, 1 },{ 0x17, 6 },{ 0x9, 5 },{ 0x5, 5 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
33 { 0x6, 5 },{ 0x47, 9 },{ 0x20, 7 },{ 0x10, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
34 { 0x2, 5 },{ 0x7c, 9 },{ 0x3a, 7 },{ 0x1d, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
35 { 0x2, 6 },{ 0xec, 9 },{ 0x77, 8 },{ 0x0, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
36 { 0x3, 5 },{ 0xb7, 9 },{ 0x2c, 7 },{ 0x13, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
37 { 0x1, 6 },{ 0x168, 10 },{ 0x46, 8 },{ 0x3f, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
38 { 0x1e, 6 },{ 0x712, 13 },{ 0xb5, 9 },{ 0x42, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
39 { 0x22, 7 },{ 0x1c5, 11 },{ 0x11e, 10 },{ 0x87, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
40 { 0x6, 4 },{ 0x3, 9 },{ 0x1e, 7 },{ 0x1c, 6 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
41 { 0x12, 7 },{ 0x388, 12 },{ 0x44, 9 },{ 0x70, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
42 { 0x1f, 6 },{ 0x23e, 11 },{ 0x39, 8 },{ 0x8e, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
43 { 0x1, 7 },{ 0x1c6, 11 },{ 0xb6, 9 },{ 0x45, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
44 { 0x14, 6 },{ 0x23f, 11 },{ 0x7d, 9 },{ 0x18, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
45 { 0x7, 7 },{ 0x1c7, 11 },{ 0x86, 9 },{ 0x19, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
46 { 0x15, 6 },{ 0x1db, 10 },{ 0x2, 9 },{ 0x46, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
47 { 0xd, 8 },{ 0x713, 13 },{ 0x1da, 10 },{ 0x169, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
48 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
49
986e461dc072 Initial revision
glantau
parents:
diff changeset
50 /* non intra picture macro block coded block pattern + mb type */
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
51 static const uint32_t table_mb_non_intra[128][2] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
52 { 0x40, 7 },{ 0x13c9, 13 },{ 0x9fd, 12 },{ 0x1fc, 15 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
53 { 0x9fc, 12 },{ 0xa83, 18 },{ 0x12d34, 17 },{ 0x83bc, 16 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
54 { 0x83a, 12 },{ 0x7f8, 17 },{ 0x3fd, 16 },{ 0x3ff, 16 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
55 { 0x79, 13 },{ 0xa82, 18 },{ 0x969d, 16 },{ 0x2a4, 16 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
56 { 0x978, 12 },{ 0x543, 17 },{ 0x41df, 15 },{ 0x7f9, 17 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
57 { 0x12f3, 13 },{ 0x25a6b, 18 },{ 0x25ef9, 18 },{ 0x3fa, 16 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
58 { 0x20ee, 14 },{ 0x969ab, 20 },{ 0x969c, 16 },{ 0x25ef8, 18 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
59 { 0x12d2, 13 },{ 0xa85, 18 },{ 0x969e, 16 },{ 0x4bc8, 15 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
60 { 0x3d, 12 },{ 0x12f7f, 17 },{ 0x2a2, 16 },{ 0x969f, 16 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
61 { 0x25ee, 14 },{ 0x12d355, 21 },{ 0x12f7d, 17 },{ 0x12f7e, 17 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
62 { 0x9e5, 12 },{ 0xa81, 18 },{ 0x4b4d4, 19 },{ 0x83bd, 16 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
63 { 0x78, 13 },{ 0x969b, 16 },{ 0x3fe, 16 },{ 0x2a5, 16 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
64 { 0x7e, 13 },{ 0xa80, 18 },{ 0x2a3, 16 },{ 0x3fb, 16 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
65 { 0x1076, 13 },{ 0xa84, 18 },{ 0x153, 15 },{ 0x4bc9, 15 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
66 { 0x55, 13 },{ 0x12d354, 21 },{ 0x4bde, 15 },{ 0x25e5, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
67 { 0x25b, 10 },{ 0x4b4c, 15 },{ 0x96b, 12 },{ 0x96a, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
68 { 0x1, 2 },{ 0x0, 7 },{ 0x26, 6 },{ 0x12b, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
69 { 0x7, 3 },{ 0x20f, 10 },{ 0x4, 9 },{ 0x28, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
70 { 0x6, 3 },{ 0x20a, 10 },{ 0x128, 9 },{ 0x2b, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
71 { 0x11, 5 },{ 0x1b, 11 },{ 0x13a, 9 },{ 0x4ff, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
72 { 0x3, 4 },{ 0x277, 10 },{ 0x106, 9 },{ 0x839, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
73 { 0xb, 4 },{ 0x27b, 10 },{ 0x12c, 9 },{ 0x4bf, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
74 { 0x9, 6 },{ 0x35, 12 },{ 0x27e, 10 },{ 0x13c8, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
75 { 0x1, 6 },{ 0x4aa, 11 },{ 0x208, 10 },{ 0x29, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
76 { 0x1, 4 },{ 0x254, 10 },{ 0x12e, 9 },{ 0x838, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
77 { 0x24, 6 },{ 0x4f3, 11 },{ 0x276, 10 },{ 0x12f6, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
78 { 0x1, 5 },{ 0x27a, 10 },{ 0x13e, 9 },{ 0x3e, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
79 { 0x8, 6 },{ 0x413, 11 },{ 0xc, 10 },{ 0x4be, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
80 { 0x14, 5 },{ 0x412, 11 },{ 0x253, 10 },{ 0x97a, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
81 { 0x21, 6 },{ 0x4ab, 11 },{ 0x20b, 10 },{ 0x34, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
82 { 0x15, 5 },{ 0x278, 10 },{ 0x252, 10 },{ 0x968, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
83 { 0x5, 5 },{ 0xb, 10 },{ 0x9c, 8 },{ 0xe, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
84 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
85
986e461dc072 Initial revision
glantau
parents:
diff changeset
86 /* dc table 0 */
986e461dc072 Initial revision
glantau
parents:
diff changeset
87
2465
5565203c95ee use dc tables from msmpeg4 instead of duplicating them patch by anonymous
michael
parents: 1106
diff changeset
88 const uint32_t ff_table0_dc_lum[120][2] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
89 { 0x1, 1 },{ 0x1, 2 },{ 0x1, 4 },{ 0x1, 5 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
90 { 0x5, 5 },{ 0x7, 5 },{ 0x8, 6 },{ 0xc, 6 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
91 { 0x0, 7 },{ 0x2, 7 },{ 0x12, 7 },{ 0x1a, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
92 { 0x3, 8 },{ 0x7, 8 },{ 0x27, 8 },{ 0x37, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
93 { 0x5, 9 },{ 0x4c, 9 },{ 0x6c, 9 },{ 0x6d, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
94 { 0x8, 10 },{ 0x19, 10 },{ 0x9b, 10 },{ 0x1b, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
95 { 0x9a, 10 },{ 0x13, 11 },{ 0x34, 11 },{ 0x35, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
96 { 0x61, 12 },{ 0x48, 13 },{ 0xc4, 13 },{ 0x4a, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
97 { 0xc6, 13 },{ 0xc7, 13 },{ 0x92, 14 },{ 0x18b, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
98 { 0x93, 14 },{ 0x183, 14 },{ 0x182, 14 },{ 0x96, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
99 { 0x97, 14 },{ 0x180, 14 },{ 0x314, 15 },{ 0x315, 15 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
100 { 0x605, 16 },{ 0x604, 16 },{ 0x606, 16 },{ 0xc0e, 17 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
101 { 0x303cd, 23 },{ 0x303c9, 23 },{ 0x303c8, 23 },{ 0x303ca, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
102 { 0x303cb, 23 },{ 0x303cc, 23 },{ 0x303ce, 23 },{ 0x303cf, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
103 { 0x303d0, 23 },{ 0x303d1, 23 },{ 0x303d2, 23 },{ 0x303d3, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
104 { 0x303d4, 23 },{ 0x303d5, 23 },{ 0x303d6, 23 },{ 0x303d7, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
105 { 0x303d8, 23 },{ 0x303d9, 23 },{ 0x303da, 23 },{ 0x303db, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
106 { 0x303dc, 23 },{ 0x303dd, 23 },{ 0x303de, 23 },{ 0x303df, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
107 { 0x303e0, 23 },{ 0x303e1, 23 },{ 0x303e2, 23 },{ 0x303e3, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
108 { 0x303e4, 23 },{ 0x303e5, 23 },{ 0x303e6, 23 },{ 0x303e7, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
109 { 0x303e8, 23 },{ 0x303e9, 23 },{ 0x303ea, 23 },{ 0x303eb, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
110 { 0x303ec, 23 },{ 0x303ed, 23 },{ 0x303ee, 23 },{ 0x303ef, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
111 { 0x303f0, 23 },{ 0x303f1, 23 },{ 0x303f2, 23 },{ 0x303f3, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
112 { 0x303f4, 23 },{ 0x303f5, 23 },{ 0x303f6, 23 },{ 0x303f7, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
113 { 0x303f8, 23 },{ 0x303f9, 23 },{ 0x303fa, 23 },{ 0x303fb, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
114 { 0x303fc, 23 },{ 0x303fd, 23 },{ 0x303fe, 23 },{ 0x303ff, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
115 { 0x60780, 24 },{ 0x60781, 24 },{ 0x60782, 24 },{ 0x60783, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
116 { 0x60784, 24 },{ 0x60785, 24 },{ 0x60786, 24 },{ 0x60787, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
117 { 0x60788, 24 },{ 0x60789, 24 },{ 0x6078a, 24 },{ 0x6078b, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
118 { 0x6078c, 24 },{ 0x6078d, 24 },{ 0x6078e, 24 },{ 0x6078f, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
119 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
120
2465
5565203c95ee use dc tables from msmpeg4 instead of duplicating them patch by anonymous
michael
parents: 1106
diff changeset
121 const uint32_t ff_table0_dc_chroma[120][2] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
122 { 0x0, 2 },{ 0x1, 2 },{ 0x5, 3 },{ 0x9, 4 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
123 { 0xd, 4 },{ 0x11, 5 },{ 0x1d, 5 },{ 0x1f, 5 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
124 { 0x21, 6 },{ 0x31, 6 },{ 0x38, 6 },{ 0x33, 6 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
125 { 0x39, 6 },{ 0x3d, 6 },{ 0x61, 7 },{ 0x79, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
126 { 0x80, 8 },{ 0xc8, 8 },{ 0xca, 8 },{ 0xf0, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
127 { 0x81, 8 },{ 0xc0, 8 },{ 0xc9, 8 },{ 0x107, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
128 { 0x106, 9 },{ 0x196, 9 },{ 0x183, 9 },{ 0x1e3, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
129 { 0x1e2, 9 },{ 0x20a, 10 },{ 0x20b, 10 },{ 0x609, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
130 { 0x412, 11 },{ 0x413, 11 },{ 0x60b, 11 },{ 0x411, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
131 { 0x60a, 11 },{ 0x65f, 11 },{ 0x410, 11 },{ 0x65d, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
132 { 0x65e, 11 },{ 0xcb8, 12 },{ 0xc10, 12 },{ 0xcb9, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
133 { 0x1823, 13 },{ 0x3045, 14 },{ 0x6089, 15 },{ 0xc110, 16 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
134 { 0x304448, 22 },{ 0x304449, 22 },{ 0x30444a, 22 },{ 0x30444b, 22 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
135 { 0x30444c, 22 },{ 0x30444d, 22 },{ 0x30444e, 22 },{ 0x30444f, 22 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
136 { 0x304450, 22 },{ 0x304451, 22 },{ 0x304452, 22 },{ 0x304453, 22 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
137 { 0x304454, 22 },{ 0x304455, 22 },{ 0x304456, 22 },{ 0x304457, 22 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
138 { 0x304458, 22 },{ 0x304459, 22 },{ 0x30445a, 22 },{ 0x30445b, 22 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
139 { 0x30445c, 22 },{ 0x30445d, 22 },{ 0x30445e, 22 },{ 0x30445f, 22 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
140 { 0x304460, 22 },{ 0x304461, 22 },{ 0x304462, 22 },{ 0x304463, 22 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
141 { 0x304464, 22 },{ 0x304465, 22 },{ 0x304466, 22 },{ 0x304467, 22 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
142 { 0x304468, 22 },{ 0x304469, 22 },{ 0x30446a, 22 },{ 0x30446b, 22 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
143 { 0x30446c, 22 },{ 0x30446d, 22 },{ 0x30446e, 22 },{ 0x30446f, 22 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
144 { 0x304470, 22 },{ 0x304471, 22 },{ 0x304472, 22 },{ 0x304473, 22 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
145 { 0x304474, 22 },{ 0x304475, 22 },{ 0x304476, 22 },{ 0x304477, 22 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
146 { 0x304478, 22 },{ 0x304479, 22 },{ 0x30447a, 22 },{ 0x30447b, 22 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
147 { 0x30447c, 22 },{ 0x30447d, 22 },{ 0x30447e, 22 },{ 0x30447f, 22 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
148 { 0x608880, 23 },{ 0x608881, 23 },{ 0x608882, 23 },{ 0x608883, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
149 { 0x608884, 23 },{ 0x608885, 23 },{ 0x608886, 23 },{ 0x608887, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
150 { 0x608888, 23 },{ 0x608889, 23 },{ 0x60888a, 23 },{ 0x60888b, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
151 { 0x60888c, 23 },{ 0x60888d, 23 },{ 0x60888e, 23 },{ 0x60888f, 23 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
152 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
153
986e461dc072 Initial revision
glantau
parents:
diff changeset
154 /* dc table 1 */
986e461dc072 Initial revision
glantau
parents:
diff changeset
155
2465
5565203c95ee use dc tables from msmpeg4 instead of duplicating them patch by anonymous
michael
parents: 1106
diff changeset
156 const uint32_t ff_table1_dc_lum[120][2] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
157 { 0x2, 2 },{ 0x3, 2 },{ 0x3, 3 },{ 0x2, 4 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
158 { 0x5, 4 },{ 0x1, 5 },{ 0x3, 5 },{ 0x8, 5 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
159 { 0x0, 6 },{ 0x5, 6 },{ 0xd, 6 },{ 0xf, 6 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
160 { 0x13, 6 },{ 0x8, 7 },{ 0x18, 7 },{ 0x1c, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
161 { 0x24, 7 },{ 0x4, 8 },{ 0x6, 8 },{ 0x12, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
162 { 0x32, 8 },{ 0x3b, 8 },{ 0x4a, 8 },{ 0x4b, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
163 { 0xb, 9 },{ 0x26, 9 },{ 0x27, 9 },{ 0x66, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
164 { 0x74, 9 },{ 0x75, 9 },{ 0x14, 10 },{ 0x1c, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
165 { 0x1f, 10 },{ 0x1d, 10 },{ 0x2b, 11 },{ 0x3d, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
166 { 0x19d, 11 },{ 0x19f, 11 },{ 0x54, 12 },{ 0x339, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
167 { 0x338, 12 },{ 0x33d, 12 },{ 0xab, 13 },{ 0xf1, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
168 { 0x678, 13 },{ 0xf2, 13 },{ 0x1e0, 14 },{ 0x1e1, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
169 { 0x154, 14 },{ 0xcf2, 14 },{ 0x3cc, 15 },{ 0x2ab, 15 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
170 { 0x19e7, 15 },{ 0x3ce, 15 },{ 0x19e6, 15 },{ 0x554, 16 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
171 { 0x79f, 16 },{ 0x555, 16 },{ 0xf3d, 17 },{ 0xf37, 17 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
172 { 0xf3c, 17 },{ 0xf35, 17 },{ 0x1e6d, 18 },{ 0x1e68, 18 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
173 { 0x3cd8, 19 },{ 0x3cd3, 19 },{ 0x3cd9, 19 },{ 0x79a4, 20 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
174 { 0xf34ba, 25 },{ 0xf34b4, 25 },{ 0xf34b5, 25 },{ 0xf34b6, 25 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
175 { 0xf34b7, 25 },{ 0xf34b8, 25 },{ 0xf34b9, 25 },{ 0xf34bb, 25 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
176 { 0xf34bc, 25 },{ 0xf34bd, 25 },{ 0xf34be, 25 },{ 0xf34bf, 25 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
177 { 0x1e6940, 26 },{ 0x1e6941, 26 },{ 0x1e6942, 26 },{ 0x1e6943, 26 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
178 { 0x1e6944, 26 },{ 0x1e6945, 26 },{ 0x1e6946, 26 },{ 0x1e6947, 26 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
179 { 0x1e6948, 26 },{ 0x1e6949, 26 },{ 0x1e694a, 26 },{ 0x1e694b, 26 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
180 { 0x1e694c, 26 },{ 0x1e694d, 26 },{ 0x1e694e, 26 },{ 0x1e694f, 26 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
181 { 0x1e6950, 26 },{ 0x1e6951, 26 },{ 0x1e6952, 26 },{ 0x1e6953, 26 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
182 { 0x1e6954, 26 },{ 0x1e6955, 26 },{ 0x1e6956, 26 },{ 0x1e6957, 26 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
183 { 0x1e6958, 26 },{ 0x1e6959, 26 },{ 0x1e695a, 26 },{ 0x1e695b, 26 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
184 { 0x1e695c, 26 },{ 0x1e695d, 26 },{ 0x1e695e, 26 },{ 0x1e695f, 26 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
185 { 0x1e6960, 26 },{ 0x1e6961, 26 },{ 0x1e6962, 26 },{ 0x1e6963, 26 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
186 { 0x1e6964, 26 },{ 0x1e6965, 26 },{ 0x1e6966, 26 },{ 0x1e6967, 26 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
187 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
188
2465
5565203c95ee use dc tables from msmpeg4 instead of duplicating them patch by anonymous
michael
parents: 1106
diff changeset
189 const uint32_t ff_table1_dc_chroma[120][2] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
190 { 0x0, 2 },{ 0x1, 2 },{ 0x4, 3 },{ 0x7, 3 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
191 { 0xb, 4 },{ 0xd, 4 },{ 0x15, 5 },{ 0x28, 6 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
192 { 0x30, 6 },{ 0x32, 6 },{ 0x52, 7 },{ 0x62, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
193 { 0x66, 7 },{ 0xa6, 8 },{ 0xc6, 8 },{ 0xcf, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
194 { 0x14f, 9 },{ 0x18e, 9 },{ 0x19c, 9 },{ 0x29d, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
195 { 0x33a, 10 },{ 0x538, 11 },{ 0x63c, 11 },{ 0x63e, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
196 { 0x63f, 11 },{ 0x676, 11 },{ 0xa73, 12 },{ 0xc7a, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
197 { 0xcef, 12 },{ 0x14e5, 13 },{ 0x19dd, 13 },{ 0x29c8, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
198 { 0x29c9, 14 },{ 0x63dd, 15 },{ 0x33b8, 14 },{ 0x33b9, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
199 { 0xc7b6, 16 },{ 0x63d8, 15 },{ 0x63df, 15 },{ 0xc7b3, 16 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
200 { 0xc7b4, 16 },{ 0xc7b5, 16 },{ 0x63de, 15 },{ 0xc7b7, 16 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
201 { 0xc7b8, 16 },{ 0xc7b9, 16 },{ 0x18f65, 17 },{ 0x31ec8, 18 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
202 { 0xc7b248, 24 },{ 0xc7b249, 24 },{ 0xc7b24a, 24 },{ 0xc7b24b, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
203 { 0xc7b24c, 24 },{ 0xc7b24d, 24 },{ 0xc7b24e, 24 },{ 0xc7b24f, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
204 { 0xc7b250, 24 },{ 0xc7b251, 24 },{ 0xc7b252, 24 },{ 0xc7b253, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
205 { 0xc7b254, 24 },{ 0xc7b255, 24 },{ 0xc7b256, 24 },{ 0xc7b257, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
206 { 0xc7b258, 24 },{ 0xc7b259, 24 },{ 0xc7b25a, 24 },{ 0xc7b25b, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
207 { 0xc7b25c, 24 },{ 0xc7b25d, 24 },{ 0xc7b25e, 24 },{ 0xc7b25f, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
208 { 0xc7b260, 24 },{ 0xc7b261, 24 },{ 0xc7b262, 24 },{ 0xc7b263, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
209 { 0xc7b264, 24 },{ 0xc7b265, 24 },{ 0xc7b266, 24 },{ 0xc7b267, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
210 { 0xc7b268, 24 },{ 0xc7b269, 24 },{ 0xc7b26a, 24 },{ 0xc7b26b, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
211 { 0xc7b26c, 24 },{ 0xc7b26d, 24 },{ 0xc7b26e, 24 },{ 0xc7b26f, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
212 { 0xc7b270, 24 },{ 0xc7b271, 24 },{ 0xc7b272, 24 },{ 0xc7b273, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
213 { 0xc7b274, 24 },{ 0xc7b275, 24 },{ 0xc7b276, 24 },{ 0xc7b277, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
214 { 0xc7b278, 24 },{ 0xc7b279, 24 },{ 0xc7b27a, 24 },{ 0xc7b27b, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
215 { 0xc7b27c, 24 },{ 0xc7b27d, 24 },{ 0xc7b27e, 24 },{ 0xc7b27f, 24 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
216 { 0x18f6480, 25 },{ 0x18f6481, 25 },{ 0x18f6482, 25 },{ 0x18f6483, 25 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
217 { 0x18f6484, 25 },{ 0x18f6485, 25 },{ 0x18f6486, 25 },{ 0x18f6487, 25 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
218 { 0x18f6488, 25 },{ 0x18f6489, 25 },{ 0x18f648a, 25 },{ 0x18f648b, 25 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
219 { 0x18f648c, 25 },{ 0x18f648d, 25 },{ 0x18f648e, 25 },{ 0x18f648f, 25 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
220 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
221
986e461dc072 Initial revision
glantau
parents:
diff changeset
222 /* vlc table 0, for intra luma */
986e461dc072 Initial revision
glantau
parents:
diff changeset
223
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
224 static const uint16_t table0_vlc[133][2] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
225 { 0x1, 2 },{ 0x6, 3 },{ 0xf, 4 },{ 0x16, 5 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
226 { 0x20, 6 },{ 0x18, 7 },{ 0x8, 8 },{ 0x9a, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
227 { 0x56, 9 },{ 0x13e, 9 },{ 0xf0, 10 },{ 0x3a5, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
228 { 0x77, 11 },{ 0x1ef, 11 },{ 0x9a, 12 },{ 0x5d, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
229 { 0x1, 4 },{ 0x11, 5 },{ 0x2, 7 },{ 0xb, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
230 { 0x12, 9 },{ 0x1d6, 9 },{ 0x27e, 10 },{ 0x191, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
231 { 0xea, 12 },{ 0x3dc, 12 },{ 0x13b, 13 },{ 0x4, 5 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
232 { 0x14, 7 },{ 0x9e, 8 },{ 0x9, 10 },{ 0x1ac, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
233 { 0x1e2, 11 },{ 0x3ca, 12 },{ 0x5f, 13 },{ 0x17, 5 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
234 { 0x4e, 7 },{ 0x5e, 9 },{ 0xf3, 10 },{ 0x1ad, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
235 { 0xec, 12 },{ 0x5f0, 13 },{ 0xe, 6 },{ 0xe1, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
236 { 0x3a4, 10 },{ 0x9c, 12 },{ 0x13d, 13 },{ 0x3b, 6 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
237 { 0x1c, 9 },{ 0x14, 11 },{ 0x9be, 12 },{ 0x6, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
238 { 0x7a, 9 },{ 0x190, 11 },{ 0x137, 13 },{ 0x1b, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
239 { 0x8, 10 },{ 0x75c, 11 },{ 0x71, 7 },{ 0xd7, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
240 { 0x9bf, 12 },{ 0x7, 8 },{ 0xaf, 10 },{ 0x4cc, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
241 { 0x34, 8 },{ 0x265, 10 },{ 0x9f, 12 },{ 0xe0, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
242 { 0x16, 11 },{ 0x327, 12 },{ 0x15, 9 },{ 0x17d, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
243 { 0xebb, 12 },{ 0x14, 9 },{ 0xf6, 10 },{ 0x1e4, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
244 { 0xcb, 10 },{ 0x99d, 12 },{ 0xca, 10 },{ 0x2fc, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
245 { 0x17f, 11 },{ 0x4cd, 11 },{ 0x2fd, 12 },{ 0x4fe, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
246 { 0x13a, 13 },{ 0xa, 4 },{ 0x42, 7 },{ 0x1d3, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
247 { 0x4dd, 11 },{ 0x12, 5 },{ 0xe8, 8 },{ 0x4c, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
248 { 0x136, 13 },{ 0x39, 6 },{ 0x264, 10 },{ 0xeba, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
249 { 0x0, 7 },{ 0xae, 10 },{ 0x99c, 12 },{ 0x1f, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
250 { 0x4de, 11 },{ 0x43, 7 },{ 0x4dc, 11 },{ 0x3, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
251 { 0x3cb, 12 },{ 0x6, 8 },{ 0x99e, 12 },{ 0x2a, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
252 { 0x5f1, 13 },{ 0xf, 8 },{ 0x9fe, 12 },{ 0x33, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
253 { 0x9ff, 12 },{ 0x98, 8 },{ 0x99f, 12 },{ 0xea, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
254 { 0x13c, 13 },{ 0x2e, 8 },{ 0x192, 11 },{ 0x136, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
255 { 0x6a, 9 },{ 0x15, 11 },{ 0x3af, 10 },{ 0x1e3, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
256 { 0x74, 11 },{ 0xeb, 12 },{ 0x2f9, 12 },{ 0x5c, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
257 { 0xed, 12 },{ 0x3dd, 12 },{ 0x326, 12 },{ 0x5e, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
258 { 0x16, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
259 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
260
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
261 static const int8_t table0_level[132] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
262 1, 2, 3, 4, 5, 6, 7, 8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
263 9, 10, 11, 12, 13, 14, 15, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
264 1, 2, 3, 4, 5, 6, 7, 8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
265 9, 10, 11, 1, 2, 3, 4, 5,
986e461dc072 Initial revision
glantau
parents:
diff changeset
266 6, 7, 8, 1, 2, 3, 4, 5,
986e461dc072 Initial revision
glantau
parents:
diff changeset
267 6, 7, 1, 2, 3, 4, 5, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
268 2, 3, 4, 1, 2, 3, 4, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
269 2, 3, 1, 2, 3, 1, 2, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
270 1, 2, 3, 1, 2, 3, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
271 3, 1, 2, 3, 1, 2, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
272 1, 1, 1, 1, 1, 1, 2, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
273 4, 1, 2, 3, 4, 1, 2, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
274 1, 2, 3, 1, 2, 1, 2, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
275 2, 1, 2, 1, 2, 1, 2, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
276 2, 1, 2, 1, 2, 1, 2, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
277 1, 1, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
278 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
279 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
280
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
281 static const int8_t table0_run[132] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
282 0, 0, 0, 0, 0, 0, 0, 0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
283 0, 0, 0, 0, 0, 0, 0, 0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
284 1, 1, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
285 1, 1, 1, 2, 2, 2, 2, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
286 2, 2, 2, 3, 3, 3, 3, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
287 3, 3, 4, 4, 4, 4, 4, 5,
986e461dc072 Initial revision
glantau
parents:
diff changeset
288 5, 5, 5, 6, 6, 6, 6, 7,
986e461dc072 Initial revision
glantau
parents:
diff changeset
289 7, 7, 8, 8, 8, 9, 9, 9,
986e461dc072 Initial revision
glantau
parents:
diff changeset
290 10, 10, 10, 11, 11, 11, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
291 12, 13, 13, 13, 14, 14, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
292 16, 17, 18, 19, 20, 0, 0, 0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
293 0, 1, 1, 1, 1, 2, 2, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
294 3, 3, 3, 4, 4, 5, 5, 6,
986e461dc072 Initial revision
glantau
parents:
diff changeset
295 6, 7, 7, 8, 8, 9, 9, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
296 10, 11, 11, 12, 12, 13, 13, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
297 15, 16, 17, 18, 19, 20, 21, 22,
986e461dc072 Initial revision
glantau
parents:
diff changeset
298 23, 24, 25, 26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
299 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
300
986e461dc072 Initial revision
glantau
parents:
diff changeset
301 /* vlc table 1, for intra chroma and P macro blocks */
986e461dc072 Initial revision
glantau
parents:
diff changeset
302
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
303 static const uint16_t table1_vlc[149][2] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
304 { 0x4, 3 },{ 0x14, 5 },{ 0x17, 7 },{ 0x7f, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
305 { 0x154, 9 },{ 0x1f2, 10 },{ 0xbf, 11 },{ 0x65, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
306 { 0xaaa, 12 },{ 0x630, 13 },{ 0x1597, 13 },{ 0x3b7, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
307 { 0x2b22, 14 },{ 0xbe6, 15 },{ 0xb, 4 },{ 0x37, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
308 { 0x62, 9 },{ 0x7, 11 },{ 0x166, 12 },{ 0xce, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
309 { 0x1590, 13 },{ 0x5f6, 14 },{ 0xbe7, 15 },{ 0x7, 5 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
310 { 0x6d, 8 },{ 0x3, 11 },{ 0x31f, 12 },{ 0x5f2, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
311 { 0x2, 6 },{ 0x61, 9 },{ 0x55, 12 },{ 0x1df, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
312 { 0x1a, 6 },{ 0x1e, 10 },{ 0xac9, 12 },{ 0x2b23, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
313 { 0x1e, 6 },{ 0x1f, 10 },{ 0xac3, 12 },{ 0x2b2b, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
314 { 0x6, 7 },{ 0x4, 11 },{ 0x2f8, 13 },{ 0x19, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
315 { 0x6, 11 },{ 0x63d, 13 },{ 0x57, 7 },{ 0x182, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
316 { 0x2aa2, 14 },{ 0x4, 8 },{ 0x180, 11 },{ 0x59c, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
317 { 0x7d, 8 },{ 0x164, 12 },{ 0x76d, 15 },{ 0x2, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
318 { 0x18d, 11 },{ 0x1581, 13 },{ 0xad, 8 },{ 0x60, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
319 { 0xc67, 14 },{ 0x1c, 9 },{ 0xee, 13 },{ 0x3, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
320 { 0x2cf, 13 },{ 0xd9, 9 },{ 0x1580, 13 },{ 0x2, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
321 { 0x183, 11 },{ 0x57, 12 },{ 0x61, 12 },{ 0x31, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
322 { 0x66, 12 },{ 0x631, 13 },{ 0x632, 13 },{ 0xac, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
323 { 0x31d, 12 },{ 0x76, 12 },{ 0x3a, 11 },{ 0x165, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
324 { 0xc66, 14 },{ 0x3, 2 },{ 0x54, 7 },{ 0x2ab, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
325 { 0x16, 13 },{ 0x5f7, 14 },{ 0x5, 4 },{ 0xf8, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
326 { 0xaa9, 12 },{ 0x5f, 15 },{ 0x4, 4 },{ 0x1c, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
327 { 0x1550, 13 },{ 0x4, 5 },{ 0x77, 11 },{ 0x76c, 15 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
328 { 0xe, 5 },{ 0xa, 12 },{ 0xc, 5 },{ 0x562, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
329 { 0x4, 6 },{ 0x31c, 12 },{ 0x6, 6 },{ 0xc8, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
330 { 0xd, 6 },{ 0x1da, 13 },{ 0x7, 6 },{ 0xc9, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
331 { 0x1, 7 },{ 0x2e, 14 },{ 0x14, 7 },{ 0x1596, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
332 { 0xa, 7 },{ 0xac2, 12 },{ 0x16, 7 },{ 0x15b, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
333 { 0x15, 7 },{ 0x15a, 14 },{ 0xf, 8 },{ 0x5e, 15 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
334 { 0x7e, 8 },{ 0xab, 8 },{ 0x2d, 9 },{ 0xd8, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
335 { 0xb, 9 },{ 0x14, 10 },{ 0x2b3, 10 },{ 0x1f3, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
336 { 0x3a, 10 },{ 0x0, 10 },{ 0x58, 10 },{ 0x2e, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
337 { 0x5e, 10 },{ 0x563, 11 },{ 0xec, 12 },{ 0x54, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
338 { 0xac1, 12 },{ 0x1556, 13 },{ 0x2fa, 13 },{ 0x181, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
339 { 0x1557, 13 },{ 0x59d, 14 },{ 0x2aa3, 14 },{ 0x2b2a, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
340 { 0x1de, 14 },{ 0x63c, 13 },{ 0xcf, 13 },{ 0x1594, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
341 { 0xd, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
342 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
343
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
344 static const int8_t table1_level[148] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
345 1, 2, 3, 4, 5, 6, 7, 8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
346 9, 10, 11, 12, 13, 14, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
347 3, 4, 5, 6, 7, 8, 9, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
348 2, 3, 4, 5, 1, 2, 3, 4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
349 1, 2, 3, 4, 1, 2, 3, 4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
350 1, 2, 3, 1, 2, 3, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
351 3, 1, 2, 3, 1, 2, 3, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
352 2, 3, 1, 2, 3, 1, 2, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
353 2, 1, 2, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
354 1, 1, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
355 1, 1, 2, 3, 4, 5, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
356 3, 4, 1, 2, 3, 1, 2, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
357 1, 2, 1, 2, 1, 2, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
358 1, 2, 1, 2, 1, 2, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
359 1, 2, 1, 2, 1, 2, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
360 1, 1, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
361 1, 1, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
362 1, 1, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
363 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
364 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
365
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
366 static const int8_t table1_run[148] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
367 0, 0, 0, 0, 0, 0, 0, 0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
368 0, 0, 0, 0, 0, 0, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
369 1, 1, 1, 1, 1, 1, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
370 2, 2, 2, 2, 3, 3, 3, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
371 4, 4, 4, 4, 5, 5, 5, 5,
986e461dc072 Initial revision
glantau
parents:
diff changeset
372 6, 6, 6, 7, 7, 7, 8, 8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
373 8, 9, 9, 9, 10, 10, 10, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
374 11, 11, 12, 12, 12, 13, 13, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
375 14, 15, 15, 16, 17, 18, 19, 20,
986e461dc072 Initial revision
glantau
parents:
diff changeset
376 21, 22, 23, 24, 25, 26, 27, 28,
986e461dc072 Initial revision
glantau
parents:
diff changeset
377 29, 0, 0, 0, 0, 0, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
378 1, 1, 2, 2, 2, 3, 3, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
379 4, 4, 5, 5, 6, 6, 7, 7,
986e461dc072 Initial revision
glantau
parents:
diff changeset
380 8, 8, 9, 9, 10, 10, 11, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
381 12, 12, 13, 13, 14, 14, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
382 16, 17, 18, 19, 20, 21, 22, 23,
986e461dc072 Initial revision
glantau
parents:
diff changeset
383 24, 25, 26, 27, 28, 29, 30, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
384 32, 33, 34, 35, 36, 37, 38, 39,
986e461dc072 Initial revision
glantau
parents:
diff changeset
385 40, 41, 42, 43,
986e461dc072 Initial revision
glantau
parents:
diff changeset
386 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
387
986e461dc072 Initial revision
glantau
parents:
diff changeset
388 /* third vlc table */
986e461dc072 Initial revision
glantau
parents:
diff changeset
389
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
390 static const uint16_t table2_vlc[186][2] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
391 { 0x1, 2 },{ 0x5, 3 },{ 0xd, 4 },{ 0x12, 5 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
392 { 0xe, 6 },{ 0x15, 7 },{ 0x13, 8 },{ 0x3f, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
393 { 0x4b, 9 },{ 0x11f, 9 },{ 0xb8, 10 },{ 0x3e3, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
394 { 0x172, 11 },{ 0x24d, 12 },{ 0x3da, 12 },{ 0x2dd, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
395 { 0x1f55, 13 },{ 0x5b9, 14 },{ 0x3eae, 14 },{ 0x0, 4 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
396 { 0x10, 5 },{ 0x8, 7 },{ 0x20, 8 },{ 0x29, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
397 { 0x1f4, 9 },{ 0x233, 10 },{ 0x1e0, 11 },{ 0x12a, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
398 { 0x3dd, 12 },{ 0x50a, 13 },{ 0x1f29, 13 },{ 0xa42, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
399 { 0x1272, 15 },{ 0x1737, 15 },{ 0x3, 5 },{ 0x11, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
400 { 0xc4, 8 },{ 0x4b, 10 },{ 0xb4, 11 },{ 0x7d4, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
401 { 0x345, 12 },{ 0x2d7, 13 },{ 0x7bf, 13 },{ 0x938, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
402 { 0xbbb, 14 },{ 0x95e, 15 },{ 0x13, 5 },{ 0x78, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
403 { 0x69, 9 },{ 0x232, 10 },{ 0x461, 11 },{ 0x3ec, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
404 { 0x520, 13 },{ 0x1f2a, 13 },{ 0x3e50, 14 },{ 0x3e51, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
405 { 0x1486, 15 },{ 0xc, 6 },{ 0x24, 9 },{ 0x94, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
406 { 0x8c0, 12 },{ 0xf09, 14 },{ 0x1ef0, 15 },{ 0x3d, 6 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
407 { 0x53, 9 },{ 0x1a0, 11 },{ 0x2d6, 13 },{ 0xf08, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
408 { 0x13, 7 },{ 0x7c, 9 },{ 0x7c1, 11 },{ 0x4ac, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
409 { 0x1b, 7 },{ 0xa0, 10 },{ 0x344, 12 },{ 0xf79, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
410 { 0x79, 7 },{ 0x3e1, 10 },{ 0x2d4, 13 },{ 0x2306, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
411 { 0x21, 8 },{ 0x23c, 10 },{ 0xfae, 12 },{ 0x23de, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
412 { 0x35, 8 },{ 0x175, 11 },{ 0x7b3, 13 },{ 0xc5, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
413 { 0x174, 11 },{ 0x785, 13 },{ 0x48, 9 },{ 0x1a3, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
414 { 0x49e, 13 },{ 0x2c, 9 },{ 0xfa, 10 },{ 0x7d6, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
415 { 0x92, 10 },{ 0x5cc, 13 },{ 0x1ef1, 15 },{ 0xa3, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
416 { 0x3ed, 12 },{ 0x93e, 14 },{ 0x1e2, 11 },{ 0x1273, 15 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
417 { 0x7c4, 11 },{ 0x1487, 15 },{ 0x291, 12 },{ 0x293, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
418 { 0xf8a, 12 },{ 0x509, 13 },{ 0x508, 13 },{ 0x78d, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
419 { 0x7be, 13 },{ 0x78c, 13 },{ 0x4ae, 14 },{ 0xbba, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
420 { 0x2307, 14 },{ 0xb9a, 14 },{ 0x1736, 15 },{ 0xe, 4 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
421 { 0x45, 7 },{ 0x1f3, 9 },{ 0x47a, 11 },{ 0x5dc, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
422 { 0x23df, 14 },{ 0x19, 5 },{ 0x28, 9 },{ 0x176, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
423 { 0x49d, 13 },{ 0x23dd, 14 },{ 0x30, 6 },{ 0xa2, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
424 { 0x2ef, 12 },{ 0x5b8, 14 },{ 0x3f, 6 },{ 0xa5, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
425 { 0x3db, 12 },{ 0x93f, 14 },{ 0x44, 7 },{ 0x7cb, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
426 { 0x95f, 15 },{ 0x63, 7 },{ 0x3c3, 12 },{ 0x15, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
427 { 0x8f6, 12 },{ 0x17, 8 },{ 0x498, 13 },{ 0x2c, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
428 { 0x7b2, 13 },{ 0x2f, 8 },{ 0x1f54, 13 },{ 0x8d, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
429 { 0x7bd, 13 },{ 0x8e, 8 },{ 0x1182, 13 },{ 0xfb, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
430 { 0x50b, 13 },{ 0x2d, 8 },{ 0x7c0, 11 },{ 0x79, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
431 { 0x1f5f, 13 },{ 0x7a, 9 },{ 0x1f56, 13 },{ 0x231, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
432 { 0x3e4, 10 },{ 0x1a1, 11 },{ 0x143, 11 },{ 0x1f7, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
433 { 0x16f, 12 },{ 0x292, 12 },{ 0x2e7, 12 },{ 0x16c, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
434 { 0x16d, 12 },{ 0x3dc, 12 },{ 0xf8b, 12 },{ 0x499, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
435 { 0x3d8, 12 },{ 0x78e, 13 },{ 0x2d5, 13 },{ 0x1f5e, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
436 { 0x1f2b, 13 },{ 0x78f, 13 },{ 0x4ad, 14 },{ 0x3eaf, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
437 { 0x23dc, 14 },{ 0x4a, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
438 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
439
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
440 static const int8_t table2_level[185] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
441 1, 2, 3, 4, 5, 6, 7, 8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
442 9, 10, 11, 12, 13, 14, 15, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
443 17, 18, 19, 1, 2, 3, 4, 5,
986e461dc072 Initial revision
glantau
parents:
diff changeset
444 6, 7, 8, 9, 10, 11, 12, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
445 14, 15, 1, 2, 3, 4, 5, 6,
986e461dc072 Initial revision
glantau
parents:
diff changeset
446 7, 8, 9, 10, 11, 12, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
447 3, 4, 5, 6, 7, 8, 9, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
448 11, 1, 2, 3, 4, 5, 6, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
449 2, 3, 4, 5, 1, 2, 3, 4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
450 1, 2, 3, 4, 1, 2, 3, 4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
451 1, 2, 3, 4, 1, 2, 3, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
452 2, 3, 1, 2, 3, 1, 2, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
453 1, 2, 3, 1, 2, 3, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
454 1, 2, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
455 1, 1, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
456 2, 3, 4, 5, 6, 1, 2, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
457 4, 5, 1, 2, 3, 4, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
458 3, 4, 1, 2, 3, 1, 2, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
459 2, 1, 2, 1, 2, 1, 2, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
460 2, 1, 2, 1, 2, 1, 2, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
461 2, 1, 2, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
462 1, 1, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
463 1, 1, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
464 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
465 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
466
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
467 static const int8_t table2_run[185] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
468 0, 0, 0, 0, 0, 0, 0, 0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
469 0, 0, 0, 0, 0, 0, 0, 0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
470 0, 0, 0, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
471 1, 1, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
472 1, 1, 2, 2, 2, 2, 2, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
473 2, 2, 2, 2, 2, 2, 3, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
474 3, 3, 3, 3, 3, 3, 3, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
475 3, 4, 4, 4, 4, 4, 4, 5,
986e461dc072 Initial revision
glantau
parents:
diff changeset
476 5, 5, 5, 5, 6, 6, 6, 6,
986e461dc072 Initial revision
glantau
parents:
diff changeset
477 7, 7, 7, 7, 8, 8, 8, 8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
478 9, 9, 9, 9, 10, 10, 10, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
479 11, 11, 12, 12, 12, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
480 14, 14, 14, 15, 15, 15, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
481 17, 17, 18, 19, 20, 21, 22, 23,
986e461dc072 Initial revision
glantau
parents:
diff changeset
482 24, 25, 26, 27, 28, 29, 30, 0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
483 0, 0, 0, 0, 0, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
484 1, 1, 2, 2, 2, 2, 3, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
485 3, 3, 4, 4, 4, 5, 5, 6,
986e461dc072 Initial revision
glantau
parents:
diff changeset
486 6, 7, 7, 8, 8, 9, 9, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
487 10, 11, 11, 12, 12, 13, 13, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
488 14, 15, 15, 16, 17, 18, 19, 20,
986e461dc072 Initial revision
glantau
parents:
diff changeset
489 21, 22, 23, 24, 25, 26, 27, 28,
986e461dc072 Initial revision
glantau
parents:
diff changeset
490 29, 30, 31, 32, 33, 34, 35, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
491 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
492 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
493
986e461dc072 Initial revision
glantau
parents:
diff changeset
494 /* second non intra vlc table */
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
495 static const uint16_t table4_vlc[169][2] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
496 { 0x0, 3 },{ 0x3, 4 },{ 0xb, 5 },{ 0x14, 6 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
497 { 0x3f, 6 },{ 0x5d, 7 },{ 0xa2, 8 },{ 0xac, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
498 { 0x16e, 9 },{ 0x20a, 10 },{ 0x2e2, 10 },{ 0x432, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
499 { 0x5c9, 11 },{ 0x827, 12 },{ 0xb54, 12 },{ 0x4e6, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
500 { 0x105f, 13 },{ 0x172a, 13 },{ 0x20b2, 14 },{ 0x2d4e, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
501 { 0x39f0, 14 },{ 0x4175, 15 },{ 0x5a9e, 15 },{ 0x4, 4 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
502 { 0x1e, 5 },{ 0x42, 7 },{ 0xb6, 8 },{ 0x173, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
503 { 0x395, 10 },{ 0x72e, 11 },{ 0xb94, 12 },{ 0x16a4, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
504 { 0x20b3, 14 },{ 0x2e45, 14 },{ 0x5, 5 },{ 0x40, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
505 { 0x49, 9 },{ 0x28f, 10 },{ 0x5cb, 11 },{ 0x48a, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
506 { 0x9dd, 14 },{ 0x73e2, 15 },{ 0x18, 5 },{ 0x25, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
507 { 0x8a, 10 },{ 0x51b, 11 },{ 0xe5f, 12 },{ 0x9c9, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
508 { 0x139c, 15 },{ 0x29, 6 },{ 0x4f, 9 },{ 0x412, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
509 { 0x48d, 13 },{ 0x2e41, 14 },{ 0x38, 6 },{ 0x10e, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
510 { 0x5a8, 11 },{ 0x105c, 13 },{ 0x39f2, 14 },{ 0x58, 7 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
511 { 0x21f, 10 },{ 0xe7e, 12 },{ 0x39ff, 14 },{ 0x23, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
512 { 0x2e3, 10 },{ 0x4e5, 13 },{ 0x2e40, 14 },{ 0xa1, 8 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
513 { 0x5be, 11 },{ 0x9c8, 14 },{ 0x83, 8 },{ 0x13a, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
514 { 0x1721, 13 },{ 0x44, 9 },{ 0x276, 12 },{ 0x39f6, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
515 { 0x8b, 10 },{ 0x4ef, 13 },{ 0x5a9b, 15 },{ 0x208, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
516 { 0x1cfe, 13 },{ 0x399, 10 },{ 0x1cb4, 13 },{ 0x39e, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
517 { 0x39f3, 14 },{ 0x5ab, 11 },{ 0x73e3, 15 },{ 0x737, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
518 { 0x5a9f, 15 },{ 0x82d, 12 },{ 0xe69, 12 },{ 0xe68, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
519 { 0x433, 11 },{ 0xb7b, 12 },{ 0x2df8, 14 },{ 0x2e56, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
520 { 0x2e57, 14 },{ 0x39f7, 14 },{ 0x51a5, 15 },{ 0x3, 3 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
521 { 0x2a, 6 },{ 0xe4, 8 },{ 0x28e, 10 },{ 0x735, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
522 { 0x1058, 13 },{ 0x1cfa, 13 },{ 0x2df9, 14 },{ 0x4174, 15 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
523 { 0x9, 4 },{ 0x54, 8 },{ 0x398, 10 },{ 0x48b, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
524 { 0x139d, 15 },{ 0xd, 4 },{ 0xad, 9 },{ 0x826, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
525 { 0x2d4c, 14 },{ 0x11, 5 },{ 0x16b, 9 },{ 0xb7f, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
526 { 0x51a4, 15 },{ 0x19, 5 },{ 0x21b, 10 },{ 0x16fd, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
527 { 0x1d, 5 },{ 0x394, 10 },{ 0x28d3, 14 },{ 0x2b, 6 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
528 { 0x5bc, 11 },{ 0x5a9a, 15 },{ 0x2f, 6 },{ 0x247, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
529 { 0x10, 7 },{ 0xa35, 12 },{ 0x3e, 6 },{ 0xb7a, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
530 { 0x59, 7 },{ 0x105e, 13 },{ 0x26, 8 },{ 0x9cf, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
531 { 0x55, 8 },{ 0x1cb5, 13 },{ 0x57, 8 },{ 0xe5b, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
532 { 0xa0, 8 },{ 0x1468, 13 },{ 0x170, 9 },{ 0x90, 10 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
533 { 0x1ce, 9 },{ 0x21a, 10 },{ 0x218, 10 },{ 0x168, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
534 { 0x21e, 10 },{ 0x244, 12 },{ 0x736, 11 },{ 0x138, 11 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
535 { 0x519, 11 },{ 0xe5e, 12 },{ 0x72c, 11 },{ 0xb55, 12 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
536 { 0x9dc, 14 },{ 0x20bb, 14 },{ 0x48c, 13 },{ 0x1723, 13 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
537 { 0x2e44, 14 },{ 0x16a5, 13 },{ 0x518, 11 },{ 0x39fe, 14 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
538 { 0x169, 9 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
539 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
540
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
541 static const int8_t table4_level[168] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
542 1, 2, 3, 4, 5, 6, 7, 8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
543 9, 10, 11, 12, 13, 14, 15, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
544 17, 18, 19, 20, 21, 22, 23, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
545 2, 3, 4, 5, 6, 7, 8, 9,
986e461dc072 Initial revision
glantau
parents:
diff changeset
546 10, 11, 1, 2, 3, 4, 5, 6,
986e461dc072 Initial revision
glantau
parents:
diff changeset
547 7, 8, 1, 2, 3, 4, 5, 6,
986e461dc072 Initial revision
glantau
parents:
diff changeset
548 7, 1, 2, 3, 4, 5, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
549 3, 4, 5, 1, 2, 3, 4, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
550 2, 3, 4, 1, 2, 3, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
551 3, 1, 2, 3, 1, 2, 3, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
552 2, 1, 2, 1, 2, 1, 2, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
553 2, 1, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
554 1, 1, 1, 1, 2, 3, 4, 5,
986e461dc072 Initial revision
glantau
parents:
diff changeset
555 6, 7, 8, 9, 1, 2, 3, 4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
556 5, 1, 2, 3, 4, 1, 2, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
557 4, 1, 2, 3, 1, 2, 3, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
558 2, 3, 1, 2, 1, 2, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
559 1, 2, 1, 2, 1, 2, 1, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
560 1, 2, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
561 1, 1, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
562 1, 1, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
563 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
564
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
565 static const int8_t table4_run[168] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
566 0, 0, 0, 0, 0, 0, 0, 0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
567 0, 0, 0, 0, 0, 0, 0, 0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
568 0, 0, 0, 0, 0, 0, 0, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
569 1, 1, 1, 1, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
570 1, 1, 2, 2, 2, 2, 2, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
571 2, 2, 3, 3, 3, 3, 3, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
572 3, 4, 4, 4, 4, 4, 5, 5,
986e461dc072 Initial revision
glantau
parents:
diff changeset
573 5, 5, 5, 6, 6, 6, 6, 7,
986e461dc072 Initial revision
glantau
parents:
diff changeset
574 7, 7, 7, 8, 8, 8, 9, 9,
986e461dc072 Initial revision
glantau
parents:
diff changeset
575 9, 10, 10, 10, 11, 11, 11, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
576 12, 13, 13, 14, 14, 15, 15, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
577 16, 17, 18, 19, 20, 21, 22, 23,
986e461dc072 Initial revision
glantau
parents:
diff changeset
578 24, 25, 26, 0, 0, 0, 0, 0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
579 0, 0, 0, 0, 1, 1, 1, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
580 1, 2, 2, 2, 2, 3, 3, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
581 3, 4, 4, 4, 5, 5, 5, 6,
986e461dc072 Initial revision
glantau
parents:
diff changeset
582 6, 6, 7, 7, 8, 8, 9, 9,
986e461dc072 Initial revision
glantau
parents:
diff changeset
583 10, 10, 11, 11, 12, 12, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
584 14, 14, 15, 16, 17, 18, 19, 20,
986e461dc072 Initial revision
glantau
parents:
diff changeset
585 21, 22, 23, 24, 25, 26, 27, 28,
986e461dc072 Initial revision
glantau
parents:
diff changeset
586 29, 30, 31, 32, 33, 34, 35, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
587 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
588
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
589 extern const uint16_t inter_vlc[103][2];
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
590 extern const int8_t inter_level[102];
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
591 extern const int8_t inter_run[102];
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
592
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
593 extern const uint16_t intra_vlc[103][2];
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
594 extern const int8_t intra_level[102];
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
595 extern const int8_t intra_run[102];
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
596
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
597 extern const uint8_t DCtab_lum[13][2];
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
598 extern const uint8_t DCtab_chrom[13][2];
307
764aeec1320e msmpeg4v2 decoding (no encoding yet)
michaelni
parents: 0
diff changeset
599
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
600 extern const uint8_t cbpy_tab[16][2];
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
601 extern const uint8_t mvtab[33][2];
307
764aeec1320e msmpeg4v2 decoding (no encoding yet)
michaelni
parents: 0
diff changeset
602
2965
40f745e4fdff wrong sizes, part of [PATCH] from DivX, Part 9: bitstream crashes from (Steve Lhomme | slhomme divxcorp com)
michael
parents: 2753
diff changeset
603 extern const uint8_t intra_MCBPC_code[9];
40f745e4fdff wrong sizes, part of [PATCH] from DivX, Part 9: bitstream crashes from (Steve Lhomme | slhomme divxcorp com)
michael
parents: 2753
diff changeset
604 extern const uint8_t intra_MCBPC_bits[9];
457
583dcee270d2 msmpeg4v1 decoding
michaelni
parents: 307
diff changeset
605
2965
40f745e4fdff wrong sizes, part of [PATCH] from DivX, Part 9: bitstream crashes from (Steve Lhomme | slhomme divxcorp com)
michael
parents: 2753
diff changeset
606 extern const uint8_t inter_MCBPC_code[28];
40f745e4fdff wrong sizes, part of [PATCH] from DivX, Part 9: bitstream crashes from (Steve Lhomme | slhomme divxcorp com)
michael
parents: 2753
diff changeset
607 extern const uint8_t inter_MCBPC_bits[28];
307
764aeec1320e msmpeg4v2 decoding (no encoding yet)
michaelni
parents: 0
diff changeset
608
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
609 #define NB_RL_TABLES 6
986e461dc072 Initial revision
glantau
parents:
diff changeset
610
986e461dc072 Initial revision
glantau
parents:
diff changeset
611 static RLTable rl_table[NB_RL_TABLES] = {
986e461dc072 Initial revision
glantau
parents:
diff changeset
612 /* intra luminance tables */
986e461dc072 Initial revision
glantau
parents:
diff changeset
613 {
986e461dc072 Initial revision
glantau
parents:
diff changeset
614 132,
986e461dc072 Initial revision
glantau
parents:
diff changeset
615 85,
986e461dc072 Initial revision
glantau
parents:
diff changeset
616 table0_vlc,
986e461dc072 Initial revision
glantau
parents:
diff changeset
617 table0_run,
986e461dc072 Initial revision
glantau
parents:
diff changeset
618 table0_level,
986e461dc072 Initial revision
glantau
parents:
diff changeset
619 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
620 {
986e461dc072 Initial revision
glantau
parents:
diff changeset
621 185,
986e461dc072 Initial revision
glantau
parents:
diff changeset
622 119,
986e461dc072 Initial revision
glantau
parents:
diff changeset
623 table2_vlc,
986e461dc072 Initial revision
glantau
parents:
diff changeset
624 table2_run,
986e461dc072 Initial revision
glantau
parents:
diff changeset
625 table2_level,
986e461dc072 Initial revision
glantau
parents:
diff changeset
626 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
627 {
986e461dc072 Initial revision
glantau
parents:
diff changeset
628 102,
986e461dc072 Initial revision
glantau
parents:
diff changeset
629 67,
986e461dc072 Initial revision
glantau
parents:
diff changeset
630 intra_vlc,
986e461dc072 Initial revision
glantau
parents:
diff changeset
631 intra_run,
986e461dc072 Initial revision
glantau
parents:
diff changeset
632 intra_level,
986e461dc072 Initial revision
glantau
parents:
diff changeset
633 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
634 /* intra chrominance / non intra tables */
986e461dc072 Initial revision
glantau
parents:
diff changeset
635 {
986e461dc072 Initial revision
glantau
parents:
diff changeset
636 148,
986e461dc072 Initial revision
glantau
parents:
diff changeset
637 81,
986e461dc072 Initial revision
glantau
parents:
diff changeset
638 table1_vlc,
986e461dc072 Initial revision
glantau
parents:
diff changeset
639 table1_run,
986e461dc072 Initial revision
glantau
parents:
diff changeset
640 table1_level,
986e461dc072 Initial revision
glantau
parents:
diff changeset
641 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
642 {
986e461dc072 Initial revision
glantau
parents:
diff changeset
643 168,
986e461dc072 Initial revision
glantau
parents:
diff changeset
644 99,
986e461dc072 Initial revision
glantau
parents:
diff changeset
645 table4_vlc,
986e461dc072 Initial revision
glantau
parents:
diff changeset
646 table4_run,
986e461dc072 Initial revision
glantau
parents:
diff changeset
647 table4_level,
986e461dc072 Initial revision
glantau
parents:
diff changeset
648 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
649 {
986e461dc072 Initial revision
glantau
parents:
diff changeset
650 102,
986e461dc072 Initial revision
glantau
parents:
diff changeset
651 58,
986e461dc072 Initial revision
glantau
parents:
diff changeset
652 inter_vlc,
986e461dc072 Initial revision
glantau
parents:
diff changeset
653 inter_run,
986e461dc072 Initial revision
glantau
parents:
diff changeset
654 inter_level,
986e461dc072 Initial revision
glantau
parents:
diff changeset
655 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
656 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
657
986e461dc072 Initial revision
glantau
parents:
diff changeset
658 /* motion vector table 0 */
986e461dc072 Initial revision
glantau
parents:
diff changeset
659
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
660 static const uint16_t table0_mv_code[1100] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
661 0x0001, 0x0003, 0x0005, 0x0007, 0x0003, 0x0008, 0x000c, 0x0001,
986e461dc072 Initial revision
glantau
parents:
diff changeset
662 0x0002, 0x001b, 0x0006, 0x000b, 0x0015, 0x0002, 0x000e, 0x000f,
986e461dc072 Initial revision
glantau
parents:
diff changeset
663 0x0014, 0x0020, 0x0022, 0x0025, 0x0027, 0x0029, 0x002d, 0x004b,
986e461dc072 Initial revision
glantau
parents:
diff changeset
664 0x004d, 0x0003, 0x0022, 0x0023, 0x0025, 0x0027, 0x0042, 0x0048,
986e461dc072 Initial revision
glantau
parents:
diff changeset
665 0x0049, 0x0050, 0x005c, 0x0091, 0x009f, 0x000e, 0x0043, 0x004c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
666 0x0054, 0x0056, 0x008c, 0x0098, 0x009a, 0x009b, 0x00b1, 0x00b2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
667 0x0120, 0x0121, 0x0126, 0x0133, 0x0139, 0x01a1, 0x01a4, 0x01a5,
986e461dc072 Initial revision
glantau
parents:
diff changeset
668 0x01a6, 0x01a7, 0x01ae, 0x01af, 0x000b, 0x0019, 0x0085, 0x0090,
986e461dc072 Initial revision
glantau
parents:
diff changeset
669 0x009b, 0x00aa, 0x00af, 0x010c, 0x010e, 0x011c, 0x011e, 0x0133,
986e461dc072 Initial revision
glantau
parents:
diff changeset
670 0x0144, 0x0160, 0x0174, 0x0175, 0x0177, 0x0178, 0x0249, 0x024b,
986e461dc072 Initial revision
glantau
parents:
diff changeset
671 0x0252, 0x0261, 0x0265, 0x0270, 0x0352, 0x0353, 0x0355, 0x0359,
986e461dc072 Initial revision
glantau
parents:
diff changeset
672 0x0010, 0x0011, 0x0013, 0x0034, 0x0035, 0x0036, 0x0037, 0x003d,
986e461dc072 Initial revision
glantau
parents:
diff changeset
673 0x003e, 0x0109, 0x0126, 0x0156, 0x021a, 0x021e, 0x023a, 0x023e,
986e461dc072 Initial revision
glantau
parents:
diff changeset
674 0x028e, 0x028f, 0x02cf, 0x0491, 0x0494, 0x049f, 0x04a0, 0x04a3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
675 0x04a6, 0x04a7, 0x04ad, 0x04ae, 0x04c0, 0x04c4, 0x04c6, 0x04c8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
676 0x04c9, 0x04f5, 0x04f6, 0x04f7, 0x0680, 0x0682, 0x0683, 0x0688,
986e461dc072 Initial revision
glantau
parents:
diff changeset
677 0x0689, 0x068d, 0x068e, 0x068f, 0x06a2, 0x06a3, 0x06a9, 0x06b0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
678 0x06b1, 0x06b4, 0x06b5, 0x0024, 0x0060, 0x0063, 0x0078, 0x0079,
986e461dc072 Initial revision
glantau
parents:
diff changeset
679 0x0211, 0x0244, 0x0245, 0x0247, 0x0248, 0x0249, 0x024a, 0x024b,
986e461dc072 Initial revision
glantau
parents:
diff changeset
680 0x026b, 0x02af, 0x02b8, 0x02bb, 0x0436, 0x0476, 0x0477, 0x047e,
986e461dc072 Initial revision
glantau
parents:
diff changeset
681 0x04c8, 0x04c9, 0x04ca, 0x0514, 0x0586, 0x0587, 0x0598, 0x059d,
986e461dc072 Initial revision
glantau
parents:
diff changeset
682 0x05d9, 0x05da, 0x0920, 0x0921, 0x093b, 0x093c, 0x093d, 0x0942,
986e461dc072 Initial revision
glantau
parents:
diff changeset
683 0x0943, 0x0944, 0x0945, 0x0959, 0x095e, 0x095f, 0x0982, 0x0983,
986e461dc072 Initial revision
glantau
parents:
diff changeset
684 0x098e, 0x098f, 0x09c4, 0x09e7, 0x09e8, 0x09e9, 0x0d02, 0x0d17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
685 0x0d18, 0x0d19, 0x0d41, 0x0d42, 0x0d43, 0x0d50, 0x0d5f, 0x0d6d,
986e461dc072 Initial revision
glantau
parents:
diff changeset
686 0x0d6e, 0x0d6f, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
986e461dc072 Initial revision
glantau
parents:
diff changeset
687 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x041e, 0x041f, 0x0420, 0x0421,
986e461dc072 Initial revision
glantau
parents:
diff changeset
688 0x048c, 0x048d, 0x04d3, 0x04d4, 0x04d5, 0x055c, 0x055d, 0x0572,
986e461dc072 Initial revision
glantau
parents:
diff changeset
689 0x0573, 0x0574, 0x0575, 0x08de, 0x08df, 0x08fe, 0x08ff, 0x0996,
986e461dc072 Initial revision
glantau
parents:
diff changeset
690 0x0a36, 0x0a37, 0x0b08, 0x0b09, 0x0b0a, 0x0b0b, 0x0b32, 0x0b33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
691 0x0b34, 0x0b35, 0x0b36, 0x0b37, 0x0b38, 0x0b39, 0x0bb0, 0x0bf7,
986e461dc072 Initial revision
glantau
parents:
diff changeset
692 0x0bf8, 0x0bf9, 0x0bfa, 0x0bfb, 0x0bfc, 0x0bfd, 0x0bfe, 0x0bff,
986e461dc072 Initial revision
glantau
parents:
diff changeset
693 0x1254, 0x1255, 0x1256, 0x1257, 0x1270, 0x1271, 0x1272, 0x1273,
986e461dc072 Initial revision
glantau
parents:
diff changeset
694 0x1274, 0x1275, 0x12ab, 0x12ac, 0x12ad, 0x12ae, 0x12af, 0x12b0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
695 0x12b1, 0x1315, 0x1316, 0x1317, 0x13bf, 0x13c0, 0x13c1, 0x13c2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
696 0x13c3, 0x13c4, 0x13c5, 0x13c6, 0x13c7, 0x13c8, 0x13c9, 0x13ca,
986e461dc072 Initial revision
glantau
parents:
diff changeset
697 0x13cb, 0x13cc, 0x13cd, 0x1a06, 0x1a07, 0x1a28, 0x1a29, 0x1a2a,
986e461dc072 Initial revision
glantau
parents:
diff changeset
698 0x1a2b, 0x1a2c, 0x1a2d, 0x1a80, 0x1abb, 0x1abc, 0x1abd, 0x1ad8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
699 0x1ad9, 0x0094, 0x0095, 0x0096, 0x0097, 0x00a0, 0x00a1, 0x00a2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
700 0x00a3, 0x0831, 0x0832, 0x0833, 0x0834, 0x0835, 0x0836, 0x0837,
986e461dc072 Initial revision
glantau
parents:
diff changeset
701 0x0838, 0x0839, 0x083a, 0x083b, 0x0939, 0x093a, 0x093b, 0x093c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
702 0x093d, 0x093e, 0x093f, 0x09a0, 0x09a1, 0x09a2, 0x09a3, 0x09a4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
703 0x09a5, 0x11ac, 0x11ad, 0x11ae, 0x11af, 0x11b0, 0x11b1, 0x11b2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
704 0x11b3, 0x11b4, 0x11b5, 0x11b6, 0x11b7, 0x11b8, 0x11b9, 0x11ba,
986e461dc072 Initial revision
glantau
parents:
diff changeset
705 0x11bb, 0x132f, 0x1454, 0x1455, 0x1456, 0x1457, 0x1458, 0x1459,
986e461dc072 Initial revision
glantau
parents:
diff changeset
706 0x145a, 0x145b, 0x145c, 0x145d, 0x145e, 0x145f, 0x1460, 0x1461,
986e461dc072 Initial revision
glantau
parents:
diff changeset
707 0x1462, 0x1463, 0x1464, 0x1465, 0x1466, 0x1467, 0x1468, 0x1469,
986e461dc072 Initial revision
glantau
parents:
diff changeset
708 0x146a, 0x146b, 0x17de, 0x17df, 0x17e0, 0x17e1, 0x17e2, 0x17e3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
709 0x17e4, 0x17e5, 0x17e6, 0x17e7, 0x17e8, 0x17e9, 0x17ea, 0x17eb,
986e461dc072 Initial revision
glantau
parents:
diff changeset
710 0x17ec, 0x17ed, 0x2540, 0x2541, 0x2542, 0x2543, 0x2544, 0x2545,
986e461dc072 Initial revision
glantau
parents:
diff changeset
711 0x2546, 0x2547, 0x2548, 0x2549, 0x254a, 0x254b, 0x254c, 0x254d,
986e461dc072 Initial revision
glantau
parents:
diff changeset
712 0x254e, 0x254f, 0x2550, 0x2551, 0x2552, 0x2553, 0x2554, 0x2555,
986e461dc072 Initial revision
glantau
parents:
diff changeset
713 0x2628, 0x2766, 0x2767, 0x2768, 0x2769, 0x276a, 0x276b, 0x276c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
714 0x276d, 0x276e, 0x276f, 0x2770, 0x2771, 0x2772, 0x2773, 0x2774,
986e461dc072 Initial revision
glantau
parents:
diff changeset
715 0x2775, 0x2776, 0x2777, 0x2778, 0x2779, 0x277a, 0x277b, 0x277c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
716 0x277d, 0x3503, 0x3544, 0x3545, 0x3546, 0x3547, 0x3560, 0x3561,
986e461dc072 Initial revision
glantau
parents:
diff changeset
717 0x3562, 0x3563, 0x3564, 0x3565, 0x3566, 0x3567, 0x3568, 0x3569,
986e461dc072 Initial revision
glantau
parents:
diff changeset
718 0x356a, 0x356b, 0x356c, 0x356d, 0x356e, 0x356f, 0x3570, 0x3571,
986e461dc072 Initial revision
glantau
parents:
diff changeset
719 0x3572, 0x3573, 0x3574, 0x3575, 0x03f0, 0x103d, 0x103e, 0x103f,
986e461dc072 Initial revision
glantau
parents:
diff changeset
720 0x1040, 0x1041, 0x1042, 0x1043, 0x1044, 0x1045, 0x1046, 0x1047,
986e461dc072 Initial revision
glantau
parents:
diff changeset
721 0x1048, 0x1049, 0x104a, 0x104b, 0x104c, 0x104d, 0x104e, 0x104f,
986e461dc072 Initial revision
glantau
parents:
diff changeset
722 0x1050, 0x1051, 0x1052, 0x1053, 0x1054, 0x1055, 0x1056, 0x1057,
986e461dc072 Initial revision
glantau
parents:
diff changeset
723 0x1058, 0x1059, 0x105a, 0x105b, 0x105c, 0x105d, 0x105e, 0x105f,
986e461dc072 Initial revision
glantau
parents:
diff changeset
724 0x1060, 0x1061, 0x1270, 0x1271, 0x21b8, 0x21b9, 0x21ba, 0x21bb,
986e461dc072 Initial revision
glantau
parents:
diff changeset
725 0x21bc, 0x21bd, 0x21be, 0x21bf, 0x21f0, 0x21f1, 0x21f2, 0x21f3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
726 0x21f4, 0x21f5, 0x21f6, 0x21f7, 0x21f8, 0x21f9, 0x21fa, 0x21fb,
986e461dc072 Initial revision
glantau
parents:
diff changeset
727 0x21fc, 0x21fd, 0x21fe, 0x21ff, 0x2340, 0x2341, 0x2342, 0x2343,
986e461dc072 Initial revision
glantau
parents:
diff changeset
728 0x2344, 0x2345, 0x2346, 0x2347, 0x2348, 0x2349, 0x234a, 0x234b,
986e461dc072 Initial revision
glantau
parents:
diff changeset
729 0x234c, 0x234d, 0x234e, 0x234f, 0x2350, 0x2351, 0x2352, 0x2353,
986e461dc072 Initial revision
glantau
parents:
diff changeset
730 0x2354, 0x2355, 0x2356, 0x2357, 0x265c, 0x2f88, 0x2f89, 0x2f8a,
986e461dc072 Initial revision
glantau
parents:
diff changeset
731 0x2f8b, 0x2f8c, 0x2f8d, 0x2f8e, 0x2f8f, 0x2f90, 0x2f91, 0x2f92,
986e461dc072 Initial revision
glantau
parents:
diff changeset
732 0x2f93, 0x2f94, 0x2f95, 0x2f96, 0x2f97, 0x2f98, 0x2f99, 0x2f9a,
986e461dc072 Initial revision
glantau
parents:
diff changeset
733 0x2f9b, 0x2f9c, 0x2f9d, 0x2f9e, 0x2f9f, 0x2fa0, 0x2fa1, 0x2fa2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
734 0x2fa3, 0x2fa4, 0x2fa5, 0x2fa6, 0x2fa7, 0x2fa8, 0x2fa9, 0x2faa,
986e461dc072 Initial revision
glantau
parents:
diff changeset
735 0x2fab, 0x2fac, 0x2fad, 0x2fae, 0x2faf, 0x2fb0, 0x2fb1, 0x2fb2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
736 0x2fb3, 0x2fb4, 0x2fb5, 0x2fb6, 0x2fb7, 0x2fb8, 0x2fb9, 0x2fba,
986e461dc072 Initial revision
glantau
parents:
diff changeset
737 0x2fbb, 0x4c52, 0x4c53, 0x4e28, 0x4e29, 0x4e2a, 0x4e2b, 0x4e2c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
738 0x4e2d, 0x4e2e, 0x4e2f, 0x4e30, 0x4e31, 0x4e32, 0x4e33, 0x4e34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
739 0x4e35, 0x4e36, 0x4e37, 0x4e38, 0x4e39, 0x4e3a, 0x4e3b, 0x4e3c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
740 0x4e3d, 0x4e3e, 0x4e3f, 0x4e80, 0x4e81, 0x4e82, 0x4e83, 0x4e84,
986e461dc072 Initial revision
glantau
parents:
diff changeset
741 0x4e85, 0x4e86, 0x4e87, 0x4e88, 0x4e89, 0x4e8a, 0x4e8b, 0x4e8c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
742 0x4e8d, 0x4e8e, 0x4e8f, 0x4e90, 0x4e91, 0x4e92, 0x4e93, 0x4e94,
986e461dc072 Initial revision
glantau
parents:
diff changeset
743 0x4e95, 0x4e96, 0x4e97, 0x4e98, 0x4e99, 0x4e9a, 0x4e9b, 0x4e9c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
744 0x4e9d, 0x4e9e, 0x4e9f, 0x4ea0, 0x4ea1, 0x4ea2, 0x4ea3, 0x4ea4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
745 0x4ea5, 0x4ea6, 0x4ea7, 0x4ea8, 0x4ea9, 0x4eaa, 0x4eab, 0x4eac,
986e461dc072 Initial revision
glantau
parents:
diff changeset
746 0x4ead, 0x4eae, 0x4eaf, 0x4eb0, 0x4eb1, 0x4eb2, 0x4eb3, 0x4eb4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
747 0x4eb5, 0x4eb6, 0x4eb7, 0x4eb8, 0x4eb9, 0x4eba, 0x4ebb, 0x4ebc,
986e461dc072 Initial revision
glantau
parents:
diff changeset
748 0x4ebd, 0x4ebe, 0x4ebf, 0x4ec0, 0x4ec1, 0x4ec2, 0x4ec3, 0x4ec4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
749 0x4ec5, 0x4ec6, 0x4ec7, 0x4ec8, 0x4ec9, 0x4eca, 0x4ecb, 0x6a04,
986e461dc072 Initial revision
glantau
parents:
diff changeset
750 0x6a05, 0x07e2, 0x07e3, 0x07e4, 0x07e5, 0x07e6, 0x07e7, 0x07e8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
751 0x07e9, 0x07ea, 0x07eb, 0x07ec, 0x07ed, 0x07ee, 0x07ef, 0x07f0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
752 0x07f1, 0x07f2, 0x07f3, 0x07f4, 0x07f5, 0x07f6, 0x07f7, 0x07f8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
753 0x07f9, 0x07fa, 0x07fb, 0x07fc, 0x07fd, 0x07fe, 0x07ff, 0x2000,
986e461dc072 Initial revision
glantau
parents:
diff changeset
754 0x2001, 0x2002, 0x2003, 0x2004, 0x2005, 0x2006, 0x2007, 0x2008,
986e461dc072 Initial revision
glantau
parents:
diff changeset
755 0x2009, 0x200a, 0x200b, 0x200c, 0x200d, 0x200e, 0x200f, 0x2010,
986e461dc072 Initial revision
glantau
parents:
diff changeset
756 0x2011, 0x2012, 0x2013, 0x2014, 0x2015, 0x2016, 0x2017, 0x2018,
986e461dc072 Initial revision
glantau
parents:
diff changeset
757 0x2019, 0x201a, 0x201b, 0x201c, 0x201d, 0x201e, 0x201f, 0x2020,
986e461dc072 Initial revision
glantau
parents:
diff changeset
758 0x2021, 0x2022, 0x2023, 0x2024, 0x2025, 0x2026, 0x2027, 0x2028,
986e461dc072 Initial revision
glantau
parents:
diff changeset
759 0x2029, 0x202a, 0x202b, 0x202c, 0x202d, 0x202e, 0x202f, 0x2030,
986e461dc072 Initial revision
glantau
parents:
diff changeset
760 0x2031, 0x2032, 0x2033, 0x2034, 0x2035, 0x2036, 0x2037, 0x2038,
986e461dc072 Initial revision
glantau
parents:
diff changeset
761 0x2039, 0x203a, 0x203b, 0x203c, 0x203d, 0x203e, 0x203f, 0x2040,
986e461dc072 Initial revision
glantau
parents:
diff changeset
762 0x2041, 0x2042, 0x2043, 0x2044, 0x2045, 0x2046, 0x2047, 0x2048,
986e461dc072 Initial revision
glantau
parents:
diff changeset
763 0x2049, 0x204a, 0x204b, 0x204c, 0x204d, 0x204e, 0x204f, 0x2050,
986e461dc072 Initial revision
glantau
parents:
diff changeset
764 0x2051, 0x2052, 0x2053, 0x2054, 0x2055, 0x2056, 0x2057, 0x2058,
986e461dc072 Initial revision
glantau
parents:
diff changeset
765 0x2059, 0x205a, 0x205b, 0x205c, 0x205d, 0x205e, 0x205f, 0x2060,
986e461dc072 Initial revision
glantau
parents:
diff changeset
766 0x2061, 0x2062, 0x2063, 0x2064, 0x2065, 0x2066, 0x2067, 0x2068,
986e461dc072 Initial revision
glantau
parents:
diff changeset
767 0x2069, 0x206a, 0x206b, 0x206c, 0x206d, 0x206e, 0x206f, 0x2070,
986e461dc072 Initial revision
glantau
parents:
diff changeset
768 0x2071, 0x2072, 0x2073, 0x2074, 0x2075, 0x2076, 0x2077, 0x2078,
986e461dc072 Initial revision
glantau
parents:
diff changeset
769 0x2079, 0x4cba, 0x4cbb, 0x5d88, 0x5d89, 0x5d8a, 0x5d8b, 0x5d8c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
770 0x5d8d, 0x5d8e, 0x5d8f, 0x5db0, 0x5db1, 0x5db2, 0x5db3, 0x5db4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
771 0x5db5, 0x5db6, 0x5db7, 0x5db8, 0x5db9, 0x5dba, 0x5dbb, 0x5dbc,
986e461dc072 Initial revision
glantau
parents:
diff changeset
772 0x5dbd, 0x5dbe, 0x5dbf, 0x5e40, 0x5e41, 0x5e42, 0x5e43, 0x5e44,
986e461dc072 Initial revision
glantau
parents:
diff changeset
773 0x5e45, 0x5e46, 0x5e47, 0x5e48, 0x5e49, 0x5e4a, 0x5e4b, 0x5e4c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
774 0x5e4d, 0x5e4e, 0x5e4f, 0x5e50, 0x5e51, 0x5e52, 0x5e53, 0x5e54,
986e461dc072 Initial revision
glantau
parents:
diff changeset
775 0x5e55, 0x5e56, 0x5e57, 0x5e58, 0x5e59, 0x5e5a, 0x5e5b, 0x5e5c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
776 0x5e5d, 0x5e5e, 0x5e5f, 0x5e60, 0x5e61, 0x5e62, 0x5e63, 0x5e64,
986e461dc072 Initial revision
glantau
parents:
diff changeset
777 0x5e65, 0x5e66, 0x5e67, 0x5e68, 0x5e69, 0x5e6a, 0x5e6b, 0x5e6c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
778 0x5e6d, 0x5e6e, 0x5e6f, 0x5e70, 0x5e71, 0x5e72, 0x5e73, 0x5e74,
986e461dc072 Initial revision
glantau
parents:
diff changeset
779 0x5e75, 0x5e76, 0x5e77, 0x5e78, 0x5e79, 0x5e7a, 0x5e7b, 0x5e7c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
780 0x5e7d, 0x5e7e, 0x5e7f, 0x5e80, 0x5e81, 0x5e82, 0x5e83, 0x5e84,
986e461dc072 Initial revision
glantau
parents:
diff changeset
781 0x5e85, 0x5e86, 0x5e87, 0x5e88, 0x5e89, 0x5e8a, 0x5e8b, 0x5e8c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
782 0x5e8d, 0x5e8e, 0x5e8f, 0x5e90, 0x5e91, 0x5e92, 0x5e93, 0x5e94,
986e461dc072 Initial revision
glantau
parents:
diff changeset
783 0x5e95, 0x5e96, 0x5e97, 0x5e98, 0x5e99, 0x5e9a, 0x5e9b, 0x5e9c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
784 0x5e9d, 0x5e9e, 0x5e9f, 0x5ea0, 0x5ea1, 0x5ea2, 0x5ea3, 0x5ea4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
785 0x5ea5, 0x5ea6, 0x5ea7, 0x5ea8, 0x5ea9, 0x5eaa, 0x5eab, 0x5eac,
986e461dc072 Initial revision
glantau
parents:
diff changeset
786 0x5ead, 0x5eae, 0x5eaf, 0x5eb0, 0x5eb1, 0x5eb2, 0x5eb3, 0x5eb4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
787 0x5eb5, 0x5eb6, 0x5eb7, 0x5eb8, 0x5eb9, 0x5eba, 0x5ebb, 0x5ebc,
986e461dc072 Initial revision
glantau
parents:
diff changeset
788 0x5ebd, 0x5ebe, 0x5ebf, 0x5ec0, 0x5ec1, 0x5ec2, 0x5ec3, 0x5ec4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
789 0x5ec5, 0x5ec6, 0x5ec7, 0x5ec8, 0x5ec9, 0x5eca, 0x5ecb, 0x5ecc,
986e461dc072 Initial revision
glantau
parents:
diff changeset
790 0x5ecd, 0x5ece, 0x5ecf, 0x5ed0, 0x5ed1, 0x5ed2, 0x5ed3, 0x5ed4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
791 0x5ed5, 0x5ed6, 0x5ed7, 0x5ed8, 0x5ed9, 0x5eda, 0x5edb, 0x5edc,
986e461dc072 Initial revision
glantau
parents:
diff changeset
792 0x5edd, 0x5ede, 0x5edf, 0x5ee0, 0x5ee1, 0x5ee2, 0x5ee3, 0x5ee4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
793 0x5ee5, 0x5ee6, 0x5ee7, 0x5ee8, 0x5ee9, 0x5eea, 0x5eeb, 0x5eec,
986e461dc072 Initial revision
glantau
parents:
diff changeset
794 0x5eed, 0x5eee, 0x5eef, 0x5ef0, 0x5ef1, 0x5ef2, 0x5ef3, 0x5ef4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
795 0x5ef5, 0x5ef6, 0x5ef7, 0x5ef8, 0x5ef9, 0x5efa, 0x5efb, 0x5efc,
986e461dc072 Initial revision
glantau
parents:
diff changeset
796 0x5efd, 0x5efe, 0x5eff, 0x5f00, 0x5f01, 0x5f02, 0x5f03, 0x5f04,
986e461dc072 Initial revision
glantau
parents:
diff changeset
797 0x5f05, 0x5f06, 0x5f07, 0x5f08, 0x5f09, 0x5f0a, 0x5f0b, 0x5f0c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
798 0x5f0d, 0x5f0e, 0x5f0f, 0x0000,
986e461dc072 Initial revision
glantau
parents:
diff changeset
799 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
800
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
801 static const uint8_t table0_mv_bits[1100] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
802 1, 4, 4, 4, 5, 5, 5, 6,
986e461dc072 Initial revision
glantau
parents:
diff changeset
803 6, 6, 7, 7, 7, 8, 8, 8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
804 8, 8, 8, 8, 8, 8, 8, 8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
805 8, 9, 9, 9, 9, 9, 9, 9,
986e461dc072 Initial revision
glantau
parents:
diff changeset
806 9, 9, 9, 9, 9, 10, 10, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
807 10, 10, 10, 10, 10, 10, 10, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
808 10, 10, 10, 10, 10, 10, 10, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
809 10, 10, 10, 10, 11, 11, 11, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
810 11, 11, 11, 11, 11, 11, 11, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
811 11, 11, 11, 11, 11, 11, 11, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
812 11, 11, 11, 11, 11, 11, 11, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
813 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
814 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
815 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
816 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
817 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
818 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
819 12, 12, 12, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
820 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
821 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
822 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
823 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
824 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
825 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
826 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
827 13, 13, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
828 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
829 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
830 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
831 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
832 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
833 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
834 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
835 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
836 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
837 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
838 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
839 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
840 14, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
841 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
842 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
843 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
844 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
845 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
846 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
847 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
848 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
849 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
850 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
851 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
852 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
853 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
854 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
855 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
856 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
857 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
858 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
859 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
860 15, 15, 15, 15, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
861 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
862 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
863 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
864 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
865 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
866 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
867 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
868 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
869 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
870 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
871 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
872 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
873 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
874 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
875 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
876 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
877 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
878 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
879 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
880 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
881 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
882 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
883 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
884 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
885 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
886 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
887 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
888 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
889 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
890 16, 16, 16, 16, 16, 16, 16, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
891 16, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
892 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
893 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
894 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
895 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
896 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
897 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
898 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
899 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
900 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
901 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
902 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
903 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
904 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
905 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
906 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
907 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
908 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
909 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
910 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
911 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
912 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
913 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
914 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
915 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
916 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
917 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
918 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
919 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
920 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
921 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
922 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
923 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
924 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
925 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
926 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
927 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
928 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
929 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
930 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
931 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
932 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
933 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
934 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
935 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
936 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
937 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
938 17, 17, 17, 17, 17, 17, 17, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
939 17, 17, 17, 8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
940 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
941
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
942 static const uint8_t table0_mvx[1099] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
943 32, 32, 31, 32, 33, 31, 33, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
944 33, 32, 34, 32, 30, 32, 31, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
945 35, 32, 34, 33, 29, 33, 30, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
946 31, 31, 35, 29, 33, 35, 33, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
947 31, 29, 30, 34, 30, 36, 28, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
948 34, 37, 30, 27, 32, 25, 39, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
949 34, 32, 35, 35, 35, 31, 35, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
950 32, 29, 30, 29, 37, 27, 36, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
951 37, 33, 32, 31, 29, 31, 28, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
952 33, 30, 34, 33, 33, 28, 27, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
953 31, 26, 39, 32, 32, 31, 33, 39,
986e461dc072 Initial revision
glantau
parents:
diff changeset
954 31, 38, 28, 36, 21, 23, 43, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
955 34, 41, 30, 25, 28, 31, 30, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
956 38, 35, 61, 34, 28, 30, 37, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
957 35, 27, 36, 3, 59, 38, 37, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
958 31, 29, 26, 33, 37, 33, 27, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
959 35, 34, 34, 40, 42, 33, 32, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
960 4, 5, 28, 24, 25, 35, 39, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
961 32, 23, 27, 32, 30, 35, 26, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
962 60, 36, 29, 22, 26, 41, 7, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
963 38, 30, 36, 29, 30, 41, 26, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
964 32, 34, 24, 39, 1, 25, 39, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
965 28, 29, 32, 38, 26, 36, 28, 63,
986e461dc072 Initial revision
glantau
parents:
diff changeset
966 28, 39, 23, 21, 26, 35, 31, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
967 57, 31, 29, 29, 28, 30, 27, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
968 2, 38, 40, 34, 37, 29, 38, 43,
986e461dc072 Initial revision
glantau
parents:
diff changeset
969 26, 32, 33, 42, 24, 40, 28, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
970 32, 32, 36, 32, 43, 25, 21, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
971 30, 31, 41, 29, 33, 37, 26, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
972 27, 59, 23, 33, 35, 31, 31, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
973 38, 39, 32, 23, 32, 27, 37, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
974 31, 40, 25, 27, 38, 31, 36, 28,
986e461dc072 Initial revision
glantau
parents:
diff changeset
975 31, 36, 25, 45, 3, 34, 38, 39,
986e461dc072 Initial revision
glantau
parents:
diff changeset
976 40, 38, 30, 32, 19, 24, 25, 26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
977 45, 20, 24, 33, 33, 31, 41, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
978 39, 47, 40, 58, 59, 41, 33, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
979 17, 61, 42, 30, 26, 29, 36, 61,
986e461dc072 Initial revision
glantau
parents:
diff changeset
980 33, 37, 62, 28, 25, 38, 25, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
981 17, 23, 34, 33, 21, 33, 49, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
982 32, 23, 27, 22, 24, 22, 39, 43,
986e461dc072 Initial revision
glantau
parents:
diff changeset
983 27, 37, 6, 42, 47, 26, 30, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
984 41, 39, 33, 22, 45, 36, 32, 45,
986e461dc072 Initial revision
glantau
parents:
diff changeset
985 19, 22, 30, 5, 5, 17, 29, 22,
986e461dc072 Initial revision
glantau
parents:
diff changeset
986 31, 31, 43, 37, 27, 32, 32, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
987 33, 34, 43, 35, 29, 26, 22, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
988 19, 32, 25, 31, 41, 49, 28, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
989 28, 39, 34, 19, 37, 38, 29, 21,
986e461dc072 Initial revision
glantau
parents:
diff changeset
990 36, 42, 24, 48, 16, 28, 49, 22,
986e461dc072 Initial revision
glantau
parents:
diff changeset
991 34, 31, 38, 39, 44, 11, 35, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
992 33, 33, 23, 28, 33, 46, 15, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
993 24, 41, 24, 34, 34, 30, 26, 24,
986e461dc072 Initial revision
glantau
parents:
diff changeset
994 14, 60, 21, 29, 39, 23, 35, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
995 63, 45, 33, 34, 47, 41, 22, 42,
986e461dc072 Initial revision
glantau
parents:
diff changeset
996 35, 35, 23, 32, 35, 43, 32, 7,
986e461dc072 Initial revision
glantau
parents:
diff changeset
997 31, 41, 20, 31, 16, 13, 63, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
998 30, 32, 35, 30, 30, 31, 42, 47,
986e461dc072 Initial revision
glantau
parents:
diff changeset
999 39, 38, 40, 40, 51, 55, 56, 18,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1000 21, 39, 39, 33, 17, 41, 23, 24,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1001 43, 25, 31, 20, 19, 45, 1, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1002 31, 22, 35, 15, 46, 46, 35, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1003 28, 29, 29, 23, 41, 27, 14, 53,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1004 53, 27, 24, 32, 57, 32, 17, 42,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1005 37, 29, 33, 1, 25, 32, 32, 63,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1006 26, 40, 44, 36, 31, 39, 20, 20,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1007 44, 23, 33, 34, 35, 33, 33, 28,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1008 41, 23, 41, 41, 29, 25, 26, 49,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1009 29, 24, 37, 49, 50, 51, 51, 26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1010 39, 25, 26, 15, 39, 18, 42, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1011 4, 31, 32, 32, 60, 1, 42, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1012 0, 12, 19, 35, 21, 41, 17, 26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1013 20, 45, 46, 32, 37, 22, 47, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1014 31, 27, 29, 30, 21, 33, 35, 18,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1015 25, 33, 50, 51, 42, 2, 15, 51,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1016 53, 33, 25, 29, 55, 37, 38, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1017 38, 59, 38, 33, 39, 13, 32, 40,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1018 61, 61, 32, 9, 44, 3, 31, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1019 25, 31, 27, 23, 9, 25, 9, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1020 20, 30, 30, 42, 18, 28, 25, 28,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1021 28, 21, 29, 43, 29, 43, 26, 44,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1022 44, 21, 38, 21, 24, 45, 45, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1023 39, 22, 35, 36, 34, 34, 45, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1024 29, 31, 46, 25, 46, 16, 17, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1025 20, 32, 47, 47, 47, 32, 49, 49,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1026 49, 31, 1, 27, 28, 39, 39, 21,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1027 36, 23, 51, 2, 40, 51, 32, 53,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1028 24, 30, 24, 30, 21, 40, 57, 57,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1029 31, 41, 58, 32, 12, 4, 32, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1030 59, 31, 32, 13, 9, 35, 26, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1031 37, 61, 37, 63, 26, 29, 41, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1032 23, 20, 41, 26, 41, 42, 42, 42,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1033 26, 26, 26, 26, 1, 26, 37, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1034 37, 23, 34, 42, 27, 43, 34, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1035 31, 24, 33, 16, 3, 31, 24, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1036 24, 4, 44, 44, 11, 44, 31, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1037 13, 44, 45, 13, 25, 22, 38, 26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1038 38, 38, 39, 32, 30, 39, 30, 22,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1039 32, 26, 30, 47, 47, 47, 19, 47,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1040 30, 31, 35, 8, 23, 47, 47, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1041 35, 47, 31, 48, 35, 19, 36, 49,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1042 49, 33, 31, 39, 27, 39, 49, 49,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1043 50, 50, 50, 39, 31, 51, 51, 39,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1044 28, 33, 33, 21, 40, 31, 52, 53,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1045 40, 53, 9, 33, 31, 53, 54, 54,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1046 54, 55, 55, 34, 15, 56, 25, 56,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1047 21, 21, 40, 40, 25, 40, 58, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1048 5, 41, 41, 12, 60, 41, 41, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1049 22, 61, 18, 29, 29, 30, 61, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1050 61, 62, 62, 30, 30, 63, 18, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1051 30, 23, 19, 20, 20, 41, 13, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1052 5, 5, 1, 5, 32, 6, 32, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1053 20, 35, 27, 35, 35, 36, 36, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1054 36, 41, 41, 41, 3, 30, 42, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1055 20, 30, 27, 28, 30, 21, 33, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1056 14, 24, 30, 42, 24, 33, 25, 42,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1057 43, 14, 43, 43, 14, 43, 7, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1058 37, 37, 37, 37, 7, 14, 25, 43,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1059 43, 44, 15, 37, 7, 7, 3, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1060 8, 15, 15, 8, 44, 44, 44, 45,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1061 45, 45, 45, 8, 8, 45, 21, 45,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1062 28, 28, 28, 21, 28, 28, 22, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1063 46, 46, 37, 8, 29, 37, 29, 22,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1064 46, 37, 22, 29, 47, 47, 38, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1065 16, 38, 38, 33, 38, 22, 47, 47,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1066 29, 25, 16, 0, 48, 1, 34, 48,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1067 48, 34, 25, 26, 26, 49, 49, 26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1068 1, 49, 4, 26, 4, 49, 1, 9,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1069 49, 49, 49, 10, 49, 17, 38, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1070 17, 50, 38, 50, 50, 22, 38, 51,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1071 38, 38, 51, 39, 39, 18, 22, 39,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1072 51, 22, 52, 52, 52, 39, 53, 53,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1073 10, 23, 18, 29, 10, 53, 29, 54,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1074 11, 54, 11, 11, 55, 1, 18, 55,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1075 55, 55, 55, 55, 55, 29, 34, 18,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1076 29, 56, 56, 34, 57, 34, 34, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1077 29, 57, 57, 35, 35, 35, 35, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1078 39, 35, 59, 59, 18, 59, 39, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1079 18, 40, 60, 60, 61, 30, 18, 61,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1080 61, 19, 19,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1081 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
1082
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1083 static const uint8_t table0_mvy[1099] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
1084 32, 31, 32, 33, 32, 31, 31, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1085 33, 34, 32, 30, 32, 35, 34, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1086 32, 29, 33, 30, 32, 34, 33, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1087 30, 35, 31, 31, 29, 33, 35, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1088 29, 33, 34, 34, 30, 32, 32, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1089 29, 32, 35, 32, 28, 32, 32, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1090 35, 37, 34, 29, 30, 36, 35, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1091 25, 30, 29, 35, 33, 31, 31, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1092 31, 28, 39, 28, 29, 37, 31, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1093 27, 36, 28, 36, 37, 33, 33, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1094 27, 32, 31, 38, 26, 25, 25, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1095 39, 31, 34, 30, 32, 32, 32, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1096 36, 32, 28, 33, 30, 38, 37, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1097 33, 28, 32, 37, 35, 38, 29, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1098 27, 29, 29, 32, 32, 34, 35, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1099 26, 36, 31, 38, 30, 26, 35, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1100 37, 26, 25, 32, 32, 39, 23, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1101 32, 32, 29, 32, 29, 36, 29, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1102 41, 31, 30, 21, 39, 25, 34, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1103 32, 35, 39, 32, 33, 33, 32, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1104 29, 25, 28, 27, 26, 31, 30, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1105 24, 24, 31, 34, 32, 30, 35, 40,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1106 28, 38, 5, 35, 29, 36, 36, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1107 38, 30, 33, 31, 35, 26, 23, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1108 32, 41, 28, 25, 37, 40, 37, 39,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1109 32, 36, 33, 39, 25, 26, 28, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1110 28, 42, 23, 31, 33, 31, 39, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1111 59, 22, 27, 4, 33, 34, 33, 24,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1112 41, 3, 35, 41, 41, 28, 36, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1113 28, 33, 35, 21, 23, 21, 22, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1114 27, 27, 43, 29, 60, 39, 27, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1115 59, 34, 27, 27, 26, 40, 37, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1116 61, 26, 39, 33, 31, 22, 37, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1117 30, 25, 24, 61, 31, 34, 25, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1118 32, 32, 30, 3, 61, 43, 29, 23,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1119 28, 32, 28, 32, 31, 34, 5, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1120 32, 33, 33, 42, 37, 23, 38, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1121 40, 26, 32, 26, 37, 38, 36, 24,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1122 29, 30, 20, 22, 29, 24, 32, 41,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1123 2, 34, 25, 33, 29, 31, 39, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1124 36, 24, 32, 30, 33, 27, 44, 60,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1125 30, 36, 19, 34, 31, 24, 16, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1126 32, 38, 21, 33, 31, 31, 21, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1127 5, 17, 29, 38, 38, 18, 58, 19,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1128 43, 41, 30, 41, 43, 39, 29, 7,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1129 29, 17, 28, 19, 28, 31, 25, 19,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1130 40, 26, 21, 33, 39, 23, 40, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1131 39, 34, 35, 32, 32, 24, 33, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1132 40, 47, 39, 37, 32, 33, 24, 23,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1133 45, 47, 27, 23, 42, 32, 32, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1134 36, 37, 37, 17, 18, 22, 40, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1135 32, 31, 35, 24, 17, 25, 17, 23,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1136 33, 34, 51, 42, 31, 36, 36, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1137 21, 22, 37, 44, 43, 25, 47, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1138 45, 27, 31, 58, 31, 32, 31, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1139 43, 20, 47, 45, 54, 1, 26, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1140 38, 14, 22, 24, 33, 34, 32, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1141 37, 21, 23, 49, 35, 23, 28, 39,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1142 39, 23, 55, 33, 30, 30, 63, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1143 42, 28, 13, 33, 33, 35, 19, 46,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1144 43, 17, 19, 36, 39, 24, 31, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1145 33, 26, 28, 62, 33, 63, 33, 39,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1146 19, 49, 17, 31, 43, 13, 15, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1147 25, 35, 33, 23, 49, 41, 28, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1148 34, 38, 7, 61, 11, 50, 13, 41,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1149 19, 47, 25, 26, 15, 42, 41, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1150 45, 27, 17, 35, 32, 29, 32, 24,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1151 13, 26, 26, 31, 24, 33, 28, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1152 31, 11, 45, 46, 33, 33, 35, 57,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1153 32, 32, 35, 45, 34, 11, 37, 42,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1154 39, 37, 31, 49, 21, 27, 29, 47,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1155 53, 40, 51, 16, 26, 1, 40, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1156 41, 44, 34, 25, 27, 31, 35, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1157 31, 15, 49, 1, 35, 40, 5, 58,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1158 21, 29, 22, 59, 45, 31, 9, 26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1159 9, 29, 11, 32, 30, 3, 13, 20,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1160 18, 20, 11, 3, 29, 40, 31, 53,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1161 30, 17, 20, 37, 31, 42, 47, 47,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1162 54, 38, 9, 34, 13, 37, 21, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1163 27, 43, 42, 45, 40, 25, 27, 46,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1164 22, 25, 53, 20, 2, 14, 39, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1165 22, 44, 34, 21, 38, 33, 27, 48,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1166 34, 52, 35, 47, 49, 54, 2, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1167 23, 52, 29, 45, 22, 49, 54, 21,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1168 40, 42, 31, 30, 29, 34, 0, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1169 23, 51, 24, 59, 28, 38, 29, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1170 2, 13, 31, 8, 31, 33, 12, 45,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1171 41, 7, 14, 30, 25, 18, 43, 20,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1172 43, 35, 44, 1, 49, 42, 42, 18,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1173 41, 38, 41, 44, 53, 11, 20, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1174 45, 46, 47, 48, 39, 52, 46, 49,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1175 63, 55, 44, 38, 13, 13, 57, 22,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1176 51, 16, 12, 28, 35, 57, 25, 20,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1177 26, 28, 28, 29, 32, 31, 62, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1178 35, 35, 19, 49, 48, 39, 40, 18,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1179 43, 46, 11, 6, 48, 19, 49, 41,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1180 10, 23, 58, 17, 21, 23, 34, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1181 60, 0, 44, 34, 26, 37, 46, 43,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1182 49, 59, 4, 34, 59, 37, 22, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1183 28, 46, 6, 40, 59, 42, 36, 61,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1184 28, 30, 31, 43, 10, 22, 23, 47,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1185 20, 52, 55, 36, 25, 16, 1, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1186 27, 29, 5, 63, 18, 41, 31, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1187 38, 1, 5, 13, 28, 31, 17, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1188 39, 41, 36, 37, 22, 39, 33, 43,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1189 43, 15, 17, 49, 30, 21, 22, 20,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1190 10, 17, 25, 54, 57, 3, 34, 8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1191 36, 25, 31, 14, 15, 19, 29, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1192 18, 39, 53, 22, 27, 20, 29, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1193 41, 42, 35, 62, 50, 29, 53, 50,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1194 35, 55, 42, 61, 63, 4, 7, 42,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1195 21, 46, 47, 49, 27, 46, 17, 55,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1196 41, 50, 63, 4, 56, 18, 8, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1197 18, 51, 63, 36, 55, 18, 5, 55,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1198 9, 29, 17, 21, 30, 27, 1, 59,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1199 7, 11, 12, 15, 5, 42, 24, 41,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1200 43, 7, 27, 22, 25, 31, 30, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1201 22, 39, 53, 29, 36, 37, 48, 0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1202 5, 13, 17, 31, 32, 26, 46, 28,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1203 44, 45, 46, 53, 49, 51, 3, 41,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1204 3, 22, 42, 33, 5, 45, 7, 22,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1205 40, 53, 24, 14, 25, 27, 10, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1206 34, 16, 17, 53, 20, 26, 39, 45,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1207 18, 45, 35, 33, 31, 49, 4, 39,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1208 42, 11, 51, 5, 13, 26, 27, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1209 52, 30, 0, 22, 12, 34, 62, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1210 38, 41, 47, 30, 63, 38, 41, 43,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1211 59, 33, 45, 37, 38, 40, 47, 24,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1212 48, 49, 30, 1, 10, 22, 49, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1213 39, 59, 31, 32, 33, 18, 13, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1214 31, 21, 27, 44, 42, 39, 46, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1215 26, 32, 30, 31, 0, 30, 34, 9,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1216 12, 13, 25, 31, 32, 55, 43, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1217 61, 33, 35, 46, 25, 47, 48, 62,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1218 63, 38, 61, 1, 2, 5, 7, 9,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1219 46, 10, 34, 35, 36, 55, 51, 7,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1220 40, 23, 34, 37, 5, 13, 42, 18,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1221 25, 27, 28,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1222 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
1223
986e461dc072 Initial revision
glantau
parents:
diff changeset
1224 /* motion vector table 1 */
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1225 static const uint16_t table1_mv_code[1100] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
1226 0x0000, 0x0007, 0x0009, 0x000f, 0x000a, 0x0011, 0x001a, 0x001c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1227 0x0011, 0x0031, 0x0025, 0x002d, 0x002f, 0x006f, 0x0075, 0x0041,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1228 0x004c, 0x004e, 0x005c, 0x0060, 0x0062, 0x0066, 0x0068, 0x0069,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1229 0x006b, 0x00a6, 0x00c1, 0x00cb, 0x00cc, 0x00ce, 0x00da, 0x00e8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1230 0x00ee, 0x0087, 0x0090, 0x009e, 0x009f, 0x00ba, 0x00ca, 0x00d8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1231 0x00db, 0x00df, 0x0104, 0x0109, 0x010c, 0x0143, 0x0145, 0x014a,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1232 0x0156, 0x015c, 0x01b3, 0x01d3, 0x01da, 0x0103, 0x0109, 0x010b,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1233 0x0122, 0x0127, 0x0134, 0x0161, 0x0164, 0x0176, 0x0184, 0x018d,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1234 0x018e, 0x018f, 0x0190, 0x0193, 0x0196, 0x019d, 0x019e, 0x019f,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1235 0x01a9, 0x01b2, 0x01b4, 0x01ba, 0x01bb, 0x01bc, 0x0201, 0x0202,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1236 0x0205, 0x0207, 0x020d, 0x0210, 0x0211, 0x0215, 0x021b, 0x021f,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1237 0x0281, 0x0285, 0x0290, 0x029c, 0x029d, 0x02a2, 0x02a7, 0x02a8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1238 0x02aa, 0x02b0, 0x02b1, 0x02b4, 0x02bc, 0x02bf, 0x0320, 0x0326,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1239 0x0327, 0x0329, 0x032a, 0x0336, 0x0360, 0x0362, 0x0363, 0x0372,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1240 0x03b2, 0x03bc, 0x03bd, 0x0203, 0x0205, 0x021a, 0x0249, 0x024a,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1241 0x024c, 0x02c7, 0x02ca, 0x02ce, 0x02ef, 0x030d, 0x0322, 0x0325,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1242 0x0338, 0x0373, 0x037a, 0x0409, 0x0415, 0x0416, 0x0418, 0x0428,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1243 0x042d, 0x042f, 0x0434, 0x0508, 0x0509, 0x0510, 0x0511, 0x051c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1244 0x051e, 0x0524, 0x0541, 0x0543, 0x0546, 0x0547, 0x054d, 0x0557,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1245 0x055f, 0x056a, 0x056c, 0x056d, 0x056f, 0x0576, 0x0577, 0x057a,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1246 0x057b, 0x057c, 0x057d, 0x0600, 0x0601, 0x0603, 0x0614, 0x0616,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1247 0x0617, 0x061c, 0x061f, 0x0642, 0x0648, 0x0649, 0x064a, 0x064b,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1248 0x0657, 0x0668, 0x0669, 0x066b, 0x066e, 0x067f, 0x06c2, 0x06c8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1249 0x06cb, 0x06de, 0x06df, 0x06e2, 0x06e3, 0x06ef, 0x0748, 0x074b,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1250 0x076e, 0x076f, 0x077c, 0x0409, 0x0423, 0x0428, 0x0429, 0x042a,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1251 0x042b, 0x0432, 0x0433, 0x0496, 0x049a, 0x04d5, 0x04db, 0x0581,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1252 0x0582, 0x058b, 0x058c, 0x058d, 0x0598, 0x0599, 0x059a, 0x059e,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1253 0x05dd, 0x0619, 0x0632, 0x0633, 0x0648, 0x0672, 0x06a1, 0x06a2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1254 0x06a3, 0x06af, 0x06e2, 0x06e3, 0x06e4, 0x0800, 0x0801, 0x0802,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1255 0x0803, 0x081a, 0x081b, 0x0829, 0x082f, 0x0832, 0x083e, 0x083f,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1256 0x0852, 0x0853, 0x0858, 0x086b, 0x0877, 0x0878, 0x0879, 0x087a,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1257 0x087b, 0x0a00, 0x0a01, 0x0a0d, 0x0a0e, 0x0a0f, 0x0a24, 0x0a37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1258 0x0a3a, 0x0a3b, 0x0a3e, 0x0a46, 0x0a47, 0x0a4a, 0x0a4b, 0x0a5f,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1259 0x0a79, 0x0a7a, 0x0a7b, 0x0a80, 0x0a81, 0x0a84, 0x0a85, 0x0a99,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1260 0x0aa5, 0x0aa6, 0x0ab8, 0x0aba, 0x0abb, 0x0abc, 0x0abd, 0x0ac8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1261 0x0ace, 0x0acf, 0x0ad7, 0x0adc, 0x0aeb, 0x0c04, 0x0c25, 0x0c26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1262 0x0c27, 0x0c2a, 0x0c2b, 0x0c3a, 0x0c3b, 0x0c3c, 0x0c3d, 0x0ca0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1263 0x0cad, 0x0cd4, 0x0cd5, 0x0cfc, 0x0cfd, 0x0d86, 0x0d92, 0x0d93,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1264 0x0d94, 0x0d95, 0x0db0, 0x0db8, 0x0db9, 0x0dba, 0x0dbb, 0x0dc0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1265 0x0dc2, 0x0dc3, 0x0dda, 0x0ddb, 0x0ddc, 0x0ddd, 0x0e92, 0x0e93,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1266 0x0e94, 0x0e95, 0x0ec7, 0x0ecc, 0x0ece, 0x0ecf, 0x0ed8, 0x0ed9,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1267 0x0eda, 0x0edb, 0x0808, 0x0809, 0x080a, 0x0810, 0x0811, 0x0844,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1268 0x0845, 0x0861, 0x0862, 0x0863, 0x086c, 0x0922, 0x0923, 0x092e,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1269 0x092f, 0x0936, 0x0937, 0x09b1, 0x09b2, 0x09b3, 0x09b4, 0x09b5,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1270 0x09b8, 0x09b9, 0x09ba, 0x09bb, 0x09bc, 0x09bd, 0x09be, 0x09bf,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1271 0x0b00, 0x0b15, 0x0b2c, 0x0b2d, 0x0b2e, 0x0b2f, 0x0b36, 0x0bb9,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1272 0x0c28, 0x0c2a, 0x0c2b, 0x0c2c, 0x0c2d, 0x0c2e, 0x0c2f, 0x0c30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1273 0x0c31, 0x0c38, 0x0c60, 0x0c61, 0x0c62, 0x0c63, 0x0c8d, 0x0c8e,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1274 0x0c8f, 0x0c92, 0x0cbe, 0x0cbf, 0x0ce6, 0x0ce7, 0x0d40, 0x0d41,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1275 0x0d57, 0x0d58, 0x0d59, 0x0d5a, 0x0d5b, 0x0d5c, 0x0d5d, 0x0d98,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1276 0x0d99, 0x0d9a, 0x0d9b, 0x0d9c, 0x0d9d, 0x0dad, 0x0dae, 0x0daf,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1277 0x0dc0, 0x0dc1, 0x0dc2, 0x0dc3, 0x0dca, 0x0dcb, 0x0dec, 0x0ded,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1278 0x0dee, 0x0def, 0x1018, 0x1022, 0x1023, 0x1030, 0x1031, 0x1032,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1279 0x1033, 0x1050, 0x1051, 0x105c, 0x1074, 0x1075, 0x1076, 0x1077,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1280 0x1078, 0x1079, 0x107a, 0x107b, 0x10b2, 0x10b3, 0x10b8, 0x10b9,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1281 0x10ba, 0x10bb, 0x10d4, 0x10ea, 0x10eb, 0x10ec, 0x10ed, 0x1404,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1282 0x1405, 0x1406, 0x1407, 0x1410, 0x1411, 0x1412, 0x1413, 0x1414,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1283 0x1415, 0x1416, 0x1417, 0x1418, 0x1419, 0x1466, 0x1467, 0x1468,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1284 0x1469, 0x146a, 0x146b, 0x146c, 0x146d, 0x147e, 0x147f, 0x1488,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1285 0x1489, 0x148a, 0x148b, 0x14b6, 0x14b7, 0x14b8, 0x14b9, 0x14ba,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1286 0x14bb, 0x14bc, 0x14bd, 0x14f0, 0x14f1, 0x14f8, 0x14f9, 0x14fa,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1287 0x14fb, 0x14fc, 0x14fd, 0x14fe, 0x14ff, 0x152a, 0x152b, 0x152c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1288 0x152d, 0x152e, 0x152f, 0x1530, 0x1531, 0x1548, 0x1549, 0x154e,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1289 0x154f, 0x1558, 0x1559, 0x155a, 0x155b, 0x1572, 0x159a, 0x159b,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1290 0x15ac, 0x15ba, 0x15bb, 0x15d0, 0x15d1, 0x15d2, 0x15d3, 0x15d4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1291 0x15d5, 0x181d, 0x181e, 0x181f, 0x1840, 0x1841, 0x1842, 0x1843,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1292 0x1844, 0x1845, 0x1846, 0x1847, 0x1848, 0x1849, 0x1861, 0x1862,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1293 0x1863, 0x1864, 0x1865, 0x1866, 0x1867, 0x1868, 0x1869, 0x186a,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1294 0x186b, 0x186c, 0x186d, 0x186e, 0x191b, 0x191c, 0x191d, 0x191e,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1295 0x191f, 0x1942, 0x1943, 0x1944, 0x1945, 0x1946, 0x1947, 0x1958,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1296 0x1959, 0x19ed, 0x19ee, 0x19ef, 0x19f0, 0x19f1, 0x19f2, 0x19f3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1297 0x19f4, 0x19f5, 0x19f6, 0x19f7, 0x1b0e, 0x1b0f, 0x1b62, 0x1b63,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1298 0x1b64, 0x1b65, 0x1b66, 0x1b67, 0x1b68, 0x1b69, 0x1b6a, 0x1b6b,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1299 0x1b6c, 0x1b6d, 0x1b6e, 0x1b6f, 0x1b82, 0x1ba8, 0x1ba9, 0x1baa,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1300 0x1bab, 0x1bac, 0x1bad, 0x1bae, 0x1baf, 0x1bb0, 0x1bb1, 0x1bb2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1301 0x1bb3, 0x1d80, 0x1d81, 0x1d82, 0x1d83, 0x1d84, 0x1d85, 0x1d86,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1302 0x1d87, 0x1d88, 0x1d89, 0x1d8a, 0x1d8b, 0x1d8c, 0x1d8d, 0x1007,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1303 0x1008, 0x1009, 0x100a, 0x100b, 0x100c, 0x100d, 0x100e, 0x100f,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1304 0x1016, 0x1080, 0x1081, 0x1082, 0x1083, 0x1084, 0x1085, 0x1086,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1305 0x1087, 0x10c0, 0x123a, 0x123b, 0x123c, 0x123d, 0x123e, 0x123f,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1306 0x1240, 0x1241, 0x1242, 0x1243, 0x1350, 0x1352, 0x1353, 0x1358,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1307 0x1359, 0x135a, 0x135b, 0x135c, 0x135d, 0x135e, 0x135f, 0x1360,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1308 0x1361, 0x1602, 0x1603, 0x160c, 0x160d, 0x160e, 0x160f, 0x1620,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1309 0x1621, 0x1622, 0x1623, 0x1624, 0x1625, 0x1626, 0x1627, 0x1628,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1310 0x1629, 0x166e, 0x166f, 0x167c, 0x167d, 0x167e, 0x167f, 0x1770,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1311 0x1771, 0x1852, 0x1853, 0x1872, 0x1873, 0x1874, 0x1875, 0x1876,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1312 0x1877, 0x1878, 0x1879, 0x187a, 0x187b, 0x187c, 0x187d, 0x187e,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1313 0x187f, 0x1918, 0x1919, 0x1926, 0x1927, 0x1970, 0x1971, 0x1972,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1314 0x1973, 0x1974, 0x1975, 0x1976, 0x1977, 0x1978, 0x1979, 0x197a,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1315 0x197b, 0x1aa0, 0x1aa1, 0x1aa2, 0x1aa3, 0x1aa4, 0x1aa5, 0x1aa6,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1316 0x1aa7, 0x1aa8, 0x1aa9, 0x1aaa, 0x1aab, 0x1aac, 0x1aad, 0x1b3c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1317 0x1b3d, 0x1b3e, 0x1b3f, 0x1b50, 0x1b51, 0x1b52, 0x1b53, 0x1b54,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1318 0x1b55, 0x1b56, 0x1b57, 0x1b58, 0x1b59, 0x2032, 0x2033, 0x2034,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1319 0x2035, 0x2036, 0x2037, 0x2038, 0x2039, 0x203a, 0x203b, 0x203c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1320 0x203d, 0x203e, 0x203f, 0x2040, 0x2041, 0x2042, 0x2043, 0x20ba,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1321 0x20bb, 0x20cc, 0x20cd, 0x20ce, 0x20cf, 0x20e0, 0x20e1, 0x20e2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1322 0x20e3, 0x20e4, 0x20e5, 0x20e6, 0x20e7, 0x21aa, 0x21ab, 0x21c0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1323 0x21c1, 0x21c2, 0x21c3, 0x21c4, 0x21c5, 0x21c6, 0x21c7, 0x21c8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1324 0x21c9, 0x21ca, 0x21cb, 0x21cc, 0x21cd, 0x21ce, 0x21cf, 0x21d0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1325 0x21d1, 0x21d2, 0x21d3, 0x2894, 0x2895, 0x2896, 0x2897, 0x2898,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1326 0x2899, 0x289a, 0x289b, 0x289c, 0x289d, 0x289e, 0x289f, 0x28c0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1327 0x28c1, 0x28c2, 0x28c3, 0x28c4, 0x28c5, 0x28c6, 0x28c7, 0x28c8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1328 0x28c9, 0x28ca, 0x28cb, 0x2930, 0x2931, 0x2932, 0x2933, 0x2934,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1329 0x2935, 0x2936, 0x2937, 0x2938, 0x2939, 0x293a, 0x293b, 0x293c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1330 0x293d, 0x293e, 0x293f, 0x2960, 0x2961, 0x2962, 0x2963, 0x2964,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1331 0x2965, 0x2966, 0x2967, 0x2968, 0x2969, 0x296a, 0x296b, 0x2a40,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1332 0x2a41, 0x2a42, 0x2a43, 0x2a44, 0x2a45, 0x2a46, 0x2a47, 0x2a48,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1333 0x2a49, 0x2a4a, 0x2a4b, 0x2a4c, 0x2a4d, 0x2a4e, 0x2a4f, 0x2a50,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1334 0x2a51, 0x2a52, 0x2a53, 0x2ae6, 0x2ae7, 0x2b24, 0x2b25, 0x2b26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1335 0x2b27, 0x2b28, 0x2b29, 0x2b2a, 0x2b2b, 0x2b2c, 0x2b2d, 0x2b2e,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1336 0x2b2f, 0x2b30, 0x2b31, 0x2b32, 0x2b33, 0x2b5a, 0x2b5b, 0x3014,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1337 0x3015, 0x3016, 0x3017, 0x3020, 0x3021, 0x3022, 0x3023, 0x3024,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1338 0x3025, 0x3026, 0x3027, 0x3028, 0x3029, 0x302a, 0x302b, 0x302c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1339 0x302d, 0x302e, 0x302f, 0x3030, 0x3031, 0x3032, 0x3033, 0x3034,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1340 0x3035, 0x3036, 0x3037, 0x3038, 0x3039, 0x30c0, 0x30c1, 0x30de,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1341 0x30df, 0x3218, 0x3219, 0x321a, 0x321b, 0x321c, 0x321d, 0x321e,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1342 0x321f, 0x3220, 0x3221, 0x3222, 0x3223, 0x3224, 0x3225, 0x3226,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1343 0x3227, 0x3228, 0x3229, 0x322a, 0x322b, 0x322c, 0x322d, 0x322e,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1344 0x322f, 0x3230, 0x3231, 0x3232, 0x3233, 0x3234, 0x3235, 0x3378,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1345 0x3379, 0x337a, 0x337b, 0x337c, 0x337d, 0x337e, 0x337f, 0x33c0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1346 0x33c1, 0x33c2, 0x33c3, 0x33c4, 0x33c5, 0x33c6, 0x33c7, 0x33c8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1347 0x33c9, 0x33ca, 0x33cb, 0x33cc, 0x33cd, 0x33ce, 0x33cf, 0x33d0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1348 0x33d1, 0x33d2, 0x33d3, 0x33d4, 0x33d5, 0x33d6, 0x33d7, 0x33d8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1349 0x33d9, 0x3706, 0x3707, 0x3730, 0x3731, 0x3732, 0x3733, 0x3734,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1350 0x3735, 0x3736, 0x3737, 0x3738, 0x3739, 0x373a, 0x373b, 0x373c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1351 0x373d, 0x373e, 0x373f, 0x3740, 0x3741, 0x3742, 0x3743, 0x3744,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1352 0x3745, 0x3746, 0x3747, 0x3748, 0x3749, 0x374a, 0x374b, 0x374c,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1353 0x374d, 0x374e, 0x374f, 0x3b34, 0x3b35, 0x3b36, 0x3b37, 0x3be8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1354 0x3be9, 0x3bea, 0x3beb, 0x3bec, 0x3bed, 0x3bee, 0x3bef, 0x3bf0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1355 0x3bf1, 0x3bf2, 0x3bf3, 0x3bf4, 0x3bf5, 0x3bf6, 0x3bf7, 0x3bf8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1356 0x3bf9, 0x3bfa, 0x3bfb, 0x3bfc, 0x3bfd, 0x3bfe, 0x3bff, 0x2000,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1357 0x2001, 0x2002, 0x2003, 0x2004, 0x2005, 0x2006, 0x2007, 0x2008,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1358 0x2009, 0x200a, 0x200b, 0x200c, 0x200d, 0x202e, 0x202f, 0x2182,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1359 0x2183, 0x21b4, 0x21b5, 0x21b6, 0x21b7, 0x21b8, 0x21b9, 0x21ba,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1360 0x21bb, 0x21bc, 0x21bd, 0x21be, 0x21bf, 0x2460, 0x2461, 0x2462,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1361 0x2463, 0x2464, 0x2465, 0x2466, 0x2467, 0x2468, 0x2469, 0x246a,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1362 0x246b, 0x246c, 0x246d, 0x246e, 0x246f, 0x2470, 0x2471, 0x2472,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1363 0x2473, 0x26a2, 0x26a3, 0x000b,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1364 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
1365
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1366 static const uint8_t table1_mv_bits[1100] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
1367 2, 4, 4, 4, 5, 5, 5, 5,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1368 6, 6, 7, 7, 7, 7, 7, 8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1369 8, 8, 8, 8, 8, 8, 8, 8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1370 8, 8, 8, 8, 8, 8, 8, 8,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1371 8, 9, 9, 9, 9, 9, 9, 9,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1372 9, 9, 9, 9, 9, 9, 9, 9,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1373 9, 9, 9, 9, 9, 10, 10, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1374 10, 10, 10, 10, 10, 10, 10, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1375 10, 10, 10, 10, 10, 10, 10, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1376 10, 10, 10, 10, 10, 10, 10, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1377 10, 10, 10, 10, 10, 10, 10, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1378 10, 10, 10, 10, 10, 10, 10, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1379 10, 10, 10, 10, 10, 10, 10, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1380 10, 10, 10, 10, 10, 10, 10, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1381 10, 10, 10, 11, 11, 11, 11, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1382 11, 11, 11, 11, 11, 11, 11, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1383 11, 11, 11, 11, 11, 11, 11, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1384 11, 11, 11, 11, 11, 11, 11, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1385 11, 11, 11, 11, 11, 11, 11, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1386 11, 11, 11, 11, 11, 11, 11, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1387 11, 11, 11, 11, 11, 11, 11, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1388 11, 11, 11, 11, 11, 11, 11, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1389 11, 11, 11, 11, 11, 11, 11, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1390 11, 11, 11, 11, 11, 11, 11, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1391 11, 11, 11, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1392 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1393 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1394 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1395 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1396 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1397 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1398 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1399 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1400 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1401 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1402 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1403 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1404 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1405 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1406 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1407 12, 12, 12, 12, 12, 12, 12, 12,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1408 12, 12, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1409 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1410 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1411 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1412 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1413 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1414 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1415 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1416 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1417 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1418 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1419 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1420 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1421 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1422 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1423 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1424 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1425 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1426 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1427 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1428 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1429 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1430 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1431 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1432 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1433 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1434 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1435 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1436 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1437 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1438 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1439 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1440 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1441 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1442 13, 13, 13, 13, 13, 13, 13, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1443 13, 13, 13, 13, 13, 13, 13, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1444 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1445 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1446 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1447 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1448 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1449 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1450 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1451 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1452 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1453 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1454 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1455 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1456 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1457 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1458 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1459 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1460 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1461 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1462 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1463 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1464 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1465 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1466 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1467 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1468 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1469 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1470 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1471 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1472 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1473 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1474 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1475 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1476 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1477 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1478 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1479 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1480 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1481 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1482 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1483 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1484 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1485 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1486 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1487 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1488 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1489 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1490 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1491 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1492 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1493 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1494 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1495 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1496 14, 14, 14, 14, 14, 14, 14, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1497 14, 14, 14, 14, 14, 14, 14, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1498 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1499 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1500 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1501 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1502 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1503 15, 15, 15, 15, 15, 15, 15, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1504 15, 15, 15, 4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1505 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
1506
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1507 static const uint8_t table1_mvx[1099] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
1508 32, 31, 32, 31, 33, 32, 33, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1509 31, 34, 30, 32, 32, 34, 35, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1510 34, 33, 29, 30, 30, 32, 31, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1511 33, 35, 35, 33, 31, 29, 29, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1512 34, 30, 31, 28, 36, 30, 34, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1513 32, 37, 32, 32, 25, 27, 39, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1514 32, 32, 38, 35, 36, 32, 37, 61,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1515 26, 32, 34, 35, 3, 35, 27, 28,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1516 29, 34, 28, 37, 31, 36, 32, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1517 31, 30, 29, 39, 33, 29, 33, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1518 25, 25, 29, 33, 31, 31, 31, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1519 32, 30, 32, 32, 41, 39, 33, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1520 32, 28, 34, 36, 38, 24, 60, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1521 23, 28, 32, 33, 59, 32, 40, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1522 5, 34, 32, 38, 32, 30, 43, 4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1523 32, 32, 42, 31, 31, 32, 26, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1524 26, 22, 21, 37, 61, 63, 37, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1525 32, 33, 2, 1, 23, 33, 41, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1526 35, 30, 38, 23, 33, 3, 28, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1527 34, 27, 41, 29, 39, 35, 36, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1528 32, 27, 30, 32, 24, 61, 37, 26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1529 59, 25, 35, 27, 36, 37, 30, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1530 34, 40, 3, 28, 34, 39, 32, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1531 32, 30, 24, 28, 35, 36, 26, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1532 31, 33, 29, 33, 39, 25, 30, 24,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1533 35, 59, 29, 34, 25, 30, 21, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1534 43, 40, 32, 29, 5, 28, 31, 62,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1535 33, 33, 25, 31, 21, 31, 43, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1536 34, 33, 20, 40, 39, 31, 31, 57,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1537 38, 32, 42, 33, 32, 31, 32, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1538 30, 44, 5, 31, 22, 34, 36, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1539 38, 58, 38, 35, 32, 60, 35, 24,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1540 32, 38, 16, 45, 42, 32, 31, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1541 4, 30, 17, 40, 46, 48, 63, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1542 42, 19, 41, 22, 28, 36, 45, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1543 33, 32, 29, 7, 41, 42, 18, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1544 33, 32, 22, 37, 1, 26, 22, 23,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1545 49, 28, 26, 27, 32, 33, 27, 23,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1546 28, 36, 15, 6, 34, 27, 31, 26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1547 23, 2, 33, 32, 34, 41, 28, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1548 41, 0, 36, 38, 34, 31, 47, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1549 17, 31, 39, 33, 37, 51, 30, 47,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1550 32, 50, 32, 19, 63, 30, 25, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1551 33, 62, 24, 31, 27, 30, 37, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1552 45, 32, 39, 20, 46, 47, 35, 19,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1553 34, 1, 49, 21, 21, 14, 51, 26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1554 23, 31, 36, 35, 58, 29, 29, 21,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1555 20, 42, 13, 28, 12, 40, 31, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1556 39, 60, 32, 44, 33, 31, 28, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1557 29, 32, 30, 49, 43, 28, 39, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1558 32, 48, 2, 15, 20, 25, 31, 28,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1559 21, 24, 25, 15, 31, 17, 37, 43,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1560 18, 32, 33, 24, 33, 36, 13, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1561 31, 39, 11, 31, 33, 32, 39, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1562 32, 32, 29, 17, 44, 46, 36, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1563 26, 37, 58, 32, 34, 38, 8, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1564 38, 22, 29, 25, 16, 35, 32, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1565 33, 43, 18, 46, 38, 50, 33, 18,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1566 53, 60, 13, 32, 36, 33, 51, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1567 43, 45, 27, 42, 29, 24, 30, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1568 31, 52, 31, 35, 38, 9, 22, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1569 4, 17, 28, 55, 42, 25, 17, 20,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1570 47, 34, 33, 16, 40, 25, 16, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1571 53, 29, 10, 11, 14, 26, 33, 4,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1572 35, 44, 26, 16, 31, 26, 34, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1573 29, 31, 30, 24, 22, 61, 32, 9,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1574 45, 34, 31, 19, 9, 31, 46, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1575 35, 54, 29, 57, 30, 50, 3, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1576 63, 34, 47, 41, 51, 18, 31, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1577 37, 38, 31, 24, 32, 31, 50, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1578 31, 54, 27, 9, 33, 23, 19, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1579 29, 29, 33, 28, 47, 49, 30, 47,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1580 33, 27, 25, 54, 44, 45, 50, 58,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1581 51, 48, 33, 59, 33, 34, 57, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1582 26, 33, 13, 48, 30, 11, 7, 56,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1583 34, 55, 26, 0, 26, 35, 1, 51,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1584 33, 53, 31, 45, 12, 29, 29, 51,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1585 31, 48, 2, 6, 34, 30, 28, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1586 60, 40, 27, 46, 31, 9, 35, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1587 31, 39, 55, 46, 19, 37, 62, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1588 30, 16, 19, 49, 41, 41, 39, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1589 14, 5, 13, 35, 55, 30, 40, 40,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1590 42, 8, 20, 25, 45, 35, 33, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1591 54, 38, 27, 37, 62, 40, 15, 59,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1592 49, 31, 29, 34, 34, 39, 24, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1593 25, 29, 21, 29, 10, 61, 33, 49,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1594 35, 34, 3, 38, 39, 29, 7, 41,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1595 1, 35, 4, 23, 15, 23, 11, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1596 28, 35, 30, 30, 24, 1, 43, 56,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1597 8, 34, 42, 24, 45, 30, 20, 23,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1598 8, 38, 22, 33, 17, 52, 34, 22,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1599 53, 43, 44, 1, 27, 31, 41, 43,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1600 41, 30, 31, 36, 30, 5, 55, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1601 33, 30, 40, 23, 15, 29, 34, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1602 59, 34, 30, 11, 13, 38, 5, 0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1603 30, 42, 5, 30, 29, 34, 10, 44,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1604 30, 63, 35, 12, 3, 26, 15, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1605 25, 34, 43, 39, 34, 56, 29, 23,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1606 30, 12, 30, 10, 35, 9, 24, 58,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1607 10, 12, 54, 33, 37, 20, 41, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1608 29, 18, 61, 30, 40, 24, 39, 53,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1609 62, 26, 29, 33, 34, 53, 49, 21,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1610 27, 11, 63, 20, 26, 23, 7, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1611 6, 47, 29, 30, 9, 51, 22, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1612 21, 25, 33, 56, 57, 30, 38, 51,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1613 51, 38, 63, 28, 40, 35, 33, 18,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1614 33, 33, 24, 58, 58, 34, 49, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1615 43, 4, 1, 4, 42, 35, 35, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1616 17, 5, 56, 61, 25, 37, 36, 55,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1617 28, 35, 29, 50, 48, 52, 2, 42,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1618 34, 40, 46, 46, 43, 35, 29, 48,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1619 20, 29, 31, 41, 7, 30, 35, 19,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1620 14, 21, 8, 39, 39, 40, 46, 55,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1621 34, 6, 30, 34, 37, 25, 37, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1622 22, 44, 52, 17, 35, 29, 36, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1623 40, 37, 28, 30, 50, 14, 28, 55,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1624 6, 23, 19, 14, 30, 3, 30, 28,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1625 28, 61, 61, 47, 45, 48, 40, 40,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1626 34, 34, 25, 30, 29, 35, 4, 26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1627 53, 50, 26, 41, 27, 59, 27, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1628 39, 3, 50, 43, 47, 23, 33, 55,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1629 35, 21, 23, 35, 61, 33, 46, 52,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1630 35, 34, 24, 30, 43, 16, 37, 21,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1631 2, 24, 45, 34, 30, 55, 55, 1,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1632 29, 29, 26, 28, 25, 31, 36, 22,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1633 17, 30, 52, 2, 44, 44, 57, 26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1634 62, 41, 39, 57, 26, 46, 49, 11,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1635 16, 19, 5, 59, 38, 39, 58, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1636 25, 49, 50, 22, 28, 59, 9, 59,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1637 7, 28, 55, 17, 4, 35, 50, 21,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1638 29, 44, 47, 18, 24, 19, 25, 42,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1639 35, 3, 51, 35, 16, 35, 30, 63,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1640 57, 39, 39, 25, 35, 38, 9, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1641 36, 45, 31, 60, 14, 34, 42, 24,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1642 0, 37, 18, 61, 57, 37, 28, 53,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1643 20, 46, 14, 47, 38, 38, 38, 9,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1644 34, 39, 43, 17, 39, 59, 5, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1645 0, 12, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1646 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
1647
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1648 static const uint8_t table1_mvy[1099] = {
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
1649 32, 32, 31, 31, 32, 33, 31, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1650 33, 32, 32, 30, 34, 31, 32, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1651 33, 30, 32, 33, 31, 35, 34, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1652 34, 31, 33, 29, 29, 31, 33, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1653 30, 30, 35, 32, 32, 34, 34, 28,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1654 25, 32, 36, 27, 32, 32, 32, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1655 39, 3, 32, 30, 31, 26, 31, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1656 32, 38, 29, 29, 32, 34, 31, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1657 34, 35, 33, 33, 28, 33, 1, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1658 27, 29, 30, 31, 28, 29, 37, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1659 31, 33, 35, 27, 36, 37, 25, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1660 61, 35, 4, 5, 32, 33, 36, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1661 23, 30, 28, 34, 31, 32, 32, 39,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1662 32, 34, 21, 39, 32, 59, 32, 28,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1663 32, 36, 60, 33, 24, 36, 32, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1664 41, 2, 32, 38, 26, 22, 33, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1665 31, 32, 32, 30, 31, 32, 29, 3,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1666 40, 38, 32, 32, 33, 26, 31, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1667 28, 38, 34, 31, 3, 31, 35, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1668 27, 35, 33, 28, 29, 27, 29, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1669 43, 29, 37, 63, 31, 33, 34, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1670 31, 30, 37, 30, 35, 35, 26, 41,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1671 37, 31, 33, 28, 26, 30, 42, 24,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1672 7, 27, 33, 29, 36, 28, 34, 57,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1673 23, 41, 36, 23, 35, 34, 25, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1674 25, 33, 25, 25, 29, 24, 33, 39,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1675 33, 33, 0, 37, 31, 36, 21, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1676 61, 24, 35, 61, 31, 5, 31, 59,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1677 39, 21, 32, 30, 34, 22, 40, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1678 29, 16, 31, 5, 62, 2, 20, 39,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1679 39, 32, 33, 1, 31, 24, 36, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1680 36, 32, 28, 26, 6, 31, 38, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1681 58, 35, 32, 33, 33, 17, 43, 26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1682 31, 40, 31, 34, 32, 32, 31, 19,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1683 30, 32, 29, 33, 38, 38, 32, 59,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1684 40, 18, 38, 32, 35, 34, 32, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1685 1, 15, 30, 28, 31, 28, 34, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1686 32, 27, 35, 27, 49, 22, 37, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1687 37, 26, 32, 32, 22, 28, 45, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1688 30, 31, 43, 46, 41, 30, 26, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1689 34, 32, 27, 38, 42, 42, 33, 47,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1690 33, 60, 27, 42, 25, 32, 22, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1691 48, 32, 45, 33, 33, 41, 27, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1692 19, 31, 35, 19, 36, 42, 27, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1693 31, 44, 28, 33, 33, 31, 23, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1694 40, 33, 31, 34, 30, 32, 33, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1695 35, 47, 37, 41, 31, 23, 41, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1696 30, 35, 32, 25, 32, 28, 58, 2,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1697 37, 33, 14, 33, 49, 20, 39, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1698 21, 9, 23, 33, 35, 24, 39, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1699 11, 33, 30, 31, 31, 28, 51, 40,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1700 35, 29, 25, 33, 46, 35, 37, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1701 30, 8, 63, 28, 15, 40, 33, 45,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1702 49, 25, 32, 4, 47, 51, 36, 39,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1703 53, 10, 24, 29, 30, 31, 25, 40,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1704 38, 38, 33, 56, 23, 27, 32, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1705 26, 29, 43, 36, 33, 24, 55, 43,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1706 9, 29, 34, 34, 24, 33, 18, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1707 33, 30, 31, 50, 24, 60, 30, 39,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1708 34, 30, 39, 28, 22, 38, 2, 26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1709 63, 32, 57, 21, 39, 33, 28, 18,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1710 30, 34, 22, 33, 29, 41, 30, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1711 35, 21, 13, 34, 35, 39, 30, 46,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1712 32, 42, 32, 31, 33, 26, 11, 33,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1713 22, 31, 25, 31, 53, 27, 43, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1714 40, 50, 21, 36, 38, 30, 12, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1715 34, 20, 15, 29, 32, 62, 30, 13,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1716 17, 32, 19, 31, 20, 31, 30, 7,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1717 1, 17, 34, 37, 31, 31, 44, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1718 26, 40, 16, 37, 52, 48, 30, 20,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1719 18, 33, 38, 29, 7, 25, 30, 54,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1720 45, 47, 46, 41, 29, 29, 16, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1721 14, 26, 38, 34, 34, 29, 34, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1722 29, 30, 57, 30, 4, 46, 33, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1723 39, 44, 30, 31, 50, 33, 31, 32,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1724 19, 32, 40, 31, 37, 47, 1, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1725 16, 31, 0, 35, 33, 1, 17, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1726 9, 34, 33, 31, 49, 43, 42, 51,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1727 34, 29, 23, 29, 14, 30, 45, 49,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1728 11, 24, 31, 28, 35, 41, 30, 44,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1729 18, 29, 34, 35, 36, 25, 26, 21,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1730 31, 30, 34, 19, 34, 44, 36, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1731 25, 31, 28, 23, 37, 3, 55, 41,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1732 30, 22, 41, 24, 33, 26, 35, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1733 30, 55, 51, 47, 48, 38, 24, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1734 21, 50, 25, 46, 30, 29, 10, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1735 42, 45, 29, 42, 22, 3, 33, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1736 34, 1, 34, 28, 34, 36, 35, 23,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1737 23, 13, 58, 3, 26, 63, 25, 31,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1738 34, 61, 38, 39, 25, 61, 29, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1739 30, 41, 26, 48, 28, 33, 50, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1740 30, 37, 29, 29, 40, 6, 39, 28,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1741 28, 19, 8, 22, 45, 34, 35, 10,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1742 58, 17, 37, 39, 30, 18, 54, 14,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1743 29, 16, 59, 30, 35, 23, 35, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1744 47, 36, 29, 55, 20, 12, 31, 35,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1745 14, 29, 18, 34, 34, 24, 29, 26,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1746 22, 2, 27, 23, 8, 30, 55, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1747 60, 31, 4, 34, 49, 34, 27, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1748 33, 30, 31, 54, 42, 35, 38, 46,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1749 44, 26, 27, 9, 39, 25, 21, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1750 28, 42, 13, 0, 5, 34, 37, 28,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1751 24, 29, 63, 26, 22, 27, 29, 25,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1752 33, 25, 61, 0, 35, 25, 36, 15,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1753 27, 40, 53, 33, 3, 10, 16, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1754 38, 18, 30, 46, 27, 9, 6, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1755 62, 8, 42, 28, 29, 3, 25, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1756 26, 29, 35, 28, 27, 51, 61, 48,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1757 37, 9, 34, 7, 49, 45, 20, 29,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1758 21, 5, 5, 29, 28, 34, 29, 24,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1759 10, 24, 35, 36, 38, 55, 11, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1760 38, 53, 54, 26, 30, 49, 20, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1761 30, 39, 33, 41, 49, 22, 38, 38,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1762 4, 30, 8, 9, 3, 24, 22, 50,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1763 37, 36, 31, 27, 2, 9, 42, 63,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1764 25, 19, 44, 1, 28, 28, 48, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1765 34, 41, 41, 38, 12, 27, 15, 0,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1766 16, 34, 35, 38, 28, 29, 40, 42,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1767 51, 52, 45, 54, 59, 59, 42, 44,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1768 37, 26, 46, 24, 15, 39, 22, 46,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1769 19, 35, 38, 17, 37, 23, 52, 55,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1770 50, 37, 26, 11, 37, 12, 24, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1771 16, 13, 22, 13, 36, 35, 40, 41,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1772 34, 41, 26, 53, 51, 5, 21, 30,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1773 2, 63, 41, 20, 1, 56, 21, 24,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1774 25, 5, 28, 35, 26, 28, 30, 18,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1775 29, 23, 40, 34, 20, 42, 39, 34,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1776 28, 61, 38, 27, 62, 9, 36, 17,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1777 9, 49, 24, 25, 54, 34, 39, 37,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1778 3, 1, 25, 38, 38, 44, 35, 36,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1779 12, 60, 36, 38, 40, 25, 43, 39,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1780 53, 28, 39, 57, 46, 10, 52, 27,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1781 35, 42, 45, 59, 15, 60, 38, 24,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1782 23, 39, 12, 29, 24, 0, 20, 16,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1783 28, 43, 35, 28, 1, 49, 4, 21,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1784 42, 39, 29, 3, 44, 21, 53, 55,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1785 11, 5, 3, 39, 53, 28, 25, 19,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1786 34, 28, 21,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1787 };
986e461dc072 Initial revision
glantau
parents:
diff changeset
1788
500
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1789 /* motion vector table */
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1790 typedef struct MVTable {
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1791 int n;
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1792 const uint16_t *table_mv_code;
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1793 const uint8_t *table_mv_bits;
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1794 const uint8_t *table_mvx;
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1795 const uint8_t *table_mvy;
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1796 uint16_t *table_mv_index; /* encoding: convert mv to index in table_mv */
500
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1797 VLC vlc; /* decoding: vlc */
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1798 } MVTable;
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1799
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
1800 static MVTable mv_tables[2] = {
986e461dc072 Initial revision
glantau
parents:
diff changeset
1801 {
986e461dc072 Initial revision
glantau
parents:
diff changeset
1802 1099,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1803 table0_mv_code,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1804 table0_mv_bits,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1805 table0_mvx,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1806 table0_mvy,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1807 },
986e461dc072 Initial revision
glantau
parents:
diff changeset
1808 {
986e461dc072 Initial revision
glantau
parents:
diff changeset
1809 1099,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1810 table1_mv_code,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1811 table1_mv_bits,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1812 table1_mvx,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1813 table1_mvy,
986e461dc072 Initial revision
glantau
parents:
diff changeset
1814 }
986e461dc072 Initial revision
glantau
parents:
diff changeset
1815 };
307
764aeec1320e msmpeg4v2 decoding (no encoding yet)
michaelni
parents: 0
diff changeset
1816
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1817 static const uint8_t v2_mb_type[8][2] = {
307
764aeec1320e msmpeg4v2 decoding (no encoding yet)
michaelni
parents: 0
diff changeset
1818 {1, 1}, {0 , 2}, {3 , 3}, {9 , 5},
764aeec1320e msmpeg4v2 decoding (no encoding yet)
michaelni
parents: 0
diff changeset
1819 {5, 4}, {0x21, 7}, {0x20, 7}, {0x11, 6},
764aeec1320e msmpeg4v2 decoding (no encoding yet)
michaelni
parents: 0
diff changeset
1820 };
764aeec1320e msmpeg4v2 decoding (no encoding yet)
michaelni
parents: 0
diff changeset
1821
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1822 static const uint8_t v2_intra_cbpc[4][2] = {
307
764aeec1320e msmpeg4v2 decoding (no encoding yet)
michaelni
parents: 0
diff changeset
1823 {1, 1}, {0, 3}, {1, 3}, {1, 2},
764aeec1320e msmpeg4v2 decoding (no encoding yet)
michaelni
parents: 0
diff changeset
1824 };
500
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1825
2753
ba8ecddf5598 adding a few const
michael
parents: 2474
diff changeset
1826 static const uint8_t wmv1_y_dc_scale_table[32]={
500
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1827 // 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1828 0, 8, 8, 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
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1829 };
2753
ba8ecddf5598 adding a few const
michael
parents: 2474
diff changeset
1830 static const uint8_t wmv1_c_dc_scale_table[32]={
500
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1831 // 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1832 0, 8, 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,22
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1833 };
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1834
2753
ba8ecddf5598 adding a few const
michael
parents: 2474
diff changeset
1835 static const uint8_t old_ff_y_dc_scale_table[32]={
500
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1836 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1837 0, 8, 8, 8, 8,10,12,14,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1838 };
2753
ba8ecddf5598 adding a few const
michael
parents: 2474
diff changeset
1839 static const uint8_t old_ff_c_dc_scale_table[32]={
500
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1840 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1841 0, 8, 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,22
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1842 };
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1843
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1844
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1845 #define WMV1_SCANTABLE_COUNT 4
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1846
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1847 static const uint8_t wmv1_scantable00[64]= {
2967
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1848 0x00, 0x08, 0x01, 0x02, 0x09, 0x10, 0x18, 0x11,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1849 0x0A, 0x03, 0x04, 0x0B, 0x12, 0x19, 0x20, 0x28,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1850 0x30, 0x38, 0x29, 0x21, 0x1A, 0x13, 0x0C, 0x05,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1851 0x06, 0x0D, 0x14, 0x1B, 0x22, 0x31, 0x39, 0x3A,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1852 0x32, 0x2A, 0x23, 0x1C, 0x15, 0x0E, 0x07, 0x0F,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1853 0x16, 0x1D, 0x24, 0x2B, 0x33, 0x3B, 0x3C, 0x34,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1854 0x2C, 0x25, 0x1E, 0x17, 0x1F, 0x26, 0x2D, 0x35,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1855 0x3D, 0x3E, 0x36, 0x2E, 0x27, 0x2F, 0x37, 0x3F,
500
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1856 };
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1857 static const uint8_t wmv1_scantable01[64]= {
2967
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1858 0x00, 0x08, 0x01, 0x02, 0x09, 0x10, 0x18, 0x11,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1859 0x0A, 0x03, 0x04, 0x0B, 0x12, 0x19, 0x20, 0x28,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1860 0x21, 0x30, 0x1A, 0x13, 0x0C, 0x05, 0x06, 0x0D,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1861 0x14, 0x1B, 0x22, 0x29, 0x38, 0x31, 0x39, 0x2A,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1862 0x23, 0x1C, 0x15, 0x0E, 0x07, 0x0F, 0x16, 0x1D,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1863 0x24, 0x2B, 0x32, 0x3A, 0x33, 0x3B, 0x2C, 0x25,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1864 0x1E, 0x17, 0x1F, 0x26, 0x2D, 0x34, 0x3C, 0x35,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1865 0x3D, 0x2E, 0x27, 0x2F, 0x36, 0x3E, 0x37, 0x3F,
500
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1866 };
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1867 static const uint8_t wmv1_scantable02[64]= {
2967
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1868 0x00, 0x01, 0x08, 0x02, 0x03, 0x09, 0x10, 0x18,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1869 0x11, 0x0A, 0x04, 0x05, 0x0B, 0x12, 0x19, 0x20,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1870 0x28, 0x30, 0x21, 0x1A, 0x13, 0x0C, 0x06, 0x07,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1871 0x0D, 0x14, 0x1B, 0x22, 0x29, 0x38, 0x31, 0x39,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1872 0x2A, 0x23, 0x1C, 0x15, 0x0E, 0x0F, 0x16, 0x1D,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1873 0x24, 0x2B, 0x32, 0x3A, 0x33, 0x2C, 0x25, 0x1E,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1874 0x17, 0x1F, 0x26, 0x2D, 0x34, 0x3B, 0x3C, 0x35,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1875 0x2E, 0x27, 0x2F, 0x36, 0x3D, 0x3E, 0x37, 0x3F,
500
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1876 };
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1877 static const uint8_t wmv1_scantable03[64]= {
2967
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1878 0x00, 0x08, 0x10, 0x01, 0x18, 0x20, 0x28, 0x09,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1879 0x02, 0x03, 0x0A, 0x11, 0x19, 0x30, 0x38, 0x29,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1880 0x21, 0x1A, 0x12, 0x0B, 0x04, 0x05, 0x0C, 0x13,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1881 0x1B, 0x22, 0x31, 0x39, 0x32, 0x2A, 0x23, 0x1C,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1882 0x14, 0x0D, 0x06, 0x07, 0x0E, 0x15, 0x1D, 0x24,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1883 0x2B, 0x33, 0x3A, 0x3B, 0x34, 0x2C, 0x25, 0x1E,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1884 0x16, 0x0F, 0x17, 0x1F, 0x26, 0x2D, 0x3C, 0x35,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1885 0x2E, 0x27, 0x2F, 0x36, 0x3D, 0x3E, 0x37, 0x3F,
500
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1886 };
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1887
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1888 static const uint8_t *wmv1_scantable[WMV1_SCANTABLE_COUNT+1]={
500
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1889 wmv1_scantable00,
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1890 wmv1_scantable01,
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1891 wmv1_scantable02,
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1892 wmv1_scantable03,
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1893 };
460bc2ba363e wmv1 support
michaelni
parents: 457
diff changeset
1894
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1895 static const uint8_t table_inter_intra[4][2]={
1013
5d4c95f323d0 finetuneing thresholds/factors
michaelni
parents: 936
diff changeset
1896 {0,1} /*Luma-Left Chroma-Left*/,
5d4c95f323d0 finetuneing thresholds/factors
michaelni
parents: 936
diff changeset
1897 {2,2} /*Luma-Top Chroma-Left*/,
5d4c95f323d0 finetuneing thresholds/factors
michaelni
parents: 936
diff changeset
1898 {6,3} /*luma-Left Chroma-Top */,
5d4c95f323d0 finetuneing thresholds/factors
michaelni
parents: 936
diff changeset
1899 {7,3} /*luma-Top Chroma-Top */
519
55b4e2248a45 wmv1 slice_height != mb_height support
michaelni
parents: 500
diff changeset
1900 };
55b4e2248a45 wmv1 slice_height != mb_height support
michaelni
parents: 500
diff changeset
1901
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1902 #define WMV2_INTER_CBP_TABLE_COUNT 4
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1903
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1904 static const uint32_t table_mb_non_intra2[128][2] = {
2967
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1905 {0x0000A7, 14}, {0x01B2B8, 18}, {0x01B28E, 18}, {0x036575, 19},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1906 {0x006CAC, 16}, {0x000A69, 18}, {0x002934, 20}, {0x00526B, 21},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1907 {0x006CA1, 16}, {0x01B2B9, 18}, {0x0029AD, 20}, {0x029353, 24},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1908 {0x006CA7, 16}, {0x006CAB, 16}, {0x01B2BB, 18}, {0x00029B, 16},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1909 {0x00D944, 17}, {0x000A6A, 18}, {0x0149A8, 23}, {0x03651F, 19},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1910 {0x006CAF, 16}, {0x000A4C, 18}, {0x03651E, 19}, {0x000A48, 18},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1911 {0x00299C, 20}, {0x00299F, 20}, {0x029352, 24}, {0x0029AC, 20},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1912 {0x000296, 16}, {0x00D946, 17}, {0x000A68, 18}, {0x000298, 16},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1913 {0x000527, 17}, {0x00D94D, 17}, {0x0014D7, 19}, {0x036574, 19},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1914 {0x000A5C, 18}, {0x01B299, 18}, {0x00299D, 20}, {0x00299E, 20},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1915 {0x000525, 17}, {0x000A66, 18}, {0x00A4D5, 22}, {0x00149B, 19},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1916 {0x000295, 16}, {0x006CAD, 16}, {0x000A49, 18}, {0x000521, 17},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1917 {0x006CAA, 16}, {0x00D945, 17}, {0x01B298, 18}, {0x00052F, 17},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1918 {0x003654, 15}, {0x006CA0, 16}, {0x000532, 17}, {0x000291, 16},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1919 {0x003652, 15}, {0x000520, 17}, {0x000A5D, 18}, {0x000294, 16},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1920 {0x00009B, 11}, {0x0006E2, 12}, {0x000028, 12}, {0x0001B0, 10},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1921 {0x000001, 3}, {0x000010, 8}, {0x00002F, 6}, {0x00004C, 10},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1922 {0x00000D, 4}, {0x000000, 10}, {0x000006, 9}, {0x000134, 12},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1923 {0x00000C, 4}, {0x000007, 10}, {0x000007, 9}, {0x0006E1, 12},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1924 {0x00000E, 5}, {0x0000DA, 9}, {0x000022, 9}, {0x000364, 11},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1925 {0x00000F, 4}, {0x000006, 10}, {0x00000F, 9}, {0x000135, 12},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1926 {0x000014, 5}, {0x0000DD, 9}, {0x000004, 9}, {0x000015, 11},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1927 {0x00001A, 6}, {0x0001B3, 10}, {0x000005, 10}, {0x0006E3, 12},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1928 {0x00000C, 5}, {0x0000B9, 8}, {0x000004, 8}, {0x0000DB, 9},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1929 {0x00000E, 4}, {0x00000B, 10}, {0x000023, 9}, {0x0006CB, 12},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1930 {0x000005, 6}, {0x0001B1, 10}, {0x000001, 10}, {0x0006E0, 12},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1931 {0x000011, 5}, {0x0000DF, 9}, {0x00000E, 9}, {0x000373, 11},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1932 {0x000003, 5}, {0x0000B8, 8}, {0x000006, 8}, {0x000175, 9},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1933 {0x000015, 5}, {0x000174, 9}, {0x000027, 9}, {0x000372, 11},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1934 {0x000010, 5}, {0x0000BB, 8}, {0x000005, 8}, {0x0000DE, 9},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1935 {0x00000F, 5}, {0x000001, 9}, {0x000012, 8}, {0x000004, 10},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1936 {0x000002, 3}, {0x000016, 5}, {0x000009, 4}, {0x000001, 5},
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1937 };
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1938
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1939 static const uint32_t table_mb_non_intra3[128][2] = {
2967
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1940 {0x0002A1, 10}, {0x005740, 15}, {0x01A0BF, 18}, {0x015D19, 17},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1941 {0x001514, 13}, {0x00461E, 15}, {0x015176, 17}, {0x015177, 17},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1942 {0x0011AD, 13}, {0x00682E, 16}, {0x0682F9, 20}, {0x03417D, 19},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1943 {0x001A36, 14}, {0x002A2D, 14}, {0x00D05E, 17}, {0x006824, 16},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1944 {0x001515, 13}, {0x00545C, 15}, {0x0230E9, 18}, {0x011AFA, 17},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1945 {0x0015D7, 13}, {0x005747, 15}, {0x008D79, 16}, {0x006825, 16},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1946 {0x002BA2, 14}, {0x00A8BA, 16}, {0x0235F6, 18}, {0x015D18, 17},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1947 {0x0011AE, 13}, {0x00346F, 15}, {0x008C3B, 16}, {0x00346E, 15},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1948 {0x000D1A, 13}, {0x00461F, 15}, {0x0682F8, 20}, {0x011875, 17},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1949 {0x002BA1, 14}, {0x008D61, 16}, {0x0235F7, 18}, {0x0230E8, 18},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1950 {0x001513, 13}, {0x008D7B, 16}, {0x011AF4, 17}, {0x011AF5, 17},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1951 {0x001185, 13}, {0x0046BF, 15}, {0x008D60, 16}, {0x008D7C, 16},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1952 {0x001512, 13}, {0x00461C, 15}, {0x00AE8D, 16}, {0x008D78, 16},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1953 {0x000D0E, 13}, {0x003413, 15}, {0x0046B1, 15}, {0x003416, 15},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1954 {0x000AEA, 12}, {0x002A2C, 14}, {0x005741, 15}, {0x002A2F, 14},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1955 {0x000158, 9}, {0x0008D2, 12}, {0x00054C, 11}, {0x000686, 12},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1956 {0x000000, 2}, {0x000069, 8}, {0x00006B, 8}, {0x00068C, 12},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1957 {0x000007, 3}, {0x00015E, 9}, {0x0002A3, 10}, {0x000AE9, 12},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1958 {0x000006, 3}, {0x000231, 10}, {0x0002B8, 10}, {0x001A08, 14},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1959 {0x000010, 5}, {0x0001A9, 10}, {0x000342, 11}, {0x000A88, 12},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1960 {0x000004, 4}, {0x0001A2, 10}, {0x0002A4, 10}, {0x001184, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1961 {0x000012, 5}, {0x000232, 10}, {0x0002B2, 10}, {0x000680, 12},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1962 {0x00001B, 6}, {0x00046A, 11}, {0x00068E, 12}, {0x002359, 14},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1963 {0x000016, 5}, {0x00015F, 9}, {0x0002A0, 10}, {0x00054D, 11},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1964 {0x000005, 4}, {0x000233, 10}, {0x0002B9, 10}, {0x0015D6, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1965 {0x000022, 6}, {0x000468, 11}, {0x000683, 12}, {0x001A0A, 14},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1966 {0x000013, 5}, {0x000236, 10}, {0x0002BB, 10}, {0x001186, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1967 {0x000017, 5}, {0x0001AB, 10}, {0x0002A7, 10}, {0x0008D3, 12},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1968 {0x000014, 5}, {0x000237, 10}, {0x000460, 11}, {0x000D0F, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1969 {0x000019, 6}, {0x0001AA, 10}, {0x0002B3, 10}, {0x000681, 12},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1970 {0x000018, 6}, {0x0001A8, 10}, {0x0002A5, 10}, {0x00068F, 12},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1971 {0x000007, 4}, {0x000055, 7}, {0x000047, 7}, {0x0000AD, 8},
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1972 };
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1973
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
1974 static const uint32_t table_mb_non_intra4[128][2] = {
2967
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1975 {0x0000D4, 8}, {0x0021C5, 14}, {0x00F18A, 16}, {0x00D5BC, 16},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1976 {0x000879, 12}, {0x00354D, 14}, {0x010E3F, 17}, {0x010F54, 17},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1977 {0x000866, 12}, {0x00356E, 14}, {0x010F55, 17}, {0x010E3E, 17},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1978 {0x0010CE, 13}, {0x003C84, 14}, {0x00D5BD, 16}, {0x00F18B, 16},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1979 {0x000868, 12}, {0x00438C, 15}, {0x0087AB, 16}, {0x00790B, 15},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1980 {0x000F10, 12}, {0x00433D, 15}, {0x006AD3, 15}, {0x00790A, 15},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1981 {0x001AA7, 13}, {0x0043D4, 15}, {0x00871E, 16}, {0x006ADF, 15},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1982 {0x000D7C, 12}, {0x003C94, 14}, {0x00438D, 15}, {0x006AD2, 15},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1983 {0x0006BC, 11}, {0x0021E9, 14}, {0x006ADA, 15}, {0x006A99, 15},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1984 {0x0010F7, 13}, {0x004389, 15}, {0x006ADB, 15}, {0x0078C4, 15},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1985 {0x000D56, 12}, {0x0035F7, 14}, {0x00438E, 15}, {0x006A98, 15},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1986 {0x000D52, 12}, {0x003C95, 14}, {0x004388, 15}, {0x00433C, 15},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1987 {0x000D54, 12}, {0x001E4B, 13}, {0x003C63, 14}, {0x003C83, 14},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1988 {0x000861, 12}, {0x0021EB, 14}, {0x00356C, 14}, {0x0035F6, 14},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1989 {0x000863, 12}, {0x00219F, 14}, {0x003568, 14}, {0x003C82, 14},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1990 {0x0001AE, 9}, {0x0010C0, 13}, {0x000F11, 12}, {0x001AFA, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1991 {0x000000, 1}, {0x0000F0, 8}, {0x0001AD, 9}, {0x0010C1, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1992 {0x00000A, 4}, {0x0003C5, 10}, {0x000789, 11}, {0x001AB5, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1993 {0x000009, 4}, {0x000435, 11}, {0x000793, 11}, {0x001E40, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1994 {0x00001D, 5}, {0x0003CB, 10}, {0x000878, 12}, {0x001AAF, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1995 {0x00000B, 4}, {0x0003C7, 10}, {0x000791, 11}, {0x001AAB, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1996 {0x00001F, 5}, {0x000436, 11}, {0x0006BF, 11}, {0x000F19, 12},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1997 {0x00003D, 6}, {0x000D51, 12}, {0x0010C4, 13}, {0x0021E8, 14},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1998 {0x000036, 6}, {0x000437, 11}, {0x0006AF, 11}, {0x0010C5, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
1999 {0x00000C, 4}, {0x000432, 11}, {0x000794, 11}, {0x001E30, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
2000 {0x000042, 7}, {0x000870, 12}, {0x000F24, 12}, {0x001E43, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
2001 {0x000020, 6}, {0x00043E, 11}, {0x000795, 11}, {0x001AAA, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
2002 {0x000037, 6}, {0x0006AC, 11}, {0x0006AE, 11}, {0x0010F6, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
2003 {0x000034, 6}, {0x00043A, 11}, {0x000D50, 12}, {0x001AAE, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
2004 {0x000039, 6}, {0x00043F, 11}, {0x00078D, 11}, {0x0010D2, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
2005 {0x000038, 6}, {0x00043B, 11}, {0x0006BD, 11}, {0x0010D3, 13},
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
2006 {0x000011, 5}, {0x0001AC, 9}, {0x0000F3, 8}, {0x000439, 11},
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2007 };
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2008
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2009 static const uint32_t (*wmv2_inter_table[WMV2_INTER_CBP_TABLE_COUNT])[2]={
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2010 table_mb_non_intra2,
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2011 table_mb_non_intra3,
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2012 table_mb_non_intra4,
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2013 table_mb_non_intra,
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2014 };
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2015
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2016 static const uint8_t wmv2_scantableA[64]={
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2017 0x00, 0x01, 0x02, 0x08, 0x03, 0x09, 0x0A, 0x10,
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2018 0x04, 0x0B, 0x11, 0x18, 0x12, 0x0C, 0x05, 0x13,
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2019 0x19, 0x0D, 0x14, 0x1A, 0x1B, 0x06, 0x15, 0x1C,
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2020 0x0E, 0x16, 0x1D, 0x07, 0x1E, 0x0F, 0x17, 0x1F,
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2021 };
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2022
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2023 static const uint8_t wmv2_scantableB[64]={
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2024 0x00, 0x08, 0x01, 0x10, 0x09, 0x18, 0x11, 0x02,
2967
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
2025 0x20, 0x0A, 0x19, 0x28, 0x12, 0x30, 0x21, 0x1A,
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2965
diff changeset
2026 0x38, 0x29, 0x22, 0x03, 0x31, 0x39, 0x0B, 0x2A,
936
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2027 0x13, 0x32, 0x1B, 0x3A, 0x23, 0x2B, 0x33, 0x3B,
caa77cd960c0 qpel encoding
michaelni
parents: 706
diff changeset
2028 };