setup_16.h 3.3 KB

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