usrparam.h 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. /***************************************************************************\
  2. *
  3. * (C) copyright Fraunhofer - IIS (2001)
  4. * All Rights Reserved
  5. *
  6. * $Header: /cvs/root/winamp/aacdec/incs/mp4dec_helpers/usrparam.h,v 1.3 2012/05/08 20:16:50 audiodsp Exp $
  7. * project : MPEG-4 Audio Decoder
  8. * contents/description: user changeable parameters, common struct
  9. *
  10. * This software and/or program is protected by copyright law and
  11. * international treaties. Any reproduction or distribution of this
  12. * software and/or program, or any portion of it, may result in severe
  13. * civil and criminal penalties, and will be prosecuted to the maximum
  14. * extent possible under law.
  15. *
  16. \***************************************************************************/
  17. #ifndef __USERPARAM_H__
  18. #define __USERPARAM_H__
  19. typedef enum {
  20. MP4AUDIODECPARAM_DEFAULT = 0,
  21. MP4AUDIODECPARAM_ALL = MP4AUDIODECPARAM_DEFAULT
  22. } __mp4AudioDecoder_ResetParam;
  23. typedef enum {
  24. INVALID_PARAM = 0,
  25. __usrparam_param_start = 1000,
  26. /* postprocessor tools */
  27. DECODE_IMPLICIT,
  28. DECODE_SBR,
  29. DECODE_PS,
  30. DECODE_EBCC,
  31. DECODE_MPEGS,
  32. DECODE_DRC,
  33. /* mpeg surround params */
  34. MPEGS_UPMIX_TYPE, /* for demo only */
  35. MPEGS_HRTF_MODEL, /* for demo only */
  36. MPEGS_PART_COMPLEX, /* for demo only */
  37. MPEGS_LEVEL, /* for demo only */
  38. MPEGS_BINAURAL_FRONT_ANGLE, /* for demo only */
  39. MPEGS_BINAURAL_REAR_ANGLE, /* for demo only */
  40. MPEGS_BINAURAL_DISTANCE, /* for demo only */
  41. MPEGS_BINAURAL_DIALOG_CLARITY, /* for demo only */
  42. MPEGS_BINAURAL_QUALITY, /* for demo only */
  43. MPEGS_BINAURAL_PRESET,
  44. /* DRC params */
  45. DRC_BOOST,
  46. DRC_COMPRESS,
  47. DRC_TARGET_REF,
  48. /* concealment params */
  49. CONCEALMENT_ENERGYINTERPOLATION,
  50. CONCEALMENT_TECHNIQUE,
  51. CONCEALMENT_ATTENUATION,
  52. /* time domain limiter */
  53. TDL_MODE,
  54. /* hvxc */
  55. HVXC_DELAYMODE, /* for conformance test only */
  56. HVXC_TESTMODE, /* for conformance test only */
  57. HVXC_PITCHFACTOR, /* for conformance test only */
  58. HVXC_SPEEDFACTOR, /* for conformance test only */
  59. /* sls */
  60. SLS_TRUNCATIONRATE, /* max sls bitrate per channel to decode, for demo only */
  61. /* sbr */
  62. SBR_LOWPOWERMODE, /* for demo only */
  63. /* scalable */
  64. SCAL_SETOUTPUTLAYER,
  65. /* advanced windowing - adjusts non-meaningful window sequence transitions */
  66. WINDOW_ADJUST_PARAM,
  67. /* PCM buffer re-shuffling */
  68. WAVE_REMAPPING,
  69. /* debugging only */
  70. VERBOSE_LEVEL,
  71. /* further params come here */
  72. __usrparam_param_dummy
  73. } __mp4AudioDecoder_ConfigureParameters;
  74. typedef enum {
  75. /* general values */
  76. SWITCH_OFF = 0,
  77. SWITCH_ON = 1,
  78. SWITCH_DISABLED = 0,
  79. SWITCH_ENABLED = 1,
  80. __usrparam_value_start = 10000,
  81. /** concealment settings **/
  82. /* preferred */
  83. CONCEALMENT_TECHNIQUE_NOISESUBST_FAST_STATIC_PRS = 7,
  84. /* for debugging and historic reasons */
  85. CONCEALMENT_TECHNIQUE_OFF = 0,
  86. CONCEALMENT_TECHNIQUE_MUTING = 1,
  87. CONCEALMENT_TECHNIQUE_REPETITION = 2,
  88. CONCEALMENT_TECHNIQUE_NOISESUBST_FAST = 3,
  89. CONCEALMENT_TECHNIQUE_NOISESUBST_IIR = 5,
  90. CONCEALMENT_TECHNIQUE_NOISESUBST_IIR_STATIC_PRS = 9,
  91. /* experimental - not recommended in production environments */
  92. CONCEALMENT_TECHNIQUE_NOISESUBST_FAST_PLUS_PRED = 4,
  93. CONCEALMENT_TECHNIQUE_NOISESUBST_IIR_PLUS_PRED = 6,
  94. CONCEALMENT_TECHNIQUE_NOISESUBST_FAST_STATIC_PRS_PLUS_PRED = 8,
  95. CONCEALMENT_TECHNIQUE_NOISESUBST_IIR_STATIC_PRS_PLUS_PRED = 10,
  96. /** advanced windowing **/
  97. WINDOW_ADJUST_PARAM_OFF = 0,
  98. WINDOW_ADJUST_PARAM_ON_ONLY_CURRENT = 1,
  99. WINDOW_ADJUST_PARAM_ON_PREF_LONG = 2,
  100. WINDOW_ADJUST_PARAM_ON_PREF_SHORT = 3,
  101. __usrparam_value_dummy
  102. } __mp4AudioDecoder_ConfigureValues;
  103. #define SLS_TRUNCATIONRATE_OFF (-1.0f)
  104. #define SLS_TRUNCATIONRATE_MIN (32000.0f)
  105. #define WINDOW_ADJUST_PARAM_DEFAULT (WINDOW_ADJUST_PARAM_OFF)
  106. #endif