diff options
author | Thom Johansen <thomj@rockbox.org> | 2006-01-30 01:00:40 +0000 |
---|---|---|
committer | Thom Johansen <thomj@rockbox.org> | 2006-01-30 01:00:40 +0000 |
commit | 2b483958f961637e296432632a5b891eb061c22d (patch) | |
tree | 180fd3596df375fa56732050a7cc20ebdbc3cdb7 /apps/codecs/libmusepack/huffsv7.c | |
parent | 58231d50f2cb940a309814e31ae583b4b0dfed24 (diff) | |
download | rockbox-2b483958f961637e296432632a5b891eb061c22d.tar.gz rockbox-2b483958f961637e296432632a5b891eb061c22d.zip |
Synced libmpcdec to musepack.net SVN.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8488 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/libmusepack/huffsv7.c')
-rw-r--r-- | apps/codecs/libmusepack/huffsv7.c | 507 |
1 files changed, 44 insertions, 463 deletions
diff --git a/apps/codecs/libmusepack/huffsv7.c b/apps/codecs/libmusepack/huffsv7.c index bebe1af07c..a59674191d 100644 --- a/apps/codecs/libmusepack/huffsv7.c +++ b/apps/codecs/libmusepack/huffsv7.c | |||
@@ -35,466 +35,47 @@ | |||
35 | /// \file huffsv7.c | 35 | /// \file huffsv7.c |
36 | /// Implementations of sv7 huffman decoding functions. | 36 | /// Implementations of sv7 huffman decoding functions. |
37 | 37 | ||
38 | #include "musepack.h" | 38 | #include <musepack.h> |
39 | #include "huffman.h" | 39 | #include <huffman.h> |
40 | #include "requant.h" | 40 | #include <requant.h> |
41 | 41 | ||
42 | void | 42 | const HuffmanTyp mpc_table_HuffHdr [10] = |
43 | mpc_decoder_init_huffman_sv7(mpc_decoder *d) | 43 | {{2147483648u,1,0},{1610612736u,3,1},{1577058304u,7,-4},{1568669696u,9,3},{1560281088u,9,4},{1543503872u,8,-5},{1476395008u,6,2},{1342177280u,5,-3},{1073741824u,4,-2},{0u,2,-1},}; |
44 | { | 44 | const HuffmanTyp mpc_table_HuffSCFI [ 4] = |
45 | mpc_decoder_init_huffman_sv7_tables(d); | 45 | {{2147483648u,1,1},{1610612736u,3,2},{1073741824u,3,0},{0u,2,3},}; |
46 | mpc_decoder_resort_huff_tables(10, &(d->HuffHdr[0]) , 5); | 46 | const HuffmanTyp mpc_table_HuffDSCF [16] = |
47 | mpc_decoder_resort_huff_tables( 4, &(d->HuffSCFI[0]) , 0); | 47 | {{4160749568u,5,5},{4026531840u,5,-4},{3758096384u,4,3},{3489660928u,4,-3},{3221225472u,4,8},{2684354560u,3,1},{2415919104u,4,0},{2281701376u,5,-5},{2214592512u,6,7},{2147483648u,6,-7},{1610612736u,3,-1},{1073741824u,3,2},{805306368u,4,4},{671088640u,5,6},{536870912u,5,-6},{0u,3,-2},}; |
48 | mpc_decoder_resort_huff_tables(16, &(d->HuffDSCF[0]) , 7); | 48 | |
49 | mpc_decoder_resort_huff_tables(27, &(d->HuffQ1[0][0]) , 0); | 49 | static const HuffmanTyp mpc_table_HuffQ1 [2] [3*3*3] = { |
50 | mpc_decoder_resort_huff_tables(27, &(d->HuffQ1[1][0]) , 0); | 50 | {{3758096384u,3,13},{3690987520u,6,26},{3623878656u,6,0},{3556769792u,6,20},{3489660928u,6,6},{3221225472u,4,14},{2952790016u,4,12},{2684354560u,4,4},{2415919104u,4,22},{2348810240u,6,8},{2281701376u,6,18},{2214592512u,6,24},{2147483648u,6,2},{1879048192u,4,16},{1610612736u,4,10},{1476395008u,5,17},{1342177280u,5,9},{1207959552u,5,1},{1073741824u,5,25},{939524096u,5,5},{805306368u,5,21},{671088640u,5,3},{536870912u,5,11},{402653184u,5,15},{268435456u,5,23},{134217728u,5,19},{0u,5,7},}, |
51 | mpc_decoder_resort_huff_tables(25, &(d->HuffQ2[0][0]) , 0); | 51 | {{2147483648u,1,13},{2113929216u,7,15},{2080374784u,7,1},{2046820352u,7,11},{2013265920u,7,7},{1979711488u,7,17},{1946157056u,7,25},{1912602624u,7,19},{1904214016u,9,8},{1895825408u,9,18},{1887436800u,9,2},{1879048192u,9,24},{1845493760u,7,3},{1811939328u,7,23},{1778384896u,7,21},{1744830464u,7,5},{1728053248u,8,0},{1711276032u,8,26},{1694498816u,8,6},{1677721600u,8,20},{1610612736u,6,9},{1342177280u,4,14},{1073741824u,4,12},{805306368u,4,4},{536870912u,4,22},{268435456u,4,16},{0u,4,10},}, |
52 | mpc_decoder_resort_huff_tables(25, &(d->HuffQ2[1][0]) , 0); | 52 | }; |
53 | mpc_decoder_resort_huff_tables( 7, &(d->HuffQ3[0][0]) , Dc[3]); | 53 | static const HuffmanTyp mpc_table_HuffQ2 [2] [5*5] = { |
54 | mpc_decoder_resort_huff_tables( 7, &(d->HuffQ3[1][0]) , Dc[3]); | 54 | {{4026531840u,4,13},{3758096384u,4,17},{3489660928u,4,7},{3221225472u,4,11},{3154116608u,6,1},{3087007744u,6,23},{3053453312u,7,4},{3019898880u,7,20},{2986344448u,7,0},{2952790016u,7,24},{2818572288u,5,22},{2684354560u,5,10},{2147483648u,3,12},{2013265920u,5,2},{1879048192u,5,14},{1610612736u,4,6},{1342177280u,4,18},{1073741824u,4,8},{805306368u,4,16},{671088640u,5,9},{536870912u,5,5},{402653184u,5,15},{268435456u,5,21},{134217728u,5,19},{0u,5,3},}, |
55 | mpc_decoder_resort_huff_tables( 9, &(d->HuffQ4[0][0]) , Dc[4]); | 55 | {{4160749568u,5,18},{4026531840u,5,6},{3892314112u,5,8},{3875536896u,8,3},{3871342592u,10,24},{3867148288u,10,4},{3862953984u,10,0},{3858759680u,10,20},{3825205248u,7,23},{3791650816u,7,1},{3758096384u,7,19},{3623878656u,5,16},{3590324224u,7,15},{3556769792u,7,21},{3523215360u,7,9},{3489660928u,7,5},{3422552064u,6,2},{3355443200u,6,10},{3288334336u,6,14},{3221225472u,6,22},{2147483648u,2,12},{1610612736u,3,13},{1073741824u,3,17},{536870912u,3,11},{0u,3,7},}, |
56 | mpc_decoder_resort_huff_tables( 9, &(d->HuffQ4[1][0]) , Dc[4]); | 56 | }; |
57 | mpc_decoder_resort_huff_tables(15, &(d->HuffQ5[0][0]) , Dc[5]); | 57 | static const HuffmanTyp mpc_table_HuffQ3 [2] [ 7] = { |
58 | mpc_decoder_resort_huff_tables(15, &(d->HuffQ5[1][0]) , Dc[5]); | 58 | {{3758096384u,3,1},{3489660928u,4,3},{3221225472u,4,-3},{2684354560u,3,2},{2147483648u,3,-2},{1073741824u,2,0},{0u,2,-1},}, |
59 | mpc_decoder_resort_huff_tables(31, &(d->HuffQ6[0][0]) , Dc[6]); | 59 | {{3221225472u,2,0},{2147483648u,2,-1},{1073741824u,2,1},{805306368u,4,-2},{671088640u,5,3},{536870912u,5,-3},{0u,3,2},}, |
60 | mpc_decoder_resort_huff_tables(31, &(d->HuffQ6[1][0]) , Dc[6]); | 60 | }; |
61 | mpc_decoder_resort_huff_tables(63, &(d->HuffQ7[0][0]) , Dc[7]); | 61 | static const HuffmanTyp mpc_table_HuffQ4 [2] [ 9] = { |
62 | mpc_decoder_resort_huff_tables(63, &(d->HuffQ7[1][0]) , Dc[7]); | 62 | {{3758096384u,3,0},{3221225472u,3,-1},{2684354560u,3,1},{2147483648u,3,-2},{1610612736u,3,2},{1342177280u,4,-4},{1073741824u,4,4},{536870912u,3,3},{0u,3,-3},}, |
63 | } | 63 | {{3758096384u,3,1},{3489660928u,4,2},{3221225472u,4,-3},{2147483648u,2,0},{1610612736u,3,-2},{1342177280u,4,3},{1207959552u,5,-4},{1073741824u,5,4},{0u,2,-1},}, |
64 | 64 | }; | |
65 | void | 65 | static const HuffmanTyp mpc_table_HuffQ5 [2] [15] = { |
66 | mpc_decoder_init_huffman_sv7_tables(mpc_decoder *d) | 66 | {{4026531840u,4,2},{3892314112u,5,5},{3825205248u,6,-7},{3758096384u,6,7},{3489660928u,4,-3},{3221225472u,4,3},{3087007744u,5,-6},{2952790016u,5,6},{2684354560u,4,-4},{2415919104u,4,4},{2147483648u,4,-5},{1610612736u,3,0},{1073741824u,3,-1},{536870912u,3,1},{0u,3,-2},}, |
67 | { | 67 | {{4026531840u,4,3},{3892314112u,5,4},{3858759680u,7,6},{3841982464u,8,-7},{3825205248u,8,7},{3758096384u,6,-6},{3221225472u,3,0},{2684354560u,3,-1},{2147483648u,3,1},{1610612736u,3,-2},{1073741824u,3,2},{939524096u,5,-5},{805306368u,5,5},{536870912u,4,-4},{0u,3,-3},}, |
68 | /***************************** SCFI *******************************/ | 68 | }; |
69 | d->HuffSCFI[0].Code = 2; d->HuffSCFI[0].Length = 3; | 69 | static const HuffmanTyp mpc_table_HuffQ6 [2] [31] = { |
70 | d->HuffSCFI[1].Code = 1; d->HuffSCFI[1].Length = 1; | 70 | {{4160749568u,5,3},{4026531840u,5,-4},{3959422976u,6,-11},{3892314112u,6,12},{3758096384u,5,4},{3623878656u,5,6},{3489660928u,5,-5},{3355443200u,5,5},{3221225472u,5,7},{3087007744u,5,-7},{3019898880u,6,-12},{2952790016u,6,-13},{2818572288u,5,-6},{2684354560u,5,8},{2550136832u,5,-8},{2415919104u,5,9},{2281701376u,5,-9},{2214592512u,6,13},{2181038080u,7,-15},{2147483648u,7,15},{1879048192u,4,0},{1744830464u,5,-10},{1610612736u,5,10},{1342177280u,4,-1},{1073741824u,4,2},{805306368u,4,1},{536870912u,4,-2},{469762048u,6,14},{402653184u,6,-14},{268435456u,5,11},{0u,4,-3},}, |
71 | d->HuffSCFI[2].Code = 3; d->HuffSCFI[2].Length = 3; | 71 | {{4160749568u,5,-6},{4026531840u,5,6},{3758096384u,4,1},{3489660928u,4,-1},{3456106496u,7,10},{3422552064u,7,-10},{3405774848u,8,-11},{3397386240u,9,-12},{3395289088u,11,13},{3394764800u,13,15},{3394240512u,13,-14},{3393716224u,13,14},{3393191936u,13,-15},{3388997632u,10,-13},{3372220416u,8,11},{3355443200u,8,12},{3288334336u,6,-9},{3221225472u,6,9},{2952790016u,4,-2},{2684354560u,4,2},{2415919104u,4,3},{2147483648u,4,-3},{2013265920u,5,-7},{1879048192u,5,7},{1610612736u,4,-4},{1342177280u,4,4},{1207959552u,5,-8},{1073741824u,5,8},{805306368u,4,5},{536870912u,4,-5},{0u,3,0},}, |
72 | d->HuffSCFI[3].Code = 0; d->HuffSCFI[3].Length = 2; | 72 | }; |
73 | 73 | static const HuffmanTyp mpc_table_HuffQ7 [2] [63] = { | |
74 | /***************************** DSCF *******************************/ | 74 | {{4227858432u,6,7},{4160749568u,6,8},{4093640704u,6,9},{4026531840u,6,-8},{3959422976u,6,11},{3925868544u,7,21},{3909091328u,8,-28},{3892314112u,8,28},{3825205248u,6,-9},{3791650816u,7,-22},{3758096384u,7,-21},{3690987520u,6,-10},{3623878656u,6,-11},{3556769792u,6,10},{3489660928u,6,12},{3422552064u,6,-13},{3388997632u,7,22},{3355443200u,7,23},{3288334336u,6,-12},{3221225472u,6,13},{3154116608u,6,14},{3087007744u,6,-14},{3053453312u,7,-23},{3036676096u,8,-29},{3019898880u,8,29},{2952790016u,6,-15},{2885681152u,6,15},{2818572288u,6,16},{2751463424u,6,-16},{2717908992u,7,-24},{2684354560u,7,24},{2617245696u,6,17},{2583691264u,7,-25},{2566914048u,8,-30},{2550136832u,8,30},{2483027968u,6,-17},{2415919104u,6,18},{2348810240u,6,-18},{2315255808u,7,25},{2281701376u,7,26},{2214592512u,6,19},{2181038080u,7,-26},{2147483648u,7,-27},{2013265920u,5,2},{1946157056u,6,-19},{1879048192u,6,20},{1744830464u,5,-1},{1728053248u,8,-31},{1711276032u,8,31},{1677721600u,7,27},{1610612736u,6,-20},{1476395008u,5,1},{1342177280u,5,-5},{1207959552u,5,-3},{1073741824u,5,3},{939524096u,5,0},{805306368u,5,-2},{671088640u,5,-4},{536870912u,5,4},{402653184u,5,5},{268435456u,5,-6},{134217728u,5,6},{0u,5,-7},}, |
75 | d->HuffDSCF[ 0].Code = 32; d->HuffDSCF[ 0].Length = 6; | 75 | {{4160749568u,5,-1},{4026531840u,5,2},{3892314112u,5,-2},{3758096384u,5,3},{3741319168u,8,-20},{3737124864u,10,24},{3736862720u,14,28},{3736600576u,14,-28},{3736338432u,14,-30},{3736076288u,14,30},{3735027712u,12,-27},{3734765568u,14,29},{3734503424u,14,-29},{3734241280u,14,31},{3733979136u,14,-31},{3732930560u,12,27},{3724541952u,9,-22},{3690987520u,7,-17},{3623878656u,6,-11},{3489660928u,5,-3},{3355443200u,5,4},{3221225472u,5,-4},{3187671040u,7,17},{3170893824u,8,20},{3162505216u,9,22},{3158310912u,10,-25},{3154116608u,10,-26},{3087007744u,6,12},{2952790016u,5,5},{2818572288u,5,-5},{2684354560u,5,6},{2550136832u,5,-6},{2483027968u,6,-12},{2449473536u,7,-18},{2415919104u,7,18},{2348810240u,6,13},{2281701376u,6,-13},{2147483648u,5,-7},{2080374784u,6,14},{2063597568u,8,21},{2046820352u,8,-21},{2013265920u,7,-19},{1879048192u,5,7},{1744830464u,5,8},{1677721600u,6,-14},{1610612736u,6,-15},{1476395008u,5,-8},{1409286144u,6,15},{1375731712u,7,19},{1371537408u,10,25},{1367343104u,10,26},{1358954496u,9,-23},{1350565888u,9,23},{1342177280u,9,-24},{1207959552u,5,-9},{1073741824u,5,9},{1006632960u,6,16},{939524096u,6,-16},{805306368u,5,10},{536870912u,4,0},{402653184u,5,-10},{268435456u,5,11},{0u,4,1},}, |
76 | d->HuffDSCF[ 1].Code = 4; d->HuffDSCF[ 1].Length = 5; | 76 | }; |
77 | d->HuffDSCF[ 2].Code = 17; d->HuffDSCF[ 2].Length = 5; | 77 | |
78 | d->HuffDSCF[ 3].Code = 30; d->HuffDSCF[ 3].Length = 5; | 78 | const HuffmanTyp* mpc_table_HuffQ [2] [8] = { |
79 | d->HuffDSCF[ 4].Code = 13; d->HuffDSCF[ 4].Length = 4; | 79 | {0,mpc_table_HuffQ1[0],mpc_table_HuffQ2[0],mpc_table_HuffQ3[0],mpc_table_HuffQ4[0],mpc_table_HuffQ5[0],mpc_table_HuffQ6[0],mpc_table_HuffQ7[0]}, |
80 | d->HuffDSCF[ 5].Code = 0; d->HuffDSCF[ 5].Length = 3; | 80 | {0,mpc_table_HuffQ1[1],mpc_table_HuffQ2[1],mpc_table_HuffQ3[1],mpc_table_HuffQ4[1],mpc_table_HuffQ5[1],mpc_table_HuffQ6[1],mpc_table_HuffQ7[1]}, |
81 | d->HuffDSCF[ 6].Code = 3; d->HuffDSCF[ 6].Length = 3; | 81 | }; |
82 | d->HuffDSCF[ 7].Code = 9; d->HuffDSCF[ 7].Length = 4; | ||
83 | d->HuffDSCF[ 8].Code = 5; d->HuffDSCF[ 8].Length = 3; | ||
84 | d->HuffDSCF[ 9].Code = 2; d->HuffDSCF[ 9].Length = 3; | ||
85 | d->HuffDSCF[10].Code = 14; d->HuffDSCF[10].Length = 4; | ||
86 | d->HuffDSCF[11].Code = 3; d->HuffDSCF[11].Length = 4; | ||
87 | d->HuffDSCF[12].Code = 31; d->HuffDSCF[12].Length = 5; | ||
88 | d->HuffDSCF[13].Code = 5; d->HuffDSCF[13].Length = 5; | ||
89 | d->HuffDSCF[14].Code = 33; d->HuffDSCF[14].Length = 6; | ||
90 | d->HuffDSCF[15].Code = 12; d->HuffDSCF[15].Length = 4; | ||
91 | |||
92 | /************************* frame-header ***************************/ | ||
93 | /***************** differential quantizer indizes *****************/ | ||
94 | d->HuffHdr[0].Code = 92; d->HuffHdr[0].Length = 8; | ||
95 | d->HuffHdr[1].Code = 47; d->HuffHdr[1].Length = 7; | ||
96 | d->HuffHdr[2].Code = 10; d->HuffHdr[2].Length = 5; | ||
97 | d->HuffHdr[3].Code = 4; d->HuffHdr[3].Length = 4; | ||
98 | d->HuffHdr[4].Code = 0; d->HuffHdr[4].Length = 2; | ||
99 | d->HuffHdr[5].Code = 1; d->HuffHdr[5].Length = 1; | ||
100 | d->HuffHdr[6].Code = 3; d->HuffHdr[6].Length = 3; | ||
101 | d->HuffHdr[7].Code = 22; d->HuffHdr[7].Length = 6; | ||
102 | d->HuffHdr[8].Code = 187; d->HuffHdr[8].Length = 9; | ||
103 | d->HuffHdr[9].Code = 186; d->HuffHdr[9].Length = 9; | ||
104 | |||
105 | /********************** 3-step quantizer **************************/ | ||
106 | /********************* 3 bundled samples **************************/ | ||
107 | //less shaped, book 0 | ||
108 | d->HuffQ1[0][ 0].Code = 54; d->HuffQ1[0][ 0].Length = 6; | ||
109 | d->HuffQ1[0][ 1].Code = 9; d->HuffQ1[0][ 1].Length = 5; | ||
110 | d->HuffQ1[0][ 2].Code = 32; d->HuffQ1[0][ 2].Length = 6; | ||
111 | d->HuffQ1[0][ 3].Code = 5; d->HuffQ1[0][ 3].Length = 5; | ||
112 | d->HuffQ1[0][ 4].Code = 10; d->HuffQ1[0][ 4].Length = 4; | ||
113 | d->HuffQ1[0][ 5].Code = 7; d->HuffQ1[0][ 5].Length = 5; | ||
114 | d->HuffQ1[0][ 6].Code = 52; d->HuffQ1[0][ 6].Length = 6; | ||
115 | d->HuffQ1[0][ 7].Code = 0; d->HuffQ1[0][ 7].Length = 5; | ||
116 | d->HuffQ1[0][ 8].Code = 35; d->HuffQ1[0][ 8].Length = 6; | ||
117 | d->HuffQ1[0][ 9].Code = 10; d->HuffQ1[0][ 9].Length = 5; | ||
118 | d->HuffQ1[0][10].Code = 6; d->HuffQ1[0][10].Length = 4; | ||
119 | d->HuffQ1[0][11].Code = 4; d->HuffQ1[0][11].Length = 5; | ||
120 | d->HuffQ1[0][12].Code = 11; d->HuffQ1[0][12].Length = 4; | ||
121 | d->HuffQ1[0][13].Code = 7; d->HuffQ1[0][13].Length = 3; | ||
122 | d->HuffQ1[0][14].Code = 12; d->HuffQ1[0][14].Length = 4; | ||
123 | d->HuffQ1[0][15].Code = 3; d->HuffQ1[0][15].Length = 5; | ||
124 | d->HuffQ1[0][16].Code = 7; d->HuffQ1[0][16].Length = 4; | ||
125 | d->HuffQ1[0][17].Code = 11; d->HuffQ1[0][17].Length = 5; | ||
126 | d->HuffQ1[0][18].Code = 34; d->HuffQ1[0][18].Length = 6; | ||
127 | d->HuffQ1[0][19].Code = 1; d->HuffQ1[0][19].Length = 5; | ||
128 | d->HuffQ1[0][20].Code = 53; d->HuffQ1[0][20].Length = 6; | ||
129 | d->HuffQ1[0][21].Code = 6; d->HuffQ1[0][21].Length = 5; | ||
130 | d->HuffQ1[0][22].Code = 9; d->HuffQ1[0][22].Length = 4; | ||
131 | d->HuffQ1[0][23].Code = 2; d->HuffQ1[0][23].Length = 5; | ||
132 | d->HuffQ1[0][24].Code = 33; d->HuffQ1[0][24].Length = 6; | ||
133 | d->HuffQ1[0][25].Code = 8; d->HuffQ1[0][25].Length = 5; | ||
134 | d->HuffQ1[0][26].Code = 55; d->HuffQ1[0][26].Length = 6; | ||
135 | |||
136 | //more shaped, book 1 | ||
137 | d->HuffQ1[1][ 0].Code = 103; d->HuffQ1[1][ 0].Length = 8; | ||
138 | d->HuffQ1[1][ 1].Code = 62; d->HuffQ1[1][ 1].Length = 7; | ||
139 | d->HuffQ1[1][ 2].Code = 225; d->HuffQ1[1][ 2].Length = 9; | ||
140 | d->HuffQ1[1][ 3].Code = 55; d->HuffQ1[1][ 3].Length = 7; | ||
141 | d->HuffQ1[1][ 4].Code = 3; d->HuffQ1[1][ 4].Length = 4; | ||
142 | d->HuffQ1[1][ 5].Code = 52; d->HuffQ1[1][ 5].Length = 7; | ||
143 | d->HuffQ1[1][ 6].Code = 101; d->HuffQ1[1][ 6].Length = 8; | ||
144 | d->HuffQ1[1][ 7].Code = 60; d->HuffQ1[1][ 7].Length = 7; | ||
145 | d->HuffQ1[1][ 8].Code = 227; d->HuffQ1[1][ 8].Length = 9; | ||
146 | d->HuffQ1[1][ 9].Code = 24; d->HuffQ1[1][ 9].Length = 6; | ||
147 | d->HuffQ1[1][10].Code = 0; d->HuffQ1[1][10].Length = 4; | ||
148 | d->HuffQ1[1][11].Code = 61; d->HuffQ1[1][11].Length = 7; | ||
149 | d->HuffQ1[1][12].Code = 4; d->HuffQ1[1][12].Length = 4; | ||
150 | d->HuffQ1[1][13].Code = 1; d->HuffQ1[1][13].Length = 1; | ||
151 | d->HuffQ1[1][14].Code = 5; d->HuffQ1[1][14].Length = 4; | ||
152 | d->HuffQ1[1][15].Code = 63; d->HuffQ1[1][15].Length = 7; | ||
153 | d->HuffQ1[1][16].Code = 1; d->HuffQ1[1][16].Length = 4; | ||
154 | d->HuffQ1[1][17].Code = 59; d->HuffQ1[1][17].Length = 7; | ||
155 | d->HuffQ1[1][18].Code = 226; d->HuffQ1[1][18].Length = 9; | ||
156 | d->HuffQ1[1][19].Code = 57; d->HuffQ1[1][19].Length = 7; | ||
157 | d->HuffQ1[1][20].Code = 100; d->HuffQ1[1][20].Length = 8; | ||
158 | d->HuffQ1[1][21].Code = 53; d->HuffQ1[1][21].Length = 7; | ||
159 | d->HuffQ1[1][22].Code = 2; d->HuffQ1[1][22].Length = 4; | ||
160 | d->HuffQ1[1][23].Code = 54; d->HuffQ1[1][23].Length = 7; | ||
161 | d->HuffQ1[1][24].Code = 224; d->HuffQ1[1][24].Length = 9; | ||
162 | d->HuffQ1[1][25].Code = 58; d->HuffQ1[1][25].Length = 7; | ||
163 | d->HuffQ1[1][26].Code = 102; d->HuffQ1[1][26].Length = 8; | ||
164 | |||
165 | /********************** 5-step quantizer **************************/ | ||
166 | /********************* 2 bundled samples **************************/ | ||
167 | //less shaped, book 0 | ||
168 | d->HuffQ2[0][ 0].Code = 89; d->HuffQ2[0][ 0].Length = 7; | ||
169 | d->HuffQ2[0][ 1].Code = 47; d->HuffQ2[0][ 1].Length = 6; | ||
170 | d->HuffQ2[0][ 2].Code = 15; d->HuffQ2[0][ 2].Length = 5; | ||
171 | d->HuffQ2[0][ 3].Code = 0; d->HuffQ2[0][ 3].Length = 5; | ||
172 | d->HuffQ2[0][ 4].Code = 91; d->HuffQ2[0][ 4].Length = 7; | ||
173 | d->HuffQ2[0][ 5].Code = 4; d->HuffQ2[0][ 5].Length = 5; | ||
174 | d->HuffQ2[0][ 6].Code = 6; d->HuffQ2[0][ 6].Length = 4; | ||
175 | d->HuffQ2[0][ 7].Code = 13; d->HuffQ2[0][ 7].Length = 4; | ||
176 | d->HuffQ2[0][ 8].Code = 4; d->HuffQ2[0][ 8].Length = 4; | ||
177 | d->HuffQ2[0][ 9].Code = 5; d->HuffQ2[0][ 9].Length = 5; | ||
178 | d->HuffQ2[0][10].Code = 20; d->HuffQ2[0][10].Length = 5; | ||
179 | d->HuffQ2[0][11].Code = 12; d->HuffQ2[0][11].Length = 4; | ||
180 | d->HuffQ2[0][12].Code = 4; d->HuffQ2[0][12].Length = 3; | ||
181 | d->HuffQ2[0][13].Code = 15; d->HuffQ2[0][13].Length = 4; | ||
182 | d->HuffQ2[0][14].Code = 14; d->HuffQ2[0][14].Length = 5; | ||
183 | d->HuffQ2[0][15].Code = 3; d->HuffQ2[0][15].Length = 5; | ||
184 | d->HuffQ2[0][16].Code = 3; d->HuffQ2[0][16].Length = 4; | ||
185 | d->HuffQ2[0][17].Code = 14; d->HuffQ2[0][17].Length = 4; | ||
186 | d->HuffQ2[0][18].Code = 5; d->HuffQ2[0][18].Length = 4; | ||
187 | d->HuffQ2[0][19].Code = 1; d->HuffQ2[0][19].Length = 5; | ||
188 | d->HuffQ2[0][20].Code = 90; d->HuffQ2[0][20].Length = 7; | ||
189 | d->HuffQ2[0][21].Code = 2; d->HuffQ2[0][21].Length = 5; | ||
190 | d->HuffQ2[0][22].Code = 21; d->HuffQ2[0][22].Length = 5; | ||
191 | d->HuffQ2[0][23].Code = 46; d->HuffQ2[0][23].Length = 6; | ||
192 | d->HuffQ2[0][24].Code = 88; d->HuffQ2[0][24].Length = 7; | ||
193 | |||
194 | //more shaped, book 1 | ||
195 | d->HuffQ2[1][ 0].Code = 921; d->HuffQ2[1][ 0].Length = 10; | ||
196 | d->HuffQ2[1][ 1].Code = 113; d->HuffQ2[1][ 1].Length = 7; | ||
197 | d->HuffQ2[1][ 2].Code = 51; d->HuffQ2[1][ 2].Length = 6; | ||
198 | d->HuffQ2[1][ 3].Code = 231; d->HuffQ2[1][ 3].Length = 8; | ||
199 | d->HuffQ2[1][ 4].Code = 922; d->HuffQ2[1][ 4].Length = 10; | ||
200 | d->HuffQ2[1][ 5].Code = 104; d->HuffQ2[1][ 5].Length = 7; | ||
201 | d->HuffQ2[1][ 6].Code = 30; d->HuffQ2[1][ 6].Length = 5; | ||
202 | d->HuffQ2[1][ 7].Code = 0; d->HuffQ2[1][ 7].Length = 3; | ||
203 | d->HuffQ2[1][ 8].Code = 29; d->HuffQ2[1][ 8].Length = 5; | ||
204 | d->HuffQ2[1][ 9].Code = 105; d->HuffQ2[1][ 9].Length = 7; | ||
205 | d->HuffQ2[1][10].Code = 50; d->HuffQ2[1][10].Length = 6; | ||
206 | d->HuffQ2[1][11].Code = 1; d->HuffQ2[1][11].Length = 3; | ||
207 | d->HuffQ2[1][12].Code = 2; d->HuffQ2[1][12].Length = 2; | ||
208 | d->HuffQ2[1][13].Code = 3; d->HuffQ2[1][13].Length = 3; | ||
209 | d->HuffQ2[1][14].Code = 49; d->HuffQ2[1][14].Length = 6; | ||
210 | d->HuffQ2[1][15].Code = 107; d->HuffQ2[1][15].Length = 7; | ||
211 | d->HuffQ2[1][16].Code = 27; d->HuffQ2[1][16].Length = 5; | ||
212 | d->HuffQ2[1][17].Code = 2; d->HuffQ2[1][17].Length = 3; | ||
213 | d->HuffQ2[1][18].Code = 31; d->HuffQ2[1][18].Length = 5; | ||
214 | d->HuffQ2[1][19].Code = 112; d->HuffQ2[1][19].Length = 7; | ||
215 | d->HuffQ2[1][20].Code = 920; d->HuffQ2[1][20].Length = 10; | ||
216 | d->HuffQ2[1][21].Code = 106; d->HuffQ2[1][21].Length = 7; | ||
217 | d->HuffQ2[1][22].Code = 48; d->HuffQ2[1][22].Length = 6; | ||
218 | d->HuffQ2[1][23].Code = 114; d->HuffQ2[1][23].Length = 7; | ||
219 | d->HuffQ2[1][24].Code = 923; d->HuffQ2[1][24].Length = 10; | ||
220 | |||
221 | /********************** 7-step quantizer **************************/ | ||
222 | /*********************** single samples ***************************/ | ||
223 | //less shaped, book 0 | ||
224 | d->HuffQ3[0][0].Code = 12; d->HuffQ3[0][0].Length = 4; | ||
225 | d->HuffQ3[0][1].Code = 4; d->HuffQ3[0][1].Length = 3; | ||
226 | d->HuffQ3[0][2].Code = 0; d->HuffQ3[0][2].Length = 2; | ||
227 | d->HuffQ3[0][3].Code = 1; d->HuffQ3[0][3].Length = 2; | ||
228 | d->HuffQ3[0][4].Code = 7; d->HuffQ3[0][4].Length = 3; | ||
229 | d->HuffQ3[0][5].Code = 5; d->HuffQ3[0][5].Length = 3; | ||
230 | d->HuffQ3[0][6].Code = 13; d->HuffQ3[0][6].Length = 4; | ||
231 | |||
232 | //more shaped, book 1 | ||
233 | d->HuffQ3[1][0].Code = 4; d->HuffQ3[1][0].Length = 5; | ||
234 | d->HuffQ3[1][1].Code = 3; d->HuffQ3[1][1].Length = 4; | ||
235 | d->HuffQ3[1][2].Code = 2; d->HuffQ3[1][2].Length = 2; | ||
236 | d->HuffQ3[1][3].Code = 3; d->HuffQ3[1][3].Length = 2; | ||
237 | d->HuffQ3[1][4].Code = 1; d->HuffQ3[1][4].Length = 2; | ||
238 | d->HuffQ3[1][5].Code = 0; d->HuffQ3[1][5].Length = 3; | ||
239 | d->HuffQ3[1][6].Code = 5; d->HuffQ3[1][6].Length = 5; | ||
240 | |||
241 | /********************** 9-step quantizer **************************/ | ||
242 | /*********************** single samples ***************************/ | ||
243 | //less shaped, book 0 | ||
244 | d->HuffQ4[0][0].Code = 5; d->HuffQ4[0][0].Length = 4; | ||
245 | d->HuffQ4[0][1].Code = 0; d->HuffQ4[0][1].Length = 3; | ||
246 | d->HuffQ4[0][2].Code = 4; d->HuffQ4[0][2].Length = 3; | ||
247 | d->HuffQ4[0][3].Code = 6; d->HuffQ4[0][3].Length = 3; | ||
248 | d->HuffQ4[0][4].Code = 7; d->HuffQ4[0][4].Length = 3; | ||
249 | d->HuffQ4[0][5].Code = 5; d->HuffQ4[0][5].Length = 3; | ||
250 | d->HuffQ4[0][6].Code = 3; d->HuffQ4[0][6].Length = 3; | ||
251 | d->HuffQ4[0][7].Code = 1; d->HuffQ4[0][7].Length = 3; | ||
252 | d->HuffQ4[0][8].Code = 4; d->HuffQ4[0][8].Length = 4; | ||
253 | |||
254 | //more shaped, book 1 | ||
255 | d->HuffQ4[1][0].Code = 9; d->HuffQ4[1][0].Length = 5; | ||
256 | d->HuffQ4[1][1].Code = 12; d->HuffQ4[1][1].Length = 4; | ||
257 | d->HuffQ4[1][2].Code = 3; d->HuffQ4[1][2].Length = 3; | ||
258 | d->HuffQ4[1][3].Code = 0; d->HuffQ4[1][3].Length = 2; | ||
259 | d->HuffQ4[1][4].Code = 2; d->HuffQ4[1][4].Length = 2; | ||
260 | d->HuffQ4[1][5].Code = 7; d->HuffQ4[1][5].Length = 3; | ||
261 | d->HuffQ4[1][6].Code = 13; d->HuffQ4[1][6].Length = 4; | ||
262 | d->HuffQ4[1][7].Code = 5; d->HuffQ4[1][7].Length = 4; | ||
263 | d->HuffQ4[1][8].Code = 8; d->HuffQ4[1][8].Length = 5; | ||
264 | |||
265 | /********************* 15-step quantizer **************************/ | ||
266 | /*********************** single samples ***************************/ | ||
267 | //less shaped, book 0 | ||
268 | d->HuffQ5[0][ 0].Code = 57; d->HuffQ5[0][ 0].Length = 6; | ||
269 | d->HuffQ5[0][ 1].Code = 23; d->HuffQ5[0][ 1].Length = 5; | ||
270 | d->HuffQ5[0][ 2].Code = 8; d->HuffQ5[0][ 2].Length = 4; | ||
271 | d->HuffQ5[0][ 3].Code = 10; d->HuffQ5[0][ 3].Length = 4; | ||
272 | d->HuffQ5[0][ 4].Code = 13; d->HuffQ5[0][ 4].Length = 4; | ||
273 | d->HuffQ5[0][ 5].Code = 0; d->HuffQ5[0][ 5].Length = 3; | ||
274 | d->HuffQ5[0][ 6].Code = 2; d->HuffQ5[0][ 6].Length = 3; | ||
275 | d->HuffQ5[0][ 7].Code = 3; d->HuffQ5[0][ 7].Length = 3; | ||
276 | d->HuffQ5[0][ 8].Code = 1; d->HuffQ5[0][ 8].Length = 3; | ||
277 | d->HuffQ5[0][ 9].Code = 15; d->HuffQ5[0][ 9].Length = 4; | ||
278 | d->HuffQ5[0][10].Code = 12; d->HuffQ5[0][10].Length = 4; | ||
279 | d->HuffQ5[0][11].Code = 9; d->HuffQ5[0][11].Length = 4; | ||
280 | d->HuffQ5[0][12].Code = 29; d->HuffQ5[0][12].Length = 5; | ||
281 | d->HuffQ5[0][13].Code = 22; d->HuffQ5[0][13].Length = 5; | ||
282 | d->HuffQ5[0][14].Code = 56; d->HuffQ5[0][14].Length = 6; | ||
283 | |||
284 | //more shaped, book 1 | ||
285 | d->HuffQ5[1][ 0].Code = 229; d->HuffQ5[1][ 0].Length = 8; | ||
286 | d->HuffQ5[1][ 1].Code = 56; d->HuffQ5[1][ 1].Length = 6; | ||
287 | d->HuffQ5[1][ 2].Code = 7; d->HuffQ5[1][ 2].Length = 5; | ||
288 | d->HuffQ5[1][ 3].Code = 2; d->HuffQ5[1][ 3].Length = 4; | ||
289 | d->HuffQ5[1][ 4].Code = 0; d->HuffQ5[1][ 4].Length = 3; | ||
290 | d->HuffQ5[1][ 5].Code = 3; d->HuffQ5[1][ 5].Length = 3; | ||
291 | d->HuffQ5[1][ 6].Code = 5; d->HuffQ5[1][ 6].Length = 3; | ||
292 | d->HuffQ5[1][ 7].Code = 6; d->HuffQ5[1][ 7].Length = 3; | ||
293 | d->HuffQ5[1][ 8].Code = 4; d->HuffQ5[1][ 8].Length = 3; | ||
294 | d->HuffQ5[1][ 9].Code = 2; d->HuffQ5[1][ 9].Length = 3; | ||
295 | d->HuffQ5[1][10].Code = 15; d->HuffQ5[1][10].Length = 4; | ||
296 | d->HuffQ5[1][11].Code = 29; d->HuffQ5[1][11].Length = 5; | ||
297 | d->HuffQ5[1][12].Code = 6; d->HuffQ5[1][12].Length = 5; | ||
298 | d->HuffQ5[1][13].Code = 115; d->HuffQ5[1][13].Length = 7; | ||
299 | d->HuffQ5[1][14].Code = 228; d->HuffQ5[1][14].Length = 8; | ||
300 | |||
301 | /********************* 31-step quantizer **************************/ | ||
302 | /*********************** single samples ***************************/ | ||
303 | //less shaped, book 0 | ||
304 | d->HuffQ6[0][ 0].Code = 65; d->HuffQ6[0][ 0].Length = 7; | ||
305 | d->HuffQ6[0][ 1].Code = 6; d->HuffQ6[0][ 1].Length = 6; | ||
306 | d->HuffQ6[0][ 2].Code = 44; d->HuffQ6[0][ 2].Length = 6; | ||
307 | d->HuffQ6[0][ 3].Code = 45; d->HuffQ6[0][ 3].Length = 6; | ||
308 | d->HuffQ6[0][ 4].Code = 59; d->HuffQ6[0][ 4].Length = 6; | ||
309 | d->HuffQ6[0][ 5].Code = 13; d->HuffQ6[0][ 5].Length = 5; | ||
310 | d->HuffQ6[0][ 6].Code = 17; d->HuffQ6[0][ 6].Length = 5; | ||
311 | d->HuffQ6[0][ 7].Code = 19; d->HuffQ6[0][ 7].Length = 5; | ||
312 | d->HuffQ6[0][ 8].Code = 23; d->HuffQ6[0][ 8].Length = 5; | ||
313 | d->HuffQ6[0][ 9].Code = 21; d->HuffQ6[0][ 9].Length = 5; | ||
314 | d->HuffQ6[0][10].Code = 26; d->HuffQ6[0][10].Length = 5; | ||
315 | d->HuffQ6[0][11].Code = 30; d->HuffQ6[0][11].Length = 5; | ||
316 | d->HuffQ6[0][12].Code = 0; d->HuffQ6[0][12].Length = 4; | ||
317 | d->HuffQ6[0][13].Code = 2; d->HuffQ6[0][13].Length = 4; | ||
318 | d->HuffQ6[0][14].Code = 5; d->HuffQ6[0][14].Length = 4; | ||
319 | d->HuffQ6[0][15].Code = 7; d->HuffQ6[0][15].Length = 4; | ||
320 | d->HuffQ6[0][16].Code = 3; d->HuffQ6[0][16].Length = 4; | ||
321 | d->HuffQ6[0][17].Code = 4; d->HuffQ6[0][17].Length = 4; | ||
322 | d->HuffQ6[0][18].Code = 31; d->HuffQ6[0][18].Length = 5; | ||
323 | d->HuffQ6[0][19].Code = 28; d->HuffQ6[0][19].Length = 5; | ||
324 | d->HuffQ6[0][20].Code = 25; d->HuffQ6[0][20].Length = 5; | ||
325 | d->HuffQ6[0][21].Code = 27; d->HuffQ6[0][21].Length = 5; | ||
326 | d->HuffQ6[0][22].Code = 24; d->HuffQ6[0][22].Length = 5; | ||
327 | d->HuffQ6[0][23].Code = 20; d->HuffQ6[0][23].Length = 5; | ||
328 | d->HuffQ6[0][24].Code = 18; d->HuffQ6[0][24].Length = 5; | ||
329 | d->HuffQ6[0][25].Code = 12; d->HuffQ6[0][25].Length = 5; | ||
330 | d->HuffQ6[0][26].Code = 2; d->HuffQ6[0][26].Length = 5; | ||
331 | d->HuffQ6[0][27].Code = 58; d->HuffQ6[0][27].Length = 6; | ||
332 | d->HuffQ6[0][28].Code = 33; d->HuffQ6[0][28].Length = 6; | ||
333 | d->HuffQ6[0][29].Code = 7; d->HuffQ6[0][29].Length = 6; | ||
334 | d->HuffQ6[0][30].Code = 64; d->HuffQ6[0][30].Length = 7; | ||
335 | |||
336 | //more shaped, book 1 | ||
337 | d->HuffQ6[1][ 0].Code = 6472; d->HuffQ6[1][ 0].Length = 13; | ||
338 | d->HuffQ6[1][ 1].Code = 6474; d->HuffQ6[1][ 1].Length = 13; | ||
339 | d->HuffQ6[1][ 2].Code = 808; d->HuffQ6[1][ 2].Length = 10; | ||
340 | d->HuffQ6[1][ 3].Code = 405; d->HuffQ6[1][ 3].Length = 9; | ||
341 | d->HuffQ6[1][ 4].Code = 203; d->HuffQ6[1][ 4].Length = 8; | ||
342 | d->HuffQ6[1][ 5].Code = 102; d->HuffQ6[1][ 5].Length = 7; | ||
343 | d->HuffQ6[1][ 6].Code = 49; d->HuffQ6[1][ 6].Length = 6; | ||
344 | d->HuffQ6[1][ 7].Code = 9; d->HuffQ6[1][ 7].Length = 5; | ||
345 | d->HuffQ6[1][ 8].Code = 15; d->HuffQ6[1][ 8].Length = 5; | ||
346 | d->HuffQ6[1][ 9].Code = 31; d->HuffQ6[1][ 9].Length = 5; | ||
347 | d->HuffQ6[1][10].Code = 2; d->HuffQ6[1][10].Length = 4; | ||
348 | d->HuffQ6[1][11].Code = 6; d->HuffQ6[1][11].Length = 4; | ||
349 | d->HuffQ6[1][12].Code = 8; d->HuffQ6[1][12].Length = 4; | ||
350 | d->HuffQ6[1][13].Code = 11; d->HuffQ6[1][13].Length = 4; | ||
351 | d->HuffQ6[1][14].Code = 13; d->HuffQ6[1][14].Length = 4; | ||
352 | d->HuffQ6[1][15].Code = 0; d->HuffQ6[1][15].Length = 3; | ||
353 | d->HuffQ6[1][16].Code = 14; d->HuffQ6[1][16].Length = 4; | ||
354 | d->HuffQ6[1][17].Code = 10; d->HuffQ6[1][17].Length = 4; | ||
355 | d->HuffQ6[1][18].Code = 9; d->HuffQ6[1][18].Length = 4; | ||
356 | d->HuffQ6[1][19].Code = 5; d->HuffQ6[1][19].Length = 4; | ||
357 | d->HuffQ6[1][20].Code = 3; d->HuffQ6[1][20].Length = 4; | ||
358 | d->HuffQ6[1][21].Code = 30; d->HuffQ6[1][21].Length = 5; | ||
359 | d->HuffQ6[1][22].Code = 14; d->HuffQ6[1][22].Length = 5; | ||
360 | d->HuffQ6[1][23].Code = 8; d->HuffQ6[1][23].Length = 5; | ||
361 | d->HuffQ6[1][24].Code = 48; d->HuffQ6[1][24].Length = 6; | ||
362 | d->HuffQ6[1][25].Code = 103; d->HuffQ6[1][25].Length = 7; | ||
363 | d->HuffQ6[1][26].Code = 201; d->HuffQ6[1][26].Length = 8; | ||
364 | d->HuffQ6[1][27].Code = 200; d->HuffQ6[1][27].Length = 8; | ||
365 | d->HuffQ6[1][28].Code = 1619; d->HuffQ6[1][28].Length = 11; | ||
366 | d->HuffQ6[1][29].Code = 6473; d->HuffQ6[1][29].Length = 13; | ||
367 | d->HuffQ6[1][30].Code = 6475; d->HuffQ6[1][30].Length = 13; | ||
368 | |||
369 | /********************* 63-step quantizer **************************/ | ||
370 | /*********************** single samples ***************************/ | ||
371 | //less shaped, book 0 | ||
372 | d->HuffQ7[0][ 0].Code = 103; d->HuffQ7[0][ 0].Length = 8; /* 0.003338 - 01100111 */ | ||
373 | d->HuffQ7[0][ 1].Code = 153; d->HuffQ7[0][ 1].Length = 8; /* 0.003766 - 10011001 */ | ||
374 | d->HuffQ7[0][ 2].Code = 181; d->HuffQ7[0][ 2].Length = 8; /* 0.004715 - 10110101 */ | ||
375 | d->HuffQ7[0][ 3].Code = 233; d->HuffQ7[0][ 3].Length = 8; /* 0.005528 - 11101001 */ | ||
376 | d->HuffQ7[0][ 4].Code = 64; d->HuffQ7[0][ 4].Length = 7; /* 0.006677 - 1000000 */ | ||
377 | d->HuffQ7[0][ 5].Code = 65; d->HuffQ7[0][ 5].Length = 7; /* 0.007041 - 1000001 */ | ||
378 | d->HuffQ7[0][ 6].Code = 77; d->HuffQ7[0][ 6].Length = 7; /* 0.007733 - 1001101 */ | ||
379 | d->HuffQ7[0][ 7].Code = 81; d->HuffQ7[0][ 7].Length = 7; /* 0.008296 - 1010001 */ | ||
380 | d->HuffQ7[0][ 8].Code = 91; d->HuffQ7[0][ 8].Length = 7; /* 0.009295 - 1011011 */ | ||
381 | d->HuffQ7[0][ 9].Code = 113; d->HuffQ7[0][ 9].Length = 7; /* 0.010814 - 1110001 */ | ||
382 | d->HuffQ7[0][10].Code = 112; d->HuffQ7[0][10].Length = 7; /* 0.010807 - 1110000 */ | ||
383 | d->HuffQ7[0][11].Code = 24; d->HuffQ7[0][11].Length = 6; /* 0.012748 - 011000 */ | ||
384 | d->HuffQ7[0][12].Code = 29; d->HuffQ7[0][12].Length = 6; /* 0.013390 - 011101 */ | ||
385 | d->HuffQ7[0][13].Code = 35; d->HuffQ7[0][13].Length = 6; /* 0.014224 - 100011 */ | ||
386 | d->HuffQ7[0][14].Code = 37; d->HuffQ7[0][14].Length = 6; /* 0.015201 - 100101 */ | ||
387 | d->HuffQ7[0][15].Code = 41; d->HuffQ7[0][15].Length = 6; /* 0.016642 - 101001 */ | ||
388 | d->HuffQ7[0][16].Code = 44; d->HuffQ7[0][16].Length = 6; /* 0.017292 - 101100 */ | ||
389 | d->HuffQ7[0][17].Code = 46; d->HuffQ7[0][17].Length = 6; /* 0.018647 - 101110 */ | ||
390 | d->HuffQ7[0][18].Code = 51; d->HuffQ7[0][18].Length = 6; /* 0.020473 - 110011 */ | ||
391 | d->HuffQ7[0][19].Code = 49; d->HuffQ7[0][19].Length = 6; /* 0.020152 - 110001 */ | ||
392 | d->HuffQ7[0][20].Code = 54; d->HuffQ7[0][20].Length = 6; /* 0.021315 - 110110 */ | ||
393 | d->HuffQ7[0][21].Code = 55; d->HuffQ7[0][21].Length = 6; /* 0.021358 - 110111 */ | ||
394 | d->HuffQ7[0][22].Code = 57; d->HuffQ7[0][22].Length = 6; /* 0.021700 - 111001 */ | ||
395 | d->HuffQ7[0][23].Code = 60; d->HuffQ7[0][23].Length = 6; /* 0.022449 - 111100 */ | ||
396 | d->HuffQ7[0][24].Code = 0; d->HuffQ7[0][24].Length = 5; /* 0.023063 - 00000 */ | ||
397 | d->HuffQ7[0][25].Code = 2; d->HuffQ7[0][25].Length = 5; /* 0.023854 - 00010 */ | ||
398 | d->HuffQ7[0][26].Code = 10; d->HuffQ7[0][26].Length = 5; /* 0.025481 - 01010 */ | ||
399 | d->HuffQ7[0][27].Code = 5; d->HuffQ7[0][27].Length = 5; /* 0.024867 - 00101 */ | ||
400 | d->HuffQ7[0][28].Code = 9; d->HuffQ7[0][28].Length = 5; /* 0.025352 - 01001 */ | ||
401 | d->HuffQ7[0][29].Code = 6; d->HuffQ7[0][29].Length = 5; /* 0.025074 - 00110 */ | ||
402 | d->HuffQ7[0][30].Code = 13; d->HuffQ7[0][30].Length = 5; /* 0.025745 - 01101 */ | ||
403 | d->HuffQ7[0][31].Code = 7; d->HuffQ7[0][31].Length = 5; /* 0.025195 - 00111 */ | ||
404 | d->HuffQ7[0][32].Code = 11; d->HuffQ7[0][32].Length = 5; /* 0.025502 - 01011 */ | ||
405 | d->HuffQ7[0][33].Code = 15; d->HuffQ7[0][33].Length = 5; /* 0.026251 - 01111 */ | ||
406 | d->HuffQ7[0][34].Code = 8; d->HuffQ7[0][34].Length = 5; /* 0.025260 - 01000 */ | ||
407 | d->HuffQ7[0][35].Code = 4; d->HuffQ7[0][35].Length = 5; /* 0.024418 - 00100 */ | ||
408 | d->HuffQ7[0][36].Code = 3; d->HuffQ7[0][36].Length = 5; /* 0.023983 - 00011 */ | ||
409 | d->HuffQ7[0][37].Code = 1; d->HuffQ7[0][37].Length = 5; /* 0.023697 - 00001 */ | ||
410 | d->HuffQ7[0][38].Code = 63; d->HuffQ7[0][38].Length = 6; /* 0.023041 - 111111 */ | ||
411 | d->HuffQ7[0][39].Code = 62; d->HuffQ7[0][39].Length = 6; /* 0.022656 - 111110 */ | ||
412 | d->HuffQ7[0][40].Code = 61; d->HuffQ7[0][40].Length = 6; /* 0.022549 - 111101 */ | ||
413 | d->HuffQ7[0][41].Code = 53; d->HuffQ7[0][41].Length = 6; /* 0.021151 - 110101 */ | ||
414 | d->HuffQ7[0][42].Code = 59; d->HuffQ7[0][42].Length = 6; /* 0.022042 - 111011 */ | ||
415 | d->HuffQ7[0][43].Code = 52; d->HuffQ7[0][43].Length = 6; /* 0.020837 - 110100 */ | ||
416 | d->HuffQ7[0][44].Code = 48; d->HuffQ7[0][44].Length = 6; /* 0.019446 - 110000 */ | ||
417 | d->HuffQ7[0][45].Code = 47; d->HuffQ7[0][45].Length = 6; /* 0.019189 - 101111 */ | ||
418 | d->HuffQ7[0][46].Code = 43; d->HuffQ7[0][46].Length = 6; /* 0.017177 - 101011 */ | ||
419 | d->HuffQ7[0][47].Code = 42; d->HuffQ7[0][47].Length = 6; /* 0.017035 - 101010 */ | ||
420 | d->HuffQ7[0][48].Code = 39; d->HuffQ7[0][48].Length = 6; /* 0.015287 - 100111 */ | ||
421 | d->HuffQ7[0][49].Code = 36; d->HuffQ7[0][49].Length = 6; /* 0.014559 - 100100 */ | ||
422 | d->HuffQ7[0][50].Code = 33; d->HuffQ7[0][50].Length = 6; /* 0.014117 - 100001 */ | ||
423 | d->HuffQ7[0][51].Code = 28; d->HuffQ7[0][51].Length = 6; /* 0.012776 - 011100 */ | ||
424 | d->HuffQ7[0][52].Code = 117; d->HuffQ7[0][52].Length = 7; /* 0.011107 - 1110101 */ | ||
425 | d->HuffQ7[0][53].Code = 101; d->HuffQ7[0][53].Length = 7; /* 0.010636 - 1100101 */ | ||
426 | d->HuffQ7[0][54].Code = 100; d->HuffQ7[0][54].Length = 7; /* 0.009751 - 1100100 */ | ||
427 | d->HuffQ7[0][55].Code = 80; d->HuffQ7[0][55].Length = 7; /* 0.008132 - 1010000 */ | ||
428 | d->HuffQ7[0][56].Code = 69; d->HuffQ7[0][56].Length = 7; /* 0.007091 - 1000101 */ | ||
429 | d->HuffQ7[0][57].Code = 68; d->HuffQ7[0][57].Length = 7; /* 0.007084 - 1000100 */ | ||
430 | d->HuffQ7[0][58].Code = 50; d->HuffQ7[0][58].Length = 7; /* 0.006277 - 0110010 */ | ||
431 | d->HuffQ7[0][59].Code = 232; d->HuffQ7[0][59].Length = 8; /* 0.005386 - 11101000 */ | ||
432 | d->HuffQ7[0][60].Code = 180; d->HuffQ7[0][60].Length = 8; /* 0.004408 - 10110100 */ | ||
433 | d->HuffQ7[0][61].Code = 152; d->HuffQ7[0][61].Length = 8; /* 0.003759 - 10011000 */ | ||
434 | d->HuffQ7[0][62].Code = 102; d->HuffQ7[0][62].Length = 8; /* 0.003160 - 01100110 */ | ||
435 | |||
436 | //more shaped, book 1 | ||
437 | d->HuffQ7[1][ 0].Code = 14244; d->HuffQ7[1][ 0].Length = 14; /* 0.000059 - 11011110100100 */ | ||
438 | d->HuffQ7[1][ 1].Code = 14253; d->HuffQ7[1][ 1].Length = 14; /* 0.000098 - 11011110101101 */ | ||
439 | d->HuffQ7[1][ 2].Code = 14246; d->HuffQ7[1][ 2].Length = 14; /* 0.000078 - 11011110100110 */ | ||
440 | d->HuffQ7[1][ 3].Code = 14254; d->HuffQ7[1][ 3].Length = 14; /* 0.000111 - 11011110101110 */ | ||
441 | d->HuffQ7[1][ 4].Code = 3562; d->HuffQ7[1][ 4].Length = 12; /* 0.000320 - 110111101010 */ | ||
442 | d->HuffQ7[1][ 5].Code = 752; d->HuffQ7[1][ 5].Length = 10; /* 0.000920 - 1011110000 */ | ||
443 | d->HuffQ7[1][ 6].Code = 753; d->HuffQ7[1][ 6].Length = 10; /* 0.001057 - 1011110001 */ | ||
444 | d->HuffQ7[1][ 7].Code = 160; d->HuffQ7[1][ 7].Length = 9; /* 0.001403 - 010100000 */ | ||
445 | d->HuffQ7[1][ 8].Code = 162; d->HuffQ7[1][ 8].Length = 9; /* 0.001579 - 010100010 */ | ||
446 | d->HuffQ7[1][ 9].Code = 444; d->HuffQ7[1][ 9].Length = 9; /* 0.002486 - 110111100 */ | ||
447 | d->HuffQ7[1][10].Code = 122; d->HuffQ7[1][10].Length = 8; /* 0.003772 - 01111010 */ | ||
448 | d->HuffQ7[1][11].Code = 223; d->HuffQ7[1][11].Length = 8; /* 0.005710 - 11011111 */ | ||
449 | d->HuffQ7[1][12].Code = 60; d->HuffQ7[1][12].Length = 7; /* 0.006858 - 0111100 */ | ||
450 | d->HuffQ7[1][13].Code = 73; d->HuffQ7[1][13].Length = 7; /* 0.008033 - 1001001 */ | ||
451 | d->HuffQ7[1][14].Code = 110; d->HuffQ7[1][14].Length = 7; /* 0.009827 - 1101110 */ | ||
452 | d->HuffQ7[1][15].Code = 14; d->HuffQ7[1][15].Length = 6; /* 0.012601 - 001110 */ | ||
453 | d->HuffQ7[1][16].Code = 24; d->HuffQ7[1][16].Length = 6; /* 0.013194 - 011000 */ | ||
454 | d->HuffQ7[1][17].Code = 25; d->HuffQ7[1][17].Length = 6; /* 0.013938 - 011001 */ | ||
455 | d->HuffQ7[1][18].Code = 34; d->HuffQ7[1][18].Length = 6; /* 0.015693 - 100010 */ | ||
456 | d->HuffQ7[1][19].Code = 37; d->HuffQ7[1][19].Length = 6; /* 0.017846 - 100101 */ | ||
457 | d->HuffQ7[1][20].Code = 54; d->HuffQ7[1][20].Length = 6; /* 0.020078 - 110110 */ | ||
458 | d->HuffQ7[1][21].Code = 3; d->HuffQ7[1][21].Length = 5; /* 0.022975 - 00011 */ | ||
459 | d->HuffQ7[1][22].Code = 9; d->HuffQ7[1][22].Length = 5; /* 0.025631 - 01001 */ | ||
460 | d->HuffQ7[1][23].Code = 11; d->HuffQ7[1][23].Length = 5; /* 0.027021 - 01011 */ | ||
461 | d->HuffQ7[1][24].Code = 16; d->HuffQ7[1][24].Length = 5; /* 0.031465 - 10000 */ | ||
462 | d->HuffQ7[1][25].Code = 19; d->HuffQ7[1][25].Length = 5; /* 0.034244 - 10011 */ | ||
463 | d->HuffQ7[1][26].Code = 21; d->HuffQ7[1][26].Length = 5; /* 0.035921 - 10101 */ | ||
464 | d->HuffQ7[1][27].Code = 24; d->HuffQ7[1][27].Length = 5; /* 0.037938 - 11000 */ | ||
465 | d->HuffQ7[1][28].Code = 26; d->HuffQ7[1][28].Length = 5; /* 0.039595 - 11010 */ | ||
466 | d->HuffQ7[1][29].Code = 29; d->HuffQ7[1][29].Length = 5; /* 0.041546 - 11101 */ | ||
467 | d->HuffQ7[1][30].Code = 31; d->HuffQ7[1][30].Length = 5; /* 0.042623 - 11111 */ | ||
468 | d->HuffQ7[1][31].Code = 2; d->HuffQ7[1][31].Length = 4; /* 0.045180 - 0010 */ | ||
469 | d->HuffQ7[1][32].Code = 0; d->HuffQ7[1][32].Length = 4; /* 0.043151 - 0000 */ | ||
470 | d->HuffQ7[1][33].Code = 30; d->HuffQ7[1][33].Length = 5; /* 0.042538 - 11110 */ | ||
471 | d->HuffQ7[1][34].Code = 28; d->HuffQ7[1][34].Length = 5; /* 0.041422 - 11100 */ | ||
472 | d->HuffQ7[1][35].Code = 25; d->HuffQ7[1][35].Length = 5; /* 0.039145 - 11001 */ | ||
473 | d->HuffQ7[1][36].Code = 22; d->HuffQ7[1][36].Length = 5; /* 0.036691 - 10110 */ | ||
474 | d->HuffQ7[1][37].Code = 20; d->HuffQ7[1][37].Length = 5; /* 0.034955 - 10100 */ | ||
475 | d->HuffQ7[1][38].Code = 14; d->HuffQ7[1][38].Length = 5; /* 0.029155 - 01110 */ | ||
476 | d->HuffQ7[1][39].Code = 13; d->HuffQ7[1][39].Length = 5; /* 0.027921 - 01101 */ | ||
477 | d->HuffQ7[1][40].Code = 8; d->HuffQ7[1][40].Length = 5; /* 0.025553 - 01000 */ | ||
478 | d->HuffQ7[1][41].Code = 6; d->HuffQ7[1][41].Length = 5; /* 0.023093 - 00110 */ | ||
479 | d->HuffQ7[1][42].Code = 2; d->HuffQ7[1][42].Length = 5; /* 0.021200 - 00010 */ | ||
480 | d->HuffQ7[1][43].Code = 46; d->HuffQ7[1][43].Length = 6; /* 0.018134 - 101110 */ | ||
481 | d->HuffQ7[1][44].Code = 35; d->HuffQ7[1][44].Length = 6; /* 0.015824 - 100011 */ | ||
482 | d->HuffQ7[1][45].Code = 31; d->HuffQ7[1][45].Length = 6; /* 0.014701 - 011111 */ | ||
483 | d->HuffQ7[1][46].Code = 21; d->HuffQ7[1][46].Length = 6; /* 0.013187 - 010101 */ | ||
484 | d->HuffQ7[1][47].Code = 15; d->HuffQ7[1][47].Length = 6; /* 0.012776 - 001111 */ | ||
485 | d->HuffQ7[1][48].Code = 95; d->HuffQ7[1][48].Length = 7; /* 0.009664 - 1011111 */ | ||
486 | d->HuffQ7[1][49].Code = 72; d->HuffQ7[1][49].Length = 7; /* 0.007922 - 1001000 */ | ||
487 | d->HuffQ7[1][50].Code = 41; d->HuffQ7[1][50].Length = 7; /* 0.006838 - 0101001 */ | ||
488 | d->HuffQ7[1][51].Code = 189; d->HuffQ7[1][51].Length = 8; /* 0.005024 - 10111101 */ | ||
489 | d->HuffQ7[1][52].Code = 123; d->HuffQ7[1][52].Length = 8; /* 0.003830 - 01111011 */ | ||
490 | d->HuffQ7[1][53].Code = 377; d->HuffQ7[1][53].Length = 9; /* 0.002232 - 101111001 */ | ||
491 | d->HuffQ7[1][54].Code = 161; d->HuffQ7[1][54].Length = 9; /* 0.001566 - 010100001 */ | ||
492 | d->HuffQ7[1][55].Code = 891; d->HuffQ7[1][55].Length = 10; /* 0.001383 - 1101111011 */ | ||
493 | d->HuffQ7[1][56].Code = 327; d->HuffQ7[1][56].Length = 10; /* 0.000900 - 0101000111 */ | ||
494 | d->HuffQ7[1][57].Code = 326; d->HuffQ7[1][57].Length = 10; /* 0.000790 - 0101000110 */ | ||
495 | d->HuffQ7[1][58].Code = 3560; d->HuffQ7[1][58].Length = 12; /* 0.000254 - 110111101000 */ | ||
496 | d->HuffQ7[1][59].Code = 14255; d->HuffQ7[1][59].Length = 14; /* 0.000117 - 11011110101111 */ | ||
497 | d->HuffQ7[1][60].Code = 14247; d->HuffQ7[1][60].Length = 14; /* 0.000085 - 11011110100111 */ | ||
498 | d->HuffQ7[1][61].Code = 14252; d->HuffQ7[1][61].Length = 14; /* 0.000085 - 11011110101100 */ | ||
499 | d->HuffQ7[1][62].Code = 14245; d->HuffQ7[1][62].Length = 14; /* 0.000065 - 11011110100101 */ | ||
500 | } | ||