Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
godotengine
GitHub Repository: godotengine/godot
Path: blob/master/thirdparty/libvorbis/modes/residue_16.h
9899 views
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-2009 *
9
* by the Xiph.Org Foundation https://xiph.org/ *
10
* *
11
********************************************************************
12
13
function: toplevel residue templates 16/22kHz
14
15
********************************************************************/
16
17
/***** residue backends *********************************************/
18
19
static const static_bookblock _resbook_16s_0={
20
{
21
{0},
22
{0,0,&_16c0_s_p1_0},
23
{0},
24
{0,0,&_16c0_s_p3_0},
25
{0,0,&_16c0_s_p4_0},
26
{0,0,&_16c0_s_p5_0},
27
{0,0,&_16c0_s_p6_0},
28
{&_16c0_s_p7_0,&_16c0_s_p7_1},
29
{&_16c0_s_p8_0,&_16c0_s_p8_1},
30
{&_16c0_s_p9_0,&_16c0_s_p9_1,&_16c0_s_p9_2}
31
}
32
};
33
static const static_bookblock _resbook_16s_1={
34
{
35
{0},
36
{0,0,&_16c1_s_p1_0},
37
{0},
38
{0,0,&_16c1_s_p3_0},
39
{0,0,&_16c1_s_p4_0},
40
{0,0,&_16c1_s_p5_0},
41
{0,0,&_16c1_s_p6_0},
42
{&_16c1_s_p7_0,&_16c1_s_p7_1},
43
{&_16c1_s_p8_0,&_16c1_s_p8_1},
44
{&_16c1_s_p9_0,&_16c1_s_p9_1,&_16c1_s_p9_2}
45
}
46
};
47
static const static_bookblock _resbook_16s_2={
48
{
49
{0},
50
{0,0,&_16c2_s_p1_0},
51
{0,0,&_16c2_s_p2_0},
52
{0,0,&_16c2_s_p3_0},
53
{0,0,&_16c2_s_p4_0},
54
{&_16c2_s_p5_0,&_16c2_s_p5_1},
55
{&_16c2_s_p6_0,&_16c2_s_p6_1},
56
{&_16c2_s_p7_0,&_16c2_s_p7_1},
57
{&_16c2_s_p8_0,&_16c2_s_p8_1},
58
{&_16c2_s_p9_0,&_16c2_s_p9_1,&_16c2_s_p9_2}
59
}
60
};
61
62
static const vorbis_residue_template _res_16s_0[]={
63
{2,0,32, &_residue_44_mid,
64
&_huff_book__16c0_s_single,&_huff_book__16c0_s_single,
65
&_resbook_16s_0,&_resbook_16s_0},
66
};
67
static const vorbis_residue_template _res_16s_1[]={
68
{2,0,32, &_residue_44_mid,
69
&_huff_book__16c1_s_short,&_huff_book__16c1_s_short,
70
&_resbook_16s_1,&_resbook_16s_1},
71
72
{2,0,32, &_residue_44_mid,
73
&_huff_book__16c1_s_long,&_huff_book__16c1_s_long,
74
&_resbook_16s_1,&_resbook_16s_1}
75
};
76
static const vorbis_residue_template _res_16s_2[]={
77
{2,0,32, &_residue_44_high,
78
&_huff_book__16c2_s_short,&_huff_book__16c2_s_short,
79
&_resbook_16s_2,&_resbook_16s_2},
80
81
{2,0,32, &_residue_44_high,
82
&_huff_book__16c2_s_long,&_huff_book__16c2_s_long,
83
&_resbook_16s_2,&_resbook_16s_2}
84
};
85
86
static const vorbis_mapping_template _mapres_template_16_stereo[3]={
87
{ _map_nominal, _res_16s_0 }, /* 0 */
88
{ _map_nominal, _res_16s_1 }, /* 1 */
89
{ _map_nominal, _res_16s_2 }, /* 2 */
90
};
91
92
static const static_bookblock _resbook_16u_0={
93
{
94
{0},
95
{0,0,&_16u0__p1_0},
96
{0,0,&_16u0__p2_0},
97
{0,0,&_16u0__p3_0},
98
{0,0,&_16u0__p4_0},
99
{0,0,&_16u0__p5_0},
100
{&_16u0__p6_0,&_16u0__p6_1},
101
{&_16u0__p7_0,&_16u0__p7_1,&_16u0__p7_2}
102
}
103
};
104
static const static_bookblock _resbook_16u_1={
105
{
106
{0},
107
{0,0,&_16u1__p1_0},
108
{0,0,&_16u1__p2_0},
109
{0,0,&_16u1__p3_0},
110
{0,0,&_16u1__p4_0},
111
{0,0,&_16u1__p5_0},
112
{0,0,&_16u1__p6_0},
113
{&_16u1__p7_0,&_16u1__p7_1},
114
{&_16u1__p8_0,&_16u1__p8_1},
115
{&_16u1__p9_0,&_16u1__p9_1,&_16u1__p9_2}
116
}
117
};
118
static const static_bookblock _resbook_16u_2={
119
{
120
{0},
121
{0,0,&_16u2_p1_0},
122
{0,0,&_16u2_p2_0},
123
{0,0,&_16u2_p3_0},
124
{0,0,&_16u2_p4_0},
125
{&_16u2_p5_0,&_16u2_p5_1},
126
{&_16u2_p6_0,&_16u2_p6_1},
127
{&_16u2_p7_0,&_16u2_p7_1},
128
{&_16u2_p8_0,&_16u2_p8_1},
129
{&_16u2_p9_0,&_16u2_p9_1,&_16u2_p9_2}
130
}
131
};
132
133
static const vorbis_residue_template _res_16u_0[]={
134
{1,0,32, &_residue_44_low_un,
135
&_huff_book__16u0__single,&_huff_book__16u0__single,
136
&_resbook_16u_0,&_resbook_16u_0},
137
};
138
static const vorbis_residue_template _res_16u_1[]={
139
{1,0,32, &_residue_44_mid_un,
140
&_huff_book__16u1__short,&_huff_book__16u1__short,
141
&_resbook_16u_1,&_resbook_16u_1},
142
143
{1,0,32, &_residue_44_mid_un,
144
&_huff_book__16u1__long,&_huff_book__16u1__long,
145
&_resbook_16u_1,&_resbook_16u_1}
146
};
147
static const vorbis_residue_template _res_16u_2[]={
148
{1,0,32, &_residue_44_hi_un,
149
&_huff_book__16u2__short,&_huff_book__16u2__short,
150
&_resbook_16u_2,&_resbook_16u_2},
151
152
{1,0,32, &_residue_44_hi_un,
153
&_huff_book__16u2__long,&_huff_book__16u2__long,
154
&_resbook_16u_2,&_resbook_16u_2}
155
};
156
157
158
static const vorbis_mapping_template _mapres_template_16_uncoupled[3]={
159
{ _map_nominal_u, _res_16u_0 }, /* 0 */
160
{ _map_nominal_u, _res_16u_1 }, /* 1 */
161
{ _map_nominal_u, _res_16u_2 }, /* 2 */
162
};
163
164