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