|
1 /******************************************************************** |
|
2 * * |
|
3 * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * |
|
4 * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * |
|
5 * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * |
|
6 * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * |
|
7 * * |
|
8 * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 * |
|
9 * by the Xiph.Org Foundation http://www.xiph.org/ * |
|
10 * * |
|
11 ******************************************************************** |
|
12 |
|
13 function: toplevel residue templates 8/11kHz |
|
14 last mod: $Id: residue_8.h 16962 2010-03-11 07:30:34Z xiphmont $ |
|
15 |
|
16 ********************************************************************/ |
|
17 |
|
18 #include "vorbis/codec.h" |
|
19 #include "backends.h" |
|
20 |
|
21 /***** residue backends *********************************************/ |
|
22 |
|
23 static const static_bookblock _resbook_8s_0={ |
|
24 { |
|
25 {0}, |
|
26 {0,0,&_8c0_s_p1_0}, |
|
27 {0}, |
|
28 {0,0,&_8c0_s_p3_0}, |
|
29 {0,0,&_8c0_s_p4_0}, |
|
30 {0,0,&_8c0_s_p5_0}, |
|
31 {0,0,&_8c0_s_p6_0}, |
|
32 {&_8c0_s_p7_0,&_8c0_s_p7_1}, |
|
33 {&_8c0_s_p8_0,&_8c0_s_p8_1}, |
|
34 {&_8c0_s_p9_0,&_8c0_s_p9_1,&_8c0_s_p9_2} |
|
35 } |
|
36 }; |
|
37 static const static_bookblock _resbook_8s_1={ |
|
38 { |
|
39 {0}, |
|
40 {0,0,&_8c1_s_p1_0}, |
|
41 {0}, |
|
42 {0,0,&_8c1_s_p3_0}, |
|
43 {0,0,&_8c1_s_p4_0}, |
|
44 {0,0,&_8c1_s_p5_0}, |
|
45 {0,0,&_8c1_s_p6_0}, |
|
46 {&_8c1_s_p7_0,&_8c1_s_p7_1}, |
|
47 {&_8c1_s_p8_0,&_8c1_s_p8_1}, |
|
48 {&_8c1_s_p9_0,&_8c1_s_p9_1,&_8c1_s_p9_2} |
|
49 } |
|
50 }; |
|
51 |
|
52 static const vorbis_residue_template _res_8s_0[]={ |
|
53 {2,0,32, &_residue_44_mid, |
|
54 &_huff_book__8c0_s_single,&_huff_book__8c0_s_single, |
|
55 &_resbook_8s_0,&_resbook_8s_0}, |
|
56 }; |
|
57 static const vorbis_residue_template _res_8s_1[]={ |
|
58 {2,0,32, &_residue_44_mid, |
|
59 &_huff_book__8c1_s_single,&_huff_book__8c1_s_single, |
|
60 &_resbook_8s_1,&_resbook_8s_1}, |
|
61 }; |
|
62 |
|
63 static const vorbis_mapping_template _mapres_template_8_stereo[2]={ |
|
64 { _map_nominal, _res_8s_0 }, /* 0 */ |
|
65 { _map_nominal, _res_8s_1 }, /* 1 */ |
|
66 }; |
|
67 |
|
68 static const static_bookblock _resbook_8u_0={ |
|
69 { |
|
70 {0}, |
|
71 {0,0,&_8u0__p1_0}, |
|
72 {0,0,&_8u0__p2_0}, |
|
73 {0,0,&_8u0__p3_0}, |
|
74 {0,0,&_8u0__p4_0}, |
|
75 {0,0,&_8u0__p5_0}, |
|
76 {&_8u0__p6_0,&_8u0__p6_1}, |
|
77 {&_8u0__p7_0,&_8u0__p7_1,&_8u0__p7_2} |
|
78 } |
|
79 }; |
|
80 static const static_bookblock _resbook_8u_1={ |
|
81 { |
|
82 {0}, |
|
83 {0,0,&_8u1__p1_0}, |
|
84 {0,0,&_8u1__p2_0}, |
|
85 {0,0,&_8u1__p3_0}, |
|
86 {0,0,&_8u1__p4_0}, |
|
87 {0,0,&_8u1__p5_0}, |
|
88 {0,0,&_8u1__p6_0}, |
|
89 {&_8u1__p7_0,&_8u1__p7_1}, |
|
90 {&_8u1__p8_0,&_8u1__p8_1}, |
|
91 {&_8u1__p9_0,&_8u1__p9_1,&_8u1__p9_2} |
|
92 } |
|
93 }; |
|
94 |
|
95 static const vorbis_residue_template _res_8u_0[]={ |
|
96 {1,0,32, &_residue_44_low_un, |
|
97 &_huff_book__8u0__single,&_huff_book__8u0__single, |
|
98 &_resbook_8u_0,&_resbook_8u_0}, |
|
99 }; |
|
100 static const vorbis_residue_template _res_8u_1[]={ |
|
101 {1,0,32, &_residue_44_mid_un, |
|
102 &_huff_book__8u1__single,&_huff_book__8u1__single, |
|
103 &_resbook_8u_1,&_resbook_8u_1}, |
|
104 }; |
|
105 |
|
106 static const vorbis_mapping_template _mapres_template_8_uncoupled[2]={ |
|
107 { _map_nominal_u, _res_8u_0 }, /* 0 */ |
|
108 { _map_nominal_u, _res_8u_1 }, /* 1 */ |
|
109 }; |