setup_44.h revision 8e01cdce135d5d816f92d7bb83f9a930aa1b45ae
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: toplevel settings for 44.1/48kHz
14 last mod: $Id: setup_44.h 16962 2010-03-11 07:30:34Z xiphmont $
15
16 ********************************************************************/
17
18#include "modes/floor_all.h"
19#include "modes/residue_44.h"
20#include "modes/psych_44.h"
21
22static const double rate_mapping_44_stereo[12]={
23  22500.,32000.,40000.,48000.,56000.,64000.,
24  80000.,96000.,112000.,128000.,160000.,250001.
25};
26
27static const double quality_mapping_44[12]={
28  -.1,.0,.1,.2,.3,.4,.5,.6,.7,.8,.9,1.0
29};
30
31static const int blocksize_short_44[11]={
32  512,256,256,256,256,256,256,256,256,256,256
33};
34static const int blocksize_long_44[11]={
35  4096,2048,2048,2048,2048,2048,2048,2048,2048,2048,2048
36};
37
38static const double _psy_compand_short_mapping[12]={
39  0.5, 1., 1., 1.3, 1.6, 2., 2., 2., 2., 2., 2., 2.
40};
41static const double _psy_compand_long_mapping[12]={
42  3.5, 4., 4., 4.3, 4.6, 5., 5., 5., 5., 5., 5., 5.
43};
44
45static const double _global_mapping_44[12]={
46  /* 1., 1., 1.5, 2., 2., 2.5, 2.7, 3.0, 3.5, 4., 4. */
47 0., 1., 1., 1.5, 2., 2., 2.5, 2.7, 3.0, 3.7, 4., 4.
48};
49
50static const int _floor_mapping_44a[11]={
51  1,0,0,2,2,4,5,5,5,5,5
52};
53
54static const int _floor_mapping_44b[11]={
55  8,7,7,7,7,7,7,7,7,7,7
56};
57
58static const int _floor_mapping_44c[11]={
59  10,10,10,10,10,10,10,10,10,10,10
60};
61
62static const int *_floor_mapping_44[]={
63  _floor_mapping_44a,
64  _floor_mapping_44b,
65  _floor_mapping_44c,
66};
67
68static const ve_setup_data_template ve_setup_44_stereo={
69  11,
70  rate_mapping_44_stereo,
71  quality_mapping_44,
72  2,
73  40000,
74  50000,
75
76  blocksize_short_44,
77  blocksize_long_44,
78
79  _psy_tone_masteratt_44,
80  _psy_tone_0dB,
81  _psy_tone_suppress,
82
83  _vp_tonemask_adj_otherblock,
84  _vp_tonemask_adj_longblock,
85  _vp_tonemask_adj_otherblock,
86
87  _psy_noiseguards_44,
88  _psy_noisebias_impulse,
89  _psy_noisebias_padding,
90  _psy_noisebias_trans,
91  _psy_noisebias_long,
92  _psy_noise_suppress,
93
94  _psy_compand_44,
95  _psy_compand_short_mapping,
96  _psy_compand_long_mapping,
97
98  {_noise_start_short_44,_noise_start_long_44},
99  {_noise_part_short_44,_noise_part_long_44},
100  _noise_thresh_44,
101
102  _psy_ath_floater,
103  _psy_ath_abs,
104
105  _psy_lowpass_44,
106
107  _psy_global_44,
108  _global_mapping_44,
109  _psy_stereo_modes_44,
110
111  _floor_books,
112  _floor,
113  2,
114  _floor_mapping_44,
115
116  _mapres_template_44_stereo
117};
118