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 22 static const double rate_mapping_44_stereo[12]={ 23 22500.,32000.,40000.,48000.,56000.,64000., 24 80000.,96000.,112000.,128000.,160000.,250001. 25 }; 26 27 static const double quality_mapping_44[12]={ 28 -.1,.0,.1,.2,.3,.4,.5,.6,.7,.8,.9,1.0 29 }; 30 31 static const int blocksize_short_44[11]={ 32 512,256,256,256,256,256,256,256,256,256,256 33 }; 34 static const int blocksize_long_44[11]={ 35 4096,2048,2048,2048,2048,2048,2048,2048,2048,2048,2048 36 }; 37 38 static const double _psy_compand_short_mapping[12]={ 39 0.5, 1., 1., 1.3, 1.6, 2., 2., 2., 2., 2., 2., 2. 40 }; 41 static 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 45 static 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 50 static const int _floor_mapping_44a[11]={ 51 1,0,0,2,2,4,5,5,5,5,5 52 }; 53 54 static const int _floor_mapping_44b[11]={ 55 8,7,7,7,7,7,7,7,7,7,7 56 }; 57 58 static const int _floor_mapping_44c[11]={ 59 10,10,10,10,10,10,10,10,10,10,10 60 }; 61 62 static const int *_floor_mapping_44[]={ 63 _floor_mapping_44a, 64 _floor_mapping_44b, 65 _floor_mapping_44c, 66 }; 67 68 static 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