annotate cookdata.h @ 3214:91f89a395b28 libavcodec

10l
author lorenm
date Wed, 22 Mar 2006 22:08:28 +0000
parents 0b546eab515d
children c8c591fe26f8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2956
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
1 /*
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
2 * COOK compatible decoder data
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
3 * Copyright (c) 2003 Sascha Sommer
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
4 * Copyright (c) 2005 Benjamin Larsson
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
5 *
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
6 * This library is free software; you can redistribute it and/or
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
7 * modify it under the terms of the GNU Lesser General Public
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
8 * License as published by the Free Software Foundation; either
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
9 * version 2 of the License, or (at your option) any later version.
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
10 *
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
11 * This library is distributed in the hope that it will be useful,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
14 * Lesser General Public License for more details.
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
15 *
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
16 * You should have received a copy of the GNU Lesser General Public
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
17 * License along with this library; if not, write to the Free Software
3036
0b546eab515d Update licensing information: The FSF changed postal address.
diego
parents: 2956
diff changeset
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
2956
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
19 *
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
20 */
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
21
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
22 /**
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
23 * @file cookdata.h
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
24 * Cook AKA RealAudio G2 compatible decoderdata
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
25 */
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
26
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
27 /* various data tables */
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
28
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
29 static const int expbits_tab[8] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
30 52,47,43,37,29,22,16,0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
31 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
32
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
33 static const float dither_tab[8] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
34 0.0, 0.0, 0.0, 0.0, 0.0, 0.176777, 0.25, 0.707107,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
35 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
36
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
37 static const float randsign[2] = {1.0, -1.0};
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
38
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
39 static const float quant_centroid_tab[7][14] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
40 { 0.000, 0.392, 0.761, 1.120, 1.477, 1.832, 2.183, 2.541, 2.893, 3.245, 3.598, 3.942, 4.288, 4.724 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
41 { 0.000, 0.544, 1.060, 1.563, 2.068, 2.571, 3.072, 3.562, 4.070, 4.620, 0.000, 0.000, 0.000, 0.000 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
42 { 0.000, 0.746, 1.464, 2.180, 2.882, 3.584, 4.316, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
43 { 0.000, 1.006, 2.000, 2.993, 3.985, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
44 { 0.000, 1.321, 2.703, 3.983, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
45 { 0.000, 1.657, 3.491, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
46 { 0.000, 1.964, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000, 0.000 }
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
47 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
48
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
49 static const int invradix_tab[7] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
50 74899, 104858, 149797, 209716, 262144, 349526, 524288,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
51 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
52
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
53 static const int kmax_tab[7] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
54 13, 9, 6, 4, 3, 2, 1,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
55 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
56
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
57 static const int vd_tab[7] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
58 2, 2, 2, 4, 4, 5, 5,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
59 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
60
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
61 static const int vpr_tab[7] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
62 10, 10, 10, 5, 5, 4, 4,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
63 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
64
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
65
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
66
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
67 /* VLC data */
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
68
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
69 static const int vhsize_tab[7] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
70 191, 97, 48, 607, 246, 230, 32,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
71 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
72
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
73 static const int vhvlcsize_tab[7] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
74 8, 7, 7, 10, 9, 9, 6,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
75 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
76
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
77 static const uint8_t envelope_quant_index_huffbits[13][24] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
78 { 4, 6, 5, 5, 4, 4, 4, 4, 4, 4, 3, 3, 3, 4, 5, 7, 8, 9, 11, 11, 12, 12, 12, 12 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
79 { 10, 8, 6, 5, 5, 4, 3, 3, 3, 3, 3, 3, 4, 5, 7, 9, 11, 12, 13, 15, 15, 15, 16, 16 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
80 { 12, 10, 8, 6, 5, 4, 4, 4, 4, 4, 4, 3, 3, 3, 4, 4, 5, 5, 7, 9, 11, 13, 14, 14 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
81 { 13, 10, 9, 9, 7, 7, 5, 5, 4, 3, 3, 3, 3, 3, 4, 4, 4, 5, 7, 9, 11, 13, 13, 13 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
82 { 12, 13, 10, 8, 6, 6, 5, 5, 4, 4, 3, 3, 3, 3, 3, 4, 5, 5, 6, 7, 9, 11, 14, 14 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
83 { 12, 11, 9, 8, 8, 7, 5, 4, 4, 3, 3, 3, 3, 3, 4, 4, 5, 5, 7, 8, 10, 13, 14, 14 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
84 { 15, 16, 15, 12, 10, 8, 6, 5, 4, 3, 3, 3, 2, 3, 4, 5, 5, 7, 9, 11, 13, 16, 16, 16 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
85 { 14, 14, 11, 10, 9, 7, 7, 5, 5, 4, 3, 3, 2, 3, 3, 4, 5, 7, 9, 9, 12, 14, 15, 15 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
86 { 9, 9, 9, 8, 7, 6, 5, 4, 3, 3, 3, 3, 3, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 13 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
87 { 14, 12, 10, 8, 6, 6, 5, 4, 3, 3, 3, 3, 3, 3, 4, 5, 6, 8, 8, 9, 11, 14, 14, 14 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
88 { 13, 10, 9, 8, 6, 6, 5, 4, 4, 4, 3, 3, 2, 3, 4, 5, 6, 8, 9, 9, 11, 12, 14, 14 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
89 { 16, 13, 12, 11, 9, 6, 5, 5, 4, 4, 4, 3, 2, 3, 3, 4, 5, 7, 8, 10, 14, 16, 16, 16 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
90 { 13, 14, 14, 14, 10, 8, 7, 7, 5, 4, 3, 3, 2, 3, 3, 4, 5, 5, 7, 9, 11, 14, 14, 14 },
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
91 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
92
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
93 static const uint16_t envelope_quant_index_huffcodes[13][24] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
94 {0x0006, 0x003e, 0x001c, 0x001d, 0x0007, 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x0000, 0x0001,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
95 0x0002, 0x000d, 0x001e, 0x007e, 0x00fe, 0x01fe, 0x07fc, 0x07fd, 0x0ffc, 0x0ffd, 0x0ffe, 0x0fff},
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
96 {0x03fe, 0x00fe, 0x003e, 0x001c, 0x001d, 0x000c, 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
97 0x000d, 0x001e, 0x007e, 0x01fe, 0x07fe, 0x0ffe, 0x1ffe, 0x7ffc, 0x7ffd, 0x7ffe, 0xfffe, 0xffff},
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
98 {0x0ffe, 0x03fe, 0x00fe, 0x003e, 0x001c, 0x0006, 0x0007, 0x0008, 0x0009, 0x000a, 0x000b, 0x0000,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
99 0x0001, 0x0002, 0x000c, 0x000d, 0x001d, 0x001e, 0x007e, 0x01fe, 0x07fe, 0x1ffe, 0x3ffe, 0x3fff},
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
100 {0x1ffc, 0x03fe, 0x01fc, 0x01fd, 0x007c, 0x007d, 0x001c, 0x001d, 0x000a, 0x0000, 0x0001, 0x0002,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
101 0x0003, 0x0004, 0x000b, 0x000c, 0x000d, 0x001e, 0x007e, 0x01fe, 0x07fe, 0x1ffd, 0x1ffe, 0x1fff},
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
102 {0x0ffe, 0x1ffe, 0x03fe, 0x00fe, 0x003c, 0x003d, 0x001a, 0x001b, 0x000a, 0x000b, 0x0000, 0x0001,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
103 0x0002, 0x0003, 0x0004, 0x000c, 0x001c, 0x001d, 0x003e, 0x007e, 0x01fe, 0x07fe, 0x3ffe, 0x3fff},
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
104 {0x0ffe, 0x07fe, 0x01fe, 0x00fc, 0x00fd, 0x007c, 0x001c, 0x000a, 0x000b, 0x0000, 0x0001, 0x0002,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
105 0x0003, 0x0004, 0x000c, 0x000d, 0x001d, 0x001e, 0x007d, 0x00fe, 0x03fe, 0x1ffe, 0x3ffe, 0x3fff},
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
106 {0x7ffc, 0xfffc, 0x7ffd, 0x0ffe, 0x03fe, 0x00fe, 0x003e, 0x001c, 0x000c, 0x0002, 0x0003, 0x0004,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
107 0x0000, 0x0005, 0x000d, 0x001d, 0x001e, 0x007e, 0x01fe, 0x07fe, 0x1ffe, 0xfffd, 0xfffe, 0xffff},
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
108 {0x3ffc, 0x3ffd, 0x07fe, 0x03fe, 0x01fc, 0x007c, 0x007d, 0x001c, 0x001d, 0x000c, 0x0002, 0x0003,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
109 0x0000, 0x0004, 0x0005, 0x000d, 0x001e, 0x007e, 0x01fd, 0x01fe, 0x0ffe, 0x3ffe, 0x7ffe, 0x7fff},
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
110 {0x01fc, 0x01fd, 0x01fe, 0x00fc, 0x007c, 0x003c, 0x001c, 0x000c, 0x0000, 0x0001, 0x0002, 0x0003,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
111 0x0004, 0x0005, 0x000d, 0x001d, 0x003d, 0x007d, 0x00fd, 0x03fe, 0x07fe, 0x0ffe, 0x1ffe, 0x1fff},
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
112 {0x3ffc, 0x0ffe, 0x03fe, 0x00fc, 0x003c, 0x003d, 0x001c, 0x000c, 0x0000, 0x0001, 0x0002, 0x0003,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
113 0x0004, 0x0005, 0x000d, 0x001d, 0x003e, 0x00fd, 0x00fe, 0x01fe, 0x07fe, 0x3ffd, 0x3ffe, 0x3fff},
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
114 {0x1ffe, 0x03fe, 0x01fc, 0x00fc, 0x003c, 0x003d, 0x001c, 0x000a, 0x000b, 0x000c, 0x0002, 0x0003,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
115 0x0000, 0x0004, 0x000d, 0x001d, 0x003e, 0x00fd, 0x01fd, 0x01fe, 0x07fe, 0x0ffe, 0x3ffe, 0x3fff},
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
116 {0xfffc, 0x1ffe, 0x0ffe, 0x07fe, 0x01fe, 0x003e, 0x001c, 0x001d, 0x000a, 0x000b, 0x000c, 0x0002,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
117 0x0000, 0x0003, 0x0004, 0x000d, 0x001e, 0x007e, 0x00fe, 0x03fe, 0x3ffe, 0xfffd, 0xfffe, 0xffff},
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
118 {0x1ffc, 0x3ffa, 0x3ffb, 0x3ffc, 0x03fe, 0x00fe, 0x007c, 0x007d, 0x001c, 0x000c, 0x0002, 0x0003,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
119 0x0000, 0x0004, 0x0005, 0x000d, 0x001d, 0x001e, 0x007e, 0x01fe, 0x07fe, 0x3ffd, 0x3ffe, 0x3fff},
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
120 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
121
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
122
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
123 static const uint8_t cvh_huffbits0[191] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
124 1, 4, 6, 6, 7, 7, 8, 8, 8, 9, 9, 10,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
125 11, 11, 4, 5, 6, 7, 7, 8, 8, 9, 9, 9,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
126 9, 10, 11, 11, 5, 6, 7, 8, 8, 9, 9, 9,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
127 9, 10, 10, 10, 11, 12, 6, 7, 8, 9, 9, 9,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
128 9, 10, 10, 10, 10, 11, 12, 13, 7, 7, 8, 9,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
129 9, 9, 10, 10, 10, 10, 11, 11, 12, 13, 8, 8,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
130 9, 9, 9, 10, 10, 10, 10, 11, 11, 12, 13, 14,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
131 8, 8, 9, 9, 10, 10, 11, 11, 11, 12, 12, 13,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
132 13, 15, 8, 8, 9, 9, 10, 10, 11, 11, 11, 12,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
133 12, 13, 14, 15, 9, 9, 9, 10, 10, 10, 11, 11,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
134 12, 13, 12, 14, 15, 16, 9, 9, 10, 10, 10, 10,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
135 11, 12, 12, 14, 14, 16, 16, 0, 9, 9, 10, 10,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
136 11, 11, 12, 13, 13, 14, 14, 15, 0, 0, 10, 10,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
137 10, 11, 11, 12, 12, 13, 15, 15, 16, 0, 0, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
138 11, 11, 11, 12, 13, 13, 13, 15, 16, 16, 0, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
139 0, 0, 11, 11, 12, 13, 13, 14, 15, 16, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
140 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
141
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
142 static const uint16_t cvh_huffcodes0[191] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
143 0x0000,0x0008,0x002c,0x002d,0x0062,0x0063,0x00d4,0x00d5,0x00d6,0x01c6,0x01c7,0x03ca,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
144 0x07d6,0x07d7,0x0009,0x0014,0x002e,0x0064,0x0065,0x00d7,0x00d8,0x01c8,0x01c9,0x01ca,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
145 0x01cb,0x03cb,0x07d8,0x07d9,0x0015,0x002f,0x0066,0x00d9,0x00da,0x01cc,0x01cd,0x01ce,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
146 0x01cf,0x03cc,0x03cd,0x03ce,0x07da,0x0fe4,0x0030,0x0067,0x00db,0x01d0,0x01d1,0x01d2,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
147 0x01d3,0x03cf,0x03d0,0x03d1,0x03d2,0x07db,0x0fe5,0x1fea,0x0068,0x0069,0x00dc,0x01d4,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
148 0x01d5,0x01d6,0x03d3,0x03d4,0x03d5,0x03d6,0x07dc,0x07dd,0x0fe6,0x1feb,0x00dd,0x00de,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
149 0x01d7,0x01d8,0x01d9,0x03d7,0x03d8,0x03d9,0x03da,0x07de,0x07df,0x0fe7,0x1fec,0x3ff2,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
150 0x00df,0x00e0,0x01da,0x01db,0x03db,0x03dc,0x07e0,0x07e1,0x07e2,0x0fe8,0x0fe9,0x1fed,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
151 0x1fee,0x7ff4,0x00e1,0x00e2,0x01dc,0x01dd,0x03dd,0x03de,0x07e3,0x07e4,0x07e5,0x0fea,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
152 0x0feb,0x1fef,0x3ff3,0x7ff5,0x01de,0x01df,0x01e0,0x03df,0x03e0,0x03e1,0x07e6,0x07e7,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
153 0x0fec,0x1ff0,0x0fed,0x3ff4,0x7ff6,0xfff8,0x01e1,0x01e2,0x03e2,0x03e3,0x03e4,0x03e5,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
154 0x07e8,0x0fee,0x0fef,0x3ff5,0x3ff6,0xfff9,0xfffa,0xfffa,0x01e3,0x01e4,0x03e6,0x03e7,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
155 0x07e9,0x07ea,0x0ff0,0x1ff1,0x1ff2,0x3ff7,0x3ff8,0x7ff7,0x7ff7,0xfffa,0x03e8,0x03e9,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
156 0x03ea,0x07eb,0x07ec,0x0ff1,0x0ff2,0x1ff3,0x7ff8,0x7ff9,0xfffb,0x3ff8,0x7ff7,0x7ff7,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
157 0x07ed,0x07ee,0x07ef,0x0ff3,0x1ff4,0x1ff5,0x1ff6,0x7ffa,0xfffc,0xfffd,0xfffb,0xfffb,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
158 0x3ff8,0x7ff7,0x07f0,0x07f1,0x0ff4,0x1ff7,0x1ff8,0x3ff9,0x7ffb,0xfffe,0xffff,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
159 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
160
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
161
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
162 static const uint8_t cvh_huffbits1[97] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
163 1, 4, 5, 6, 7, 8, 8, 9, 10, 10, 4, 5,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
164 6, 7, 7, 8, 8, 9, 9, 11, 5, 5, 6, 7,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
165 8, 8, 9, 9, 10, 11, 6, 6, 7, 8, 8, 9,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
166 9, 10, 11, 12, 7, 7, 8, 8, 9, 9, 10, 11,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
167 11, 13, 8, 8, 8, 9, 9, 10, 10, 11, 12, 14,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
168 8, 8, 8, 9, 10, 11, 11, 12, 13, 15, 9, 9,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
169 9, 10, 11, 12, 12, 14, 14, 0, 9, 9, 9, 10,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
170 11, 12, 14, 16, 0, 0, 10, 10, 11, 12, 13, 14,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
171 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
172 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
173
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
174
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
175 static const uint16_t cvh_huffcodes1[97] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
176 0x0000,0x0008,0x0014,0x0030,0x006a,0x00e2,0x00e3,0x01e4,0x03ec,0x03ed,0x0009,0x0015,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
177 0x0031,0x006b,0x006c,0x00e4,0x00e5,0x01e5,0x01e6,0x07f0,0x0016,0x0017,0x0032,0x006d,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
178 0x00e6,0x00e7,0x01e7,0x01e8,0x03ee,0x07f1,0x0033,0x0034,0x006e,0x00e8,0x00e9,0x01e9,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
179 0x01ea,0x03ef,0x07f2,0x0ff6,0x006f,0x0070,0x00ea,0x00eb,0x01eb,0x01ec,0x03f0,0x07f3,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
180 0x07f4,0x1ffa,0x00ec,0x00ed,0x00ee,0x01ed,0x01ee,0x03f1,0x03f2,0x07f5,0x0ff7,0x3ffa,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
181 0x00ef,0x00f0,0x00f1,0x01ef,0x03f3,0x07f6,0x07f7,0x0ff8,0x1ffb,0x7ffe,0x01f0,0x01f1,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
182 0x01f2,0x03f4,0x07f8,0x0ff9,0x0ffa,0x3ffb,0x3ffc,0x0000,0x01f3,0x01f4,0x01f5,0x03f5,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
183 0x07f9,0x0ffb,0x3ffd,0xfffe,0x0000,0x0000,0x03f6,0x03f7,0x07fa,0x0ffc,0x1ffc,0x3ffe,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
184 0xffff,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
185 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
186
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
187 static const uint8_t cvh_huffbits2[48] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
188 1, 4, 5, 7, 8, 9, 10, 3, 4, 5, 7, 8,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
189 9, 10, 5, 5, 6, 7, 8, 10, 10, 7, 6, 7,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
190 8, 9, 10, 12, 8, 8, 8, 9, 10, 12, 14, 8,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
191 9, 9, 10, 11, 15, 16, 9, 10, 11, 12, 13, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
192 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
193
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
194 static const uint16_t cvh_huffcodes2[48] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
195 0x0000,0x000a,0x0018,0x0074,0x00f2,0x01f4,0x03f6,0x0004,0x000b,0x0019,0x0075,0x00f3,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
196 0x01f5,0x03f7,0x001a,0x001b,0x0038,0x0076,0x00f4,0x03f8,0x03f9,0x0077,0x0039,0x0078,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
197 0x00f5,0x01f6,0x03fa,0x0ffc,0x00f6,0x00f7,0x00f8,0x01f7,0x03fb,0x0ffd,0x3ffe,0x00f9,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
198 0x01f8,0x01f9,0x03fc,0x07fc,0x7ffe,0xfffe,0x01fa,0x03fd,0x07fd,0x0ffe,0x1ffe,0xffff,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
199 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
200
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
201 static const uint8_t cvh_huffbits3[607] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
202 2, 4, 6, 8, 10, 5, 5, 6, 8, 10, 7, 8,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
203 8, 10, 12, 9, 9, 10, 12, 15, 10, 11, 13, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
204 16, 5, 6, 8, 10, 11, 5, 6, 8, 10, 12, 7,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
205 7, 8, 10, 13, 9, 9, 10, 12, 15, 12, 11, 13,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
206 16, 16, 7, 9, 10, 12, 15, 7, 8, 10, 12, 13,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
207 9, 9, 11, 13, 16, 11, 11, 12, 14, 16, 12, 12,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
208 14, 16, 0, 9, 11, 12, 16, 16, 9, 10, 13, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
209 16, 10, 11, 12, 16, 16, 13, 13, 16, 16, 16, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
210 16, 15, 16, 0, 11, 13, 16, 16, 15, 11, 13, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
211 16, 16, 13, 13, 16, 16, 0, 14, 16, 16, 16, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
212 16, 16, 0, 0, 0, 4, 6, 8, 10, 13, 6, 6,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
213 8, 10, 13, 9, 8, 10, 12, 16, 10, 10, 11, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
214 16, 13, 12, 14, 16, 16, 5, 6, 8, 11, 13, 6,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
215 6, 8, 10, 13, 8, 8, 9, 11, 14, 10, 10, 12,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
216 12, 16, 13, 12, 13, 15, 16, 7, 8, 9, 12, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
217 7, 8, 10, 12, 14, 9, 9, 10, 13, 16, 11, 10,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
218 12, 15, 16, 13, 13, 16, 16, 0, 9, 11, 13, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
219 16, 9, 10, 12, 15, 16, 10, 11, 13, 16, 16, 13,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
220 12, 16, 16, 16, 16, 16, 16, 16, 0, 11, 13, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
221 16, 16, 11, 13, 16, 16, 16, 12, 13, 15, 16, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
222 16, 16, 16, 16, 0, 16, 16, 0, 0, 0, 6, 8,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
223 11, 13, 16, 8, 8, 10, 12, 16, 11, 10, 11, 13,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
224 16, 12, 13, 13, 15, 16, 16, 16, 14, 16, 0, 6,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
225 8, 10, 13, 16, 8, 8, 10, 12, 16, 10, 10, 11,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
226 13, 16, 13, 12, 13, 16, 16, 14, 14, 14, 16, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
227 8, 9, 11, 13, 16, 8, 9, 11, 16, 14, 10, 10,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
228 12, 15, 16, 12, 12, 13, 16, 16, 15, 16, 16, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
229 0, 10, 12, 15, 16, 16, 10, 12, 12, 14, 16, 12,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
230 12, 13, 16, 16, 14, 15, 16, 16, 0, 16, 16, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
231 0, 0, 12, 15, 15, 16, 0, 13, 13, 16, 16, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
232 14, 16, 16, 16, 0, 16, 16, 16, 0, 0, 0, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
233 0, 0, 0, 8, 10, 13, 15, 16, 10, 11, 13, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
234 16, 13, 13, 14, 16, 16, 16, 16, 16, 16, 16, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
235 16, 16, 16, 0, 8, 10, 11, 15, 16, 9, 10, 12,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
236 16, 16, 12, 12, 15, 16, 16, 16, 14, 16, 16, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
237 16, 16, 16, 16, 0, 9, 11, 14, 16, 16, 10, 11,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
238 13, 16, 16, 14, 13, 14, 16, 16, 16, 15, 15, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
239 0, 16, 16, 16, 0, 0, 11, 13, 16, 16, 16, 11,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
240 13, 15, 16, 16, 13, 16, 16, 16, 0, 16, 16, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
241 16, 0, 16, 16, 0, 0, 0, 15, 16, 16, 16, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
242 14, 16, 16, 16, 0, 16, 16, 16, 0, 0, 16, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
243 0, 0, 0, 0, 0, 0, 0, 0, 9, 13, 16, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
244 16, 11, 13, 16, 16, 16, 14, 15, 16, 16, 0, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
245 16, 16, 16, 0, 16, 16, 0, 0, 0, 9, 13, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
246 15, 16, 12, 13, 14, 16, 16, 16, 15, 16, 16, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
247 16, 16, 16, 16, 0, 16, 16, 0, 0, 0, 11, 13,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
248 15, 16, 0, 12, 14, 16, 16, 0, 16, 16, 16, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
249 0, 16, 16, 16, 0, 0, 0, 0, 0, 0, 0, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
250 16, 16, 16, 0, 16, 16, 16, 16, 0, 16, 16, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
251 0, 0, 16, 16, 0, 0, 0, 0, 0, 0, 0, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
252 16, 16, 0, 0, 0, 16, 16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
253 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
254
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
255
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
256 static const uint16_t cvh_huffcodes3[607] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
257 0x0000,0x0004,0x0022,0x00c6,0x03b0,0x000c,0x000d,0x0023,0x00c7,0x03b1,0x005c,0x00c8,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
258 0x00c9,0x03b2,0x0fa4,0x01c2,0x01c3,0x03b3,0x0fa5,0x7f72,0x03b4,0x07b2,0x1f9a,0xff24,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
259 0xff25,0x000e,0x0024,0x00ca,0x03b5,0x07b3,0x000f,0x0025,0x00cb,0x03b6,0x0fa6,0x005d,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
260 0x005e,0x00cc,0x03b7,0x1f9b,0x01c4,0x01c5,0x03b8,0x0fa7,0x7f73,0x0fa8,0x07b4,0x1f9c,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
261 0xff26,0xff27,0x005f,0x01c6,0x03b9,0x0fa9,0x7f74,0x0060,0x00cd,0x03ba,0x0faa,0x1f9d,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
262 0x01c7,0x01c8,0x07b5,0x1f9e,0xff28,0x07b6,0x07b7,0x0fab,0x3fa2,0xff29,0x0fac,0x0fad,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
263 0x3fa3,0xff2a,0x3fa2,0x01c9,0x07b8,0x0fae,0xff2b,0xff2c,0x01ca,0x03bb,0x1f9f,0x7f75,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
264 0xff2d,0x03bc,0x07b9,0x0faf,0xff2e,0xff2f,0x1fa0,0x1fa1,0xff30,0xff31,0xff32,0xff33,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
265 0xff34,0x7f76,0xff35,0xff31,0x07ba,0x1fa2,0xff36,0xff37,0x7f77,0x07bb,0x1fa3,0x7f78,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
266 0xff38,0xff39,0x1fa4,0x1fa5,0xff3a,0xff3b,0xff2e,0x3fa4,0xff3c,0xff3d,0xff3e,0xff31,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
267 0xff3f,0xff40,0xff30,0xff31,0xff31,0x0005,0x0026,0x00ce,0x03bd,0x1fa6,0x0027,0x0028,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
268 0x00cf,0x03be,0x1fa7,0x01cb,0x00d0,0x03bf,0x0fb0,0xff41,0x03c0,0x03c1,0x07bc,0x7f79,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
269 0xff42,0x1fa8,0x0fb1,0x3fa5,0xff43,0xff44,0x0010,0x0029,0x00d1,0x07bd,0x1fa9,0x002a,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
270 0x002b,0x00d2,0x03c2,0x1faa,0x00d3,0x00d4,0x01cc,0x07be,0x3fa6,0x03c3,0x03c4,0x0fb2,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
271 0x0fb3,0xff45,0x1fab,0x0fb4,0x1fac,0x7f7a,0xff46,0x0061,0x00d5,0x01cd,0x0fb5,0xff47,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
272 0x0062,0x00d6,0x03c5,0x0fb6,0x3fa7,0x01ce,0x01cf,0x03c6,0x1fad,0xff48,0x07bf,0x03c7,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
273 0x0fb7,0x7f7b,0xff49,0x1fae,0x1faf,0xff4a,0xff4b,0x7f7b,0x01d0,0x07c0,0x1fb0,0xff4c,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
274 0xff4d,0x01d1,0x03c8,0x0fb8,0x7f7c,0xff4e,0x03c9,0x07c1,0x1fb1,0xff4f,0xff50,0x1fb2,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
275 0x0fb9,0xff51,0xff52,0xff53,0xff54,0xff55,0xff56,0xff57,0xff52,0x07c2,0x1fb3,0xff58,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
276 0xff59,0xff5a,0x07c3,0x1fb4,0xff5b,0xff5c,0xff5d,0x0fba,0x1fb5,0x7f7d,0xff5e,0xff4f,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
277 0xff5f,0xff60,0xff61,0xff62,0xff52,0xff63,0xff64,0xff51,0xff52,0xff52,0x002c,0x00d7,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
278 0x07c4,0x1fb6,0xff65,0x00d8,0x00d9,0x03ca,0x0fbb,0xff66,0x07c5,0x03cb,0x07c6,0x1fb7,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
279 0xff67,0x0fbc,0x1fb8,0x1fb9,0x7f7e,0xff68,0xff69,0xff6a,0x3fa8,0xff6b,0x7f7e,0x002d,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
280 0x00da,0x03cc,0x1fba,0xff6c,0x00db,0x00dc,0x03cd,0x0fbd,0xff6d,0x03ce,0x03cf,0x07c7,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
281 0x1fbb,0xff6e,0x1fbc,0x0fbe,0x1fbd,0xff6f,0xff70,0x3fa9,0x3faa,0x3fab,0xff71,0xff6f,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
282 0x00dd,0x01d2,0x07c8,0x1fbe,0xff72,0x00de,0x01d3,0x07c9,0xff73,0x3fac,0x03d0,0x03d1,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
283 0x0fbf,0x7f7f,0xff74,0x0fc0,0x0fc1,0x1fbf,0xff75,0xff76,0x7f80,0xff77,0xff78,0xff79,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
284 0xff75,0x03d2,0x0fc2,0x7f81,0xff7a,0xff7b,0x03d3,0x0fc3,0x0fc4,0x3fad,0xff7c,0x0fc5,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
285 0x0fc6,0x1fc0,0xff7d,0xff7e,0x3fae,0x7f82,0xff7f,0xff80,0xff80,0xff81,0xff82,0xff83,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
286 0xff80,0xff80,0x0fc7,0x7f83,0x7f84,0xff84,0xff7a,0x1fc1,0x1fc2,0xff85,0xff86,0x3fad,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
287 0x3faf,0xff87,0xff88,0xff89,0xff7d,0xff8a,0xff8b,0xff8c,0xff80,0xff80,0x3fae,0x7f82,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
288 0xff7f,0xff80,0xff80,0x00df,0x03d4,0x1fc3,0x7f85,0xff8d,0x03d5,0x07ca,0x1fc4,0xff8e,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
289 0xff8f,0x1fc5,0x1fc6,0x3fb0,0xff90,0xff91,0xff92,0xff93,0xff94,0xff95,0xff96,0xff97,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
290 0xff98,0xff99,0xff9a,0xff95,0x00e0,0x03d6,0x07cb,0x7f86,0xff9b,0x01d4,0x03d7,0x0fc8,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
291 0xff9c,0xff9d,0x0fc9,0x0fca,0x7f87,0xff9e,0xff9f,0xffa0,0x3fb1,0xffa1,0xffa2,0xffa3,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
292 0xffa4,0xffa5,0xffa6,0xffa7,0xffa2,0x01d5,0x07cc,0x3fb2,0xffa8,0xffa9,0x03d8,0x07cd,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
293 0x1fc7,0xffaa,0xffab,0x3fb3,0x1fc8,0x3fb4,0xffac,0xffad,0xffae,0x7f88,0x7f89,0xffaf,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
294 0xffaf,0xffb0,0xffb1,0xffb2,0xffaf,0xffaf,0x07ce,0x1fc9,0xffb3,0xffb4,0xffb5,0x07cf,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
295 0x1fca,0x7f8a,0xffb6,0xffb7,0x1fcb,0xffb8,0xffb9,0xffba,0xffba,0xffbb,0xffbc,0xffbd,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
296 0xffbe,0xffbe,0xffbf,0xffc0,0xffbd,0xffbe,0xffbe,0x7f8b,0xffc1,0xffc2,0xffc3,0xffb4,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
297 0x3fb5,0xffc4,0xffc5,0xffc6,0xffb6,0xffc7,0xffc8,0xffc9,0xffba,0xffba,0xffca,0xffcb,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
298 0xffbd,0xffbe,0xffbe,0xffbb,0xffbc,0xffbd,0xffbe,0xffbe,0x01d6,0x1fcc,0xffcc,0xffcd,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
299 0xffce,0x07d0,0x1fcd,0xffcf,0xffd0,0xffd1,0x3fb6,0x7f8c,0xffd2,0xffd3,0xff90,0x7f8d,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
300 0xffd4,0xffd5,0xffd6,0xff95,0xffd7,0xffd8,0xff94,0xff95,0xff95,0x01d7,0x1fce,0x7f8e,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
301 0x7f8f,0xffd9,0x0fcb,0x1fcf,0x3fb7,0xffda,0xffdb,0xffdc,0x7f90,0xffdd,0xffde,0xff9e,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
302 0xffdf,0xffe0,0xffe1,0xffe2,0xffa2,0xffe3,0xffe4,0xffa1,0xffa2,0xffa2,0x07d1,0x1fd0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
303 0x7f91,0xffe5,0xffa8,0x0fcc,0x3fb8,0xffe6,0xffe7,0xffaa,0xffe8,0xffe9,0xffea,0xffeb,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
304 0xffac,0xffec,0xffed,0xffee,0xffaf,0xffaf,0xffae,0x7f88,0x7f89,0xffaf,0xffaf,0xffef,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
305 0xfff0,0xfff1,0xfff2,0xffb4,0xfff3,0xfff4,0xfff5,0xfff6,0xffb6,0xfff7,0xfff8,0xfff9,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
306 0xffba,0xffba,0xfffa,0xfffb,0xffbd,0xffbe,0xffbe,0xffbb,0xffbc,0xffbd,0xffbe,0xffbe,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
307 0xfffc,0xfffd,0xffb3,0xffb4,0xffb4,0xfffe,0xffff,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
308 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
309
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
310 static const uint8_t cvh_huffbits4[246] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
311 2, 4, 7, 10, 4, 5, 7, 10, 7, 8, 10, 14,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
312 11, 11, 15, 15, 4, 5, 9, 12, 5, 5, 8, 12,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
313 8, 7, 10, 15, 11, 11, 15, 15, 7, 9, 12, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
314 8, 8, 12, 15, 10, 10, 13, 15, 14, 14, 15, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
315 11, 13, 15, 15, 11, 13, 15, 15, 14, 15, 15, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
316 15, 15, 0, 0, 4, 5, 9, 13, 5, 6, 9, 13,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
317 9, 9, 11, 15, 14, 13, 15, 15, 4, 6, 9, 12,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
318 5, 6, 9, 13, 9, 8, 11, 15, 13, 12, 15, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
319 7, 9, 12, 15, 7, 8, 11, 15, 10, 10, 14, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
320 14, 15, 15, 0, 10, 12, 15, 15, 11, 13, 15, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
321 15, 15, 15, 0, 15, 15, 0, 0, 6, 9, 13, 14,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
322 8, 9, 12, 15, 12, 12, 15, 15, 15, 15, 15, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
323 7, 9, 13, 15, 8, 9, 12, 15, 11, 12, 15, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
324 15, 15, 15, 0, 9, 11, 15, 15, 9, 11, 15, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
325 14, 14, 15, 0, 15, 15, 0, 0, 14, 15, 15, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
326 14, 15, 15, 0, 15, 15, 0, 0, 0, 0, 0, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
327 9, 12, 15, 15, 12, 13, 15, 15, 15, 15, 15, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
328 15, 15, 0, 0, 10, 12, 15, 15, 12, 14, 15, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
329 15, 15, 15, 0, 15, 15, 0, 0, 14, 15, 15, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
330 15, 15, 15, 0, 15, 15, 0, 0, 0, 0, 0, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
331 15, 15, 0, 0, 15, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
332 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
333
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
334
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
335 static const uint16_t cvh_huffcodes4[246] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
336 0x0000,0x0004,0x006c,0x03e6,0x0005,0x0012,0x006d,0x03e7,0x006e,0x00e8,0x03e8,0x3fc4,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
337 0x07e0,0x07e1,0x7fa4,0x7fa5,0x0006,0x0013,0x01e2,0x0fda,0x0014,0x0015,0x00e9,0x0fdb,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
338 0x00ea,0x006f,0x03e9,0x7fa6,0x07e2,0x07e3,0x7fa7,0x7fa8,0x0070,0x01e3,0x0fdc,0x7fa9,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
339 0x00eb,0x00ec,0x0fdd,0x7faa,0x03ea,0x03eb,0x1fd6,0x7fab,0x3fc5,0x3fc6,0x7fac,0x1fd6,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
340 0x07e4,0x1fd7,0x7fad,0x7fae,0x07e5,0x1fd8,0x7faf,0x7fb0,0x3fc7,0x7fb1,0x7fb2,0x1fd6,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
341 0x7fb3,0x7fb4,0x1fd6,0x1fd6,0x0007,0x0016,0x01e4,0x1fd9,0x0017,0x0032,0x01e5,0x1fda,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
342 0x01e6,0x01e7,0x07e6,0x7fb5,0x3fc8,0x1fdb,0x7fb6,0x7fb7,0x0008,0x0033,0x01e8,0x0fde,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
343 0x0018,0x0034,0x01e9,0x1fdc,0x01ea,0x00ed,0x07e7,0x7fb8,0x1fdd,0x0fdf,0x7fb9,0x7fba,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
344 0x0071,0x01eb,0x0fe0,0x7fbb,0x0072,0x00ee,0x07e8,0x7fbc,0x03ec,0x03ed,0x3fc9,0x7fbd,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
345 0x3fca,0x7fbe,0x7fbf,0x3fc9,0x03ee,0x0fe1,0x7fc0,0x7fc1,0x07e9,0x1fde,0x7fc2,0x7fc3,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
346 0x7fc4,0x7fc5,0x7fc6,0x3fc9,0x7fc7,0x7fc8,0x3fc9,0x3fc9,0x0035,0x01ec,0x1fdf,0x3fcb,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
347 0x00ef,0x01ed,0x0fe2,0x7fc9,0x0fe3,0x0fe4,0x7fca,0x7fcb,0x7fcc,0x7fcd,0x7fce,0x7fca,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
348 0x0073,0x01ee,0x1fe0,0x7fcf,0x00f0,0x01ef,0x0fe5,0x7fd0,0x07ea,0x0fe6,0x7fd1,0x7fd2,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
349 0x7fd3,0x7fd4,0x7fd5,0x7fd1,0x01f0,0x07eb,0x7fd6,0x7fd7,0x01f1,0x07ec,0x7fd8,0x7fd9,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
350 0x3fcc,0x3fcd,0x7fda,0x7fda,0x7fdb,0x7fdc,0x7fda,0x7fda,0x3fce,0x7fdd,0x7fde,0x7fd6,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
351 0x3fcf,0x7fdf,0x7fe0,0x7fd8,0x7fe1,0x7fe2,0x7fda,0x7fda,0x3fcc,0x3fcd,0x7fda,0x7fda,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
352 0x01f2,0x0fe7,0x7fe3,0x7fe4,0x0fe8,0x1fe1,0x7fe5,0x7fe6,0x7fe7,0x7fe8,0x7fe9,0x7fca,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
353 0x7fea,0x7feb,0x7fca,0x7fca,0x03ef,0x0fe9,0x7fec,0x7fed,0x0fea,0x3fd0,0x7fee,0x7fef,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
354 0x7ff0,0x7ff1,0x7ff2,0x7fd1,0x7ff3,0x7ff4,0x7fd1,0x7fd1,0x3fd1,0x7ff5,0x7ff6,0x7fd6,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
355 0x7ff7,0x7ff8,0x7ff9,0x7fd8,0x7ffa,0x7ffb,0x7fda,0x7fda,0x3fcc,0x3fcd,0x7fda,0x7fda,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
356 0x7ffc,0x7ffd,0x7fd6,0x7fd6,0x7ffe,0x7fff,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
357 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
358
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
359
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
360 static const uint8_t cvh_huffbits5[230] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
361 2, 4, 8, 4, 5, 9, 9, 10, 14, 4, 6, 11,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
362 5, 6, 12, 10, 11, 15, 9, 11, 15, 10, 13, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
363 14, 15, 0, 4, 6, 12, 6, 7, 12, 12, 12, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
364 5, 7, 13, 6, 7, 13, 12, 13, 15, 10, 12, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
365 11, 13, 15, 15, 15, 0, 8, 13, 15, 11, 12, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
366 15, 15, 0, 10, 13, 15, 12, 15, 15, 15, 15, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
367 15, 15, 0, 15, 15, 0, 0, 0, 0, 4, 5, 11,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
368 5, 7, 12, 11, 12, 15, 6, 7, 13, 7, 8, 14,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
369 12, 14, 15, 11, 13, 15, 12, 13, 15, 15, 15, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
370 5, 6, 13, 7, 8, 15, 12, 14, 15, 6, 8, 14,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
371 7, 8, 15, 14, 15, 15, 12, 12, 15, 12, 13, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
372 15, 15, 0, 9, 13, 15, 12, 13, 15, 15, 15, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
373 11, 13, 15, 13, 13, 15, 15, 15, 0, 14, 15, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
374 15, 15, 0, 0, 0, 0, 8, 10, 15, 11, 12, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
375 15, 15, 0, 10, 12, 15, 12, 13, 15, 15, 15, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
376 14, 15, 0, 15, 15, 0, 0, 0, 0, 8, 12, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
377 12, 13, 15, 15, 15, 0, 11, 13, 15, 13, 15, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
378 15, 15, 0, 15, 15, 0, 15, 15, 0, 0, 0, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
379 14, 15, 0, 15, 15, 0, 0, 0, 0, 15, 15, 0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
380 15, 15,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
381 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
382
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
383
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
384
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
385 static const uint16_t cvh_huffcodes5[230] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
386 0x0000,0x0004,0x00f0,0x0005,0x0012,0x01f0,0x01f1,0x03e8,0x3fce,0x0006,0x0030,0x07de,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
387 0x0013,0x0031,0x0fd2,0x03e9,0x07df,0x7fb0,0x01f2,0x07e0,0x7fb1,0x03ea,0x1fd2,0x7fb2,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
388 0x3fcf,0x7fb3,0x0031,0x0007,0x0032,0x0fd3,0x0033,0x0070,0x0fd4,0x0fd5,0x0fd6,0x7fb4,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
389 0x0014,0x0071,0x1fd3,0x0034,0x0072,0x1fd4,0x0fd7,0x1fd5,0x7fb5,0x03eb,0x0fd8,0x7fb6,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
390 0x07e1,0x1fd6,0x7fb7,0x7fb8,0x7fb9,0x0072,0x00f1,0x1fd7,0x7fba,0x07e2,0x0fd9,0x7fbb,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
391 0x7fbc,0x7fbd,0x0070,0x03ec,0x1fd8,0x7fbe,0x0fda,0x7fbf,0x7fc0,0x7fc1,0x7fc2,0x0072,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
392 0x7fc3,0x7fc4,0x0071,0x7fc5,0x7fc6,0x0072,0x0034,0x0072,0x0072,0x0008,0x0015,0x07e3,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
393 0x0016,0x0073,0x0fdb,0x07e4,0x0fdc,0x7fc7,0x0035,0x0074,0x1fd9,0x0075,0x00f2,0x3fd0,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
394 0x0fdd,0x3fd1,0x7fc8,0x07e5,0x1fda,0x7fc9,0x0fde,0x1fdb,0x7fca,0x7fcb,0x7fcc,0x00f2,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
395 0x0017,0x0036,0x1fdc,0x0076,0x00f3,0x7fcd,0x0fdf,0x3fd2,0x7fce,0x0037,0x00f4,0x3fd3,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
396 0x0077,0x00f5,0x7fcf,0x3fd4,0x7fd0,0x7fd1,0x0fe0,0x0fe1,0x7fd2,0x0fe2,0x1fdd,0x7fd3,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
397 0x7fd4,0x7fd5,0x00f5,0x01f3,0x1fde,0x7fd6,0x0fe3,0x1fdf,0x7fd7,0x7fd8,0x7fd9,0x00f3,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
398 0x07e6,0x1fe0,0x7fda,0x1fe1,0x1fe2,0x7fdb,0x7fdc,0x7fdd,0x00f5,0x3fd5,0x7fde,0x00f4,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
399 0x7fdf,0x7fe0,0x00f5,0x0077,0x00f5,0x00f5,0x00f6,0x03ed,0x7fe1,0x07e7,0x0fe4,0x7fe2,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
400 0x7fe3,0x7fe4,0x0073,0x03ee,0x0fe5,0x7fe5,0x0fe6,0x1fe3,0x7fe6,0x7fe7,0x7fe8,0x00f2,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
401 0x3fd6,0x7fe9,0x0074,0x7fea,0x7feb,0x00f2,0x0075,0x00f2,0x00f2,0x00f7,0x0fe7,0x7fec,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
402 0x0fe8,0x1fe4,0x7fed,0x7fee,0x7fef,0x00f3,0x07e8,0x1fe5,0x7ff0,0x1fe6,0x7ff1,0x7ff2,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
403 0x7ff3,0x7ff4,0x00f5,0x7ff5,0x7ff6,0x00f4,0x7ff7,0x7ff8,0x00f5,0x0077,0x00f5,0x00f5,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
404 0x3fd7,0x7ff9,0x0036,0x7ffa,0x7ffb,0x00f3,0x0076,0x00f3,0x00f3,0x7ffc,0x7ffd,0x0000,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
405 0x7ffe,0x7fff,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
406 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
407
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
408
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
409 static const uint8_t cvh_huffbits6[32] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
410 1, 4, 4, 6, 4, 6, 6, 8, 4, 6, 6, 8,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
411 6, 9, 8, 10, 4, 6, 7, 8, 6, 9, 8, 11,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
412 6, 9, 8, 10, 8, 10, 9, 11,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
413 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
414
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
415 static const uint16_t cvh_huffcodes6[32] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
416 0x0000,0x0008,0x0009,0x0034,0x000a,0x0035,0x0036,0x00f6,0x000b,0x0037,0x0038,0x00f7,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
417 0x0039,0x01fa,0x00f8,0x03fc,0x000c,0x003a,0x007a,0x00f9,0x003b,0x01fb,0x00fa,0x07fe,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
418 0x003c,0x01fc,0x00fb,0x03fd,0x00fc,0x03fe,0x01fd,0x07ff,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
419 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
420
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
421 static const uint16_t* cvh_huffcodes[7] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
422 cvh_huffcodes0, cvh_huffcodes1, cvh_huffcodes2, cvh_huffcodes3,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
423 cvh_huffcodes4, cvh_huffcodes5, cvh_huffcodes6,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
424 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
425
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
426 static const uint8_t* cvh_huffbits[7] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
427 cvh_huffbits0, cvh_huffbits1, cvh_huffbits2, cvh_huffbits3,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
428 cvh_huffbits4, cvh_huffbits5, cvh_huffbits6,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
429 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
430
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
431
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
432 static const uint16_t ccpl_huffcodes2[3] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
433 0x02,0x00,0x03,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
434 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
435
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
436 static const uint16_t ccpl_huffcodes3[7] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
437 0x3e,0x1e,0x02,0x00,0x06,0x0e,0x3f,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
438 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
439
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
440 static const uint16_t ccpl_huffcodes4[15] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
441 0xfc,0xfd,0x7c,0x3c,0x1c,0x0c,0x04,0x00,0x05,0x0d,0x1d,0x3d,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
442 0x7d,0xfe,0xff,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
443 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
444
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
445 static const uint16_t ccpl_huffcodes5[31] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
446 0x03f8,0x03f9,0x03fa,0x03fb,0x01f8,0x01f9,0x00f8,0x00f9,0x0078,0x0079,0x0038,0x0039,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
447 0x0018,0x0019,0x0004,0x0000,0x0005,0x001a,0x001b,0x003a,0x003b,0x007a,0x007b,0x00fa,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
448 0x00fb,0x01fa,0x01fb,0x03fc,0x03fd,0x03fe,0x03ff,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
449 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
450
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
451 static const uint16_t ccpl_huffcodes6[63] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
452 0x0004,0x0005,0x0005,0x0006,0x0006,0x0007,0x0007,0x0007,0x0007,0x0008,0x0008,0x0008,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
453 0x0008,0x0009,0x0009,0x0009,0x0009,0x000a,0x000a,0x000a,0x000a,0x000a,0x000b,0x000b,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
454 0x000b,0x000b,0x000c,0x000d,0x000e,0x000e,0x0010,0x0000,0x000a,0x0018,0x0019,0x0036,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
455 0x0037,0x0074,0x0075,0x0076,0x0077,0x00f4,0x00f5,0x00f6,0x00f7,0x01f5,0x01f6,0x01f7,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
456 0x01f8,0x03f6,0x03f7,0x03f8,0x03f9,0x03fa,0x07fa,0x07fb,0x07fc,0x07fd,0x0ffd,0x1ffd,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
457 0x3ffd,0x3ffe,0xffff,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
458 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
459
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
460 static const uint8_t ccpl_huffbits2[3] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
461 2,1,2,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
462 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
463
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
464 static const uint8_t ccpl_huffbits3[7] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
465 6,5,2,1,3,4,6,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
466 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
467
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
468 static const uint8_t ccpl_huffbits4[15] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
469 8,8,7,6,5,4,3,1,3,4,5,6,7,8,8,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
470 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
471
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
472 static const uint8_t ccpl_huffbits5[31] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
473 10,10,10,10,9,9,8,8,7,7,6,6,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
474 5,5,3,1,3,5,5,6,6,7,7,8,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
475 8,9,9,10,10,10,10,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
476 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
477
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
478 static const uint8_t ccpl_huffbits6[63] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
479 16,15,14,13,12,11,11,11,11,10,10,10,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
480 10,9,9,9,9,9,8,8,8,8,7,7,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
481 7,7,6,6,5,5,3,1,4,5,5,6,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
482 6,7,7,7,7,8,8,8,8,9,9,9,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
483 9,10,10,10,10,10,11,11,11,11,12,13,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
484 14,14,16,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
485 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
486
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
487 static const uint16_t* ccpl_huffcodes[5] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
488 ccpl_huffcodes2,ccpl_huffcodes3,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
489 ccpl_huffcodes4,ccpl_huffcodes5,ccpl_huffcodes6
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
490 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
491
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
492 static const uint8_t* ccpl_huffbits[5] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
493 ccpl_huffbits2,ccpl_huffbits3,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
494 ccpl_huffbits4,ccpl_huffbits5,ccpl_huffbits6
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
495 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
496
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
497
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
498 //Coupling tables
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
499
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
500 static const int cplband[51] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
501 0,1,2,3,4,5,6,7,8,9,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
502 10,11,11,12,12,13,13,14,14,14,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
503 15,15,15,15,16,16,16,16,16,17,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
504 17,17,17,17,17,18,18,18,18,18,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
505 18,18,19,19,19,19,19,19,19,19,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
506 19,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
507 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
508
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
509 static const float cplscale2[3] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
510 0.953020632266998,0.70710676908493,0.302905440330505,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
511 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
512
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
513 static const float cplscale3[7] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
514 0.981279790401459,0.936997592449188,0.875934481620789,0.70710676908493,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
515 0.482430040836334,0.349335819482803,0.192587479948997,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
516 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
517
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
518 static const float cplscale4[15] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
519 0.991486728191376,0.973249018192291,0.953020632266998,0.930133521556854,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
520 0.903453230857849,0.870746195316315,0.826180458068848,0.70710676908493,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
521 0.563405573368073,0.491732746362686,0.428686618804932,0.367221474647522,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
522 0.302905440330505,0.229752898216248,0.130207896232605,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
523 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
524
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
525 static const float cplscale5[31] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
526 0.995926380157471,0.987517595291138,0.978726446628571,0.969505727291107,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
527 0.95979779958725,0.949531257152557,0.938616216182709,0.926936149597168,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
528 0.914336204528809,0.900602877140045,0.885426938533783,0.868331849575043,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
529 0.84851086139679,0.824381768703461,0.791833400726318,0.70710676908493,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
530 0.610737144947052,0.566034197807312,0.529177963733673,0.495983630418777,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
531 0.464778542518616,0.434642940759659,0.404955863952637,0.375219136476517,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
532 0.344963222742081,0.313672333955765,0.280692428350449,0.245068684220314,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
533 0.205169528722763,0.157508864998817,0.0901700109243393,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
534 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
535
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
536 static const float cplscale6[63] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
537 0.998005926609039,0.993956744670868,0.989822506904602,0.985598564147949,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
538 0.981279790401459,0.976860702037811,0.972335040569305,0.967696130275726,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
539 0.962936460971832,0.958047747612000,0.953020632266998,0.947844684123993,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
540 0.942508161067963,0.936997592449188,0.931297719478607,0.925390899181366,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
541 0.919256627559662,0.912870943546295,0.906205296516418,0.899225592613220,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
542 0.891890347003937,0.884148240089417,0.875934481620789,0.867165684700012,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
543 0.857730865478516,0.847477376461029,0.836184680461884,0.823513329029083,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
544 0.808890223503113,0.791194140911102,0.767520070075989,0.707106769084930,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
545 0.641024887561798,0.611565053462982,0.587959706783295,0.567296981811523,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
546 0.548448026180267,0.530831515789032,0.514098942279816,0.498019754886627,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
547 0.482430040836334,0.467206478118896,0.452251672744751,0.437485188245773,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
548 0.422837972640991,0.408248275518417,0.393658757209778,0.379014074802399,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
549 0.364258885383606,0.349335819482803,0.334183186292648,0.318732559680939,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
550 0.302905440330505,0.286608695983887,0.269728302955627,0.252119421958923,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
551 0.233590632677078,0.213876649737358,0.192587479948997,0.169101938605309,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
552 0.142307326197624,0.109772264957428,0.0631198287010193,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
553 };
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
554
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
555 static const float* cplscales[5] = {
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
556 cplscale2, cplscale3, cplscale4, cplscale5, cplscale6,
5f51b1e0bed6 Cook compatibe decoder, patch by Benjamin Larsson
rtognimp
parents:
diff changeset
557 };