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 http://www.xiph.org/                  *
10 *                                                                  *
11 ********************************************************************
12
13 function: 16kHz settings
14 last mod: $Id: setup_16.h 16894 2010-02-12 20:32:12Z xiphmont $
15
16 ********************************************************************/
17
18#include "psych_16.h"
19#include "residue_16.h"
20
21static const int blocksize_16_short[3]={
22  1024,512,512
23};
24static const int blocksize_16_long[3]={
25  1024,1024,1024
26};
27
28static const int _floor_mapping_16a[]={
29  9,3,3
30};
31static const int _floor_mapping_16b[]={
32  9,9,9
33};
34static const int *_floor_mapping_16[]={
35  _floor_mapping_16a,
36  _floor_mapping_16b
37};
38
39static const double rate_mapping_16[4]={
40  12000.,20000.,44000.,86000.
41};
42
43static const double rate_mapping_16_uncoupled[4]={
44  16000.,28000.,64000.,100000.
45};
46
47static const double _global_mapping_16[4]={ 1., 2., 3., 4. };
48
49static const double quality_mapping_16[4]={ -.1,.05,.5,1. };
50
51static const double _psy_compand_16_mapping[4]={ 0., .8, 1., 1.};
52
53static const ve_setup_data_template ve_setup_16_stereo={
54  3,
55  rate_mapping_16,
56  quality_mapping_16,
57  2,
58  15000,
59  19000,
60
61  blocksize_16_short,
62  blocksize_16_long,
63
64  _psy_tone_masteratt_16,
65  _psy_tone_0dB,
66  _psy_tone_suppress,
67
68  _vp_tonemask_adj_16,
69  _vp_tonemask_adj_16,
70  _vp_tonemask_adj_16,
71
72  _psy_noiseguards_16,
73  _psy_noisebias_16_impulse,
74  _psy_noisebias_16_short,
75  _psy_noisebias_16_short,
76  _psy_noisebias_16,
77  _psy_noise_suppress,
78
79  _psy_compand_8,
80  _psy_compand_16_mapping,
81  _psy_compand_16_mapping,
82
83  {_noise_start_16,_noise_start_16},
84  { _noise_part_16, _noise_part_16},
85  _noise_thresh_16,
86
87  _psy_ath_floater_16,
88  _psy_ath_abs_16,
89
90  _psy_lowpass_16,
91
92  _psy_global_44,
93  _global_mapping_16,
94  _psy_stereo_modes_16,
95
96  _floor_books,
97  _floor,
98  2,
99  _floor_mapping_16,
100
101  _mapres_template_16_stereo
102};
103
104static const ve_setup_data_template ve_setup_16_uncoupled={
105  3,
106  rate_mapping_16_uncoupled,
107  quality_mapping_16,
108  -1,
109  15000,
110  19000,
111
112  blocksize_16_short,
113  blocksize_16_long,
114
115  _psy_tone_masteratt_16,
116  _psy_tone_0dB,
117  _psy_tone_suppress,
118
119  _vp_tonemask_adj_16,
120  _vp_tonemask_adj_16,
121  _vp_tonemask_adj_16,
122
123  _psy_noiseguards_16,
124  _psy_noisebias_16_impulse,
125  _psy_noisebias_16_short,
126  _psy_noisebias_16_short,
127  _psy_noisebias_16,
128  _psy_noise_suppress,
129
130  _psy_compand_8,
131  _psy_compand_16_mapping,
132  _psy_compand_16_mapping,
133
134  {_noise_start_16,_noise_start_16},
135  { _noise_part_16, _noise_part_16},
136  _noise_thresh_16,
137
138  _psy_ath_floater_16,
139  _psy_ath_abs_16,
140
141  _psy_lowpass_16,
142
143  _psy_global_44,
144  _global_mapping_16,
145  _psy_stereo_modes_16,
146
147  _floor_books,
148  _floor,
149  2,
150  _floor_mapping_16,
151
152  _mapres_template_16_uncoupled
153};
154