class_audioeffectspectrumanalyzer.rst 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. :github_url: hide
  2. .. DO NOT EDIT THIS FILE!!!
  3. .. Generated automatically from Godot engine sources.
  4. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/AudioEffectSpectrumAnalyzer.xml.
  6. .. _class_AudioEffectSpectrumAnalyzer:
  7. AudioEffectSpectrumAnalyzer
  8. ===========================
  9. **Inherits:** :ref:`AudioEffect<class_AudioEffect>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
  10. Audio effect that can be used for real-time audio visualizations.
  11. .. rst-class:: classref-introduction-group
  12. Description
  13. -----------
  14. This audio effect does not affect sound output, but can be used for real-time audio visualizations.
  15. This resource configures an :ref:`AudioEffectSpectrumAnalyzerInstance<class_AudioEffectSpectrumAnalyzerInstance>`, which performs the actual analysis at runtime. An instance can be obtained with :ref:`AudioServer.get_bus_effect_instance<class_AudioServer_method_get_bus_effect_instance>`.
  16. See also :ref:`AudioStreamGenerator<class_AudioStreamGenerator>` for procedurally generating sounds.
  17. .. rst-class:: classref-introduction-group
  18. Tutorials
  19. ---------
  20. - `Audio Spectrum Visualizer Demo <https://godotengine.org/asset-library/asset/2762>`__
  21. .. rst-class:: classref-reftable-group
  22. Properties
  23. ----------
  24. .. table::
  25. :widths: auto
  26. +----------------------------------------------------------+--------------------------------------------------------------------------------+----------+
  27. | :ref:`float<class_float>` | :ref:`buffer_length<class_AudioEffectSpectrumAnalyzer_property_buffer_length>` | ``2.0`` |
  28. +----------------------------------------------------------+--------------------------------------------------------------------------------+----------+
  29. | :ref:`FFTSize<enum_AudioEffectSpectrumAnalyzer_FFTSize>` | :ref:`fft_size<class_AudioEffectSpectrumAnalyzer_property_fft_size>` | ``2`` |
  30. +----------------------------------------------------------+--------------------------------------------------------------------------------+----------+
  31. | :ref:`float<class_float>` | :ref:`tap_back_pos<class_AudioEffectSpectrumAnalyzer_property_tap_back_pos>` | ``0.01`` |
  32. +----------------------------------------------------------+--------------------------------------------------------------------------------+----------+
  33. .. rst-class:: classref-section-separator
  34. ----
  35. .. rst-class:: classref-descriptions-group
  36. Enumerations
  37. ------------
  38. .. _enum_AudioEffectSpectrumAnalyzer_FFTSize:
  39. .. rst-class:: classref-enumeration
  40. enum **FFTSize**: :ref:`🔗<enum_AudioEffectSpectrumAnalyzer_FFTSize>`
  41. .. _class_AudioEffectSpectrumAnalyzer_constant_FFT_SIZE_256:
  42. .. rst-class:: classref-enumeration-constant
  43. :ref:`FFTSize<enum_AudioEffectSpectrumAnalyzer_FFTSize>` **FFT_SIZE_256** = ``0``
  44. Use a buffer of 256 samples for the Fast Fourier transform. Lowest latency, but least stable over time.
  45. .. _class_AudioEffectSpectrumAnalyzer_constant_FFT_SIZE_512:
  46. .. rst-class:: classref-enumeration-constant
  47. :ref:`FFTSize<enum_AudioEffectSpectrumAnalyzer_FFTSize>` **FFT_SIZE_512** = ``1``
  48. Use a buffer of 512 samples for the Fast Fourier transform. Low latency, but less stable over time.
  49. .. _class_AudioEffectSpectrumAnalyzer_constant_FFT_SIZE_1024:
  50. .. rst-class:: classref-enumeration-constant
  51. :ref:`FFTSize<enum_AudioEffectSpectrumAnalyzer_FFTSize>` **FFT_SIZE_1024** = ``2``
  52. Use a buffer of 1024 samples for the Fast Fourier transform. This is a compromise between latency and stability over time.
  53. .. _class_AudioEffectSpectrumAnalyzer_constant_FFT_SIZE_2048:
  54. .. rst-class:: classref-enumeration-constant
  55. :ref:`FFTSize<enum_AudioEffectSpectrumAnalyzer_FFTSize>` **FFT_SIZE_2048** = ``3``
  56. Use a buffer of 2048 samples for the Fast Fourier transform. High latency, but stable over time.
  57. .. _class_AudioEffectSpectrumAnalyzer_constant_FFT_SIZE_4096:
  58. .. rst-class:: classref-enumeration-constant
  59. :ref:`FFTSize<enum_AudioEffectSpectrumAnalyzer_FFTSize>` **FFT_SIZE_4096** = ``4``
  60. Use a buffer of 4096 samples for the Fast Fourier transform. Highest latency, but most stable over time.
  61. .. _class_AudioEffectSpectrumAnalyzer_constant_FFT_SIZE_MAX:
  62. .. rst-class:: classref-enumeration-constant
  63. :ref:`FFTSize<enum_AudioEffectSpectrumAnalyzer_FFTSize>` **FFT_SIZE_MAX** = ``5``
  64. Represents the size of the :ref:`FFTSize<enum_AudioEffectSpectrumAnalyzer_FFTSize>` enum.
  65. .. rst-class:: classref-section-separator
  66. ----
  67. .. rst-class:: classref-descriptions-group
  68. Property Descriptions
  69. ---------------------
  70. .. _class_AudioEffectSpectrumAnalyzer_property_buffer_length:
  71. .. rst-class:: classref-property
  72. :ref:`float<class_float>` **buffer_length** = ``2.0`` :ref:`🔗<class_AudioEffectSpectrumAnalyzer_property_buffer_length>`
  73. .. rst-class:: classref-property-setget
  74. - |void| **set_buffer_length**\ (\ value\: :ref:`float<class_float>`\ )
  75. - :ref:`float<class_float>` **get_buffer_length**\ (\ )
  76. The length of the buffer to keep (in seconds). Higher values keep data around for longer, but require more memory.
  77. .. rst-class:: classref-item-separator
  78. ----
  79. .. _class_AudioEffectSpectrumAnalyzer_property_fft_size:
  80. .. rst-class:: classref-property
  81. :ref:`FFTSize<enum_AudioEffectSpectrumAnalyzer_FFTSize>` **fft_size** = ``2`` :ref:`🔗<class_AudioEffectSpectrumAnalyzer_property_fft_size>`
  82. .. rst-class:: classref-property-setget
  83. - |void| **set_fft_size**\ (\ value\: :ref:`FFTSize<enum_AudioEffectSpectrumAnalyzer_FFTSize>`\ )
  84. - :ref:`FFTSize<enum_AudioEffectSpectrumAnalyzer_FFTSize>` **get_fft_size**\ (\ )
  85. The size of the `Fast Fourier transform <https://en.wikipedia.org/wiki/Fast_Fourier_transform>`__ buffer. Higher values smooth out the spectrum analysis over time, but have greater latency. The effects of this higher latency are especially noticeable with sudden amplitude changes.
  86. .. rst-class:: classref-item-separator
  87. ----
  88. .. _class_AudioEffectSpectrumAnalyzer_property_tap_back_pos:
  89. .. rst-class:: classref-property
  90. :ref:`float<class_float>` **tap_back_pos** = ``0.01`` :ref:`🔗<class_AudioEffectSpectrumAnalyzer_property_tap_back_pos>`
  91. .. rst-class:: classref-property-setget
  92. - |void| **set_tap_back_pos**\ (\ value\: :ref:`float<class_float>`\ )
  93. - :ref:`float<class_float>` **get_tap_back_pos**\ (\ )
  94. .. container:: contribute
  95. There is currently no description for this property. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
  96. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  97. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  98. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  99. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  100. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  101. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  102. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
  103. .. |void| replace:: :abbr:`void (No return value.)`