class_audioeffectpitchshift.rst 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  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/AudioEffectPitchShift.xml.
  6. .. _class_AudioEffectPitchShift:
  7. AudioEffectPitchShift
  8. =====================
  9. **Inherits:** :ref:`AudioEffect<class_AudioEffect>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
  10. Adds a pitch-shifting audio effect to an audio bus.
  11. Raises or lowers the pitch of original sound.
  12. .. rst-class:: classref-introduction-group
  13. Description
  14. -----------
  15. Allows modulation of pitch independently of tempo. All frequencies can be increased/decreased with minimal effect on transients.
  16. .. rst-class:: classref-introduction-group
  17. Tutorials
  18. ---------
  19. - :doc:`Audio buses <../tutorials/audio/audio_buses>`
  20. .. rst-class:: classref-reftable-group
  21. Properties
  22. ----------
  23. .. table::
  24. :widths: auto
  25. +----------------------------------------------------+------------------------------------------------------------------------+---------+
  26. | :ref:`FFTSize<enum_AudioEffectPitchShift_FFTSize>` | :ref:`fft_size<class_AudioEffectPitchShift_property_fft_size>` | ``3`` |
  27. +----------------------------------------------------+------------------------------------------------------------------------+---------+
  28. | :ref:`int<class_int>` | :ref:`oversampling<class_AudioEffectPitchShift_property_oversampling>` | ``4`` |
  29. +----------------------------------------------------+------------------------------------------------------------------------+---------+
  30. | :ref:`float<class_float>` | :ref:`pitch_scale<class_AudioEffectPitchShift_property_pitch_scale>` | ``1.0`` |
  31. +----------------------------------------------------+------------------------------------------------------------------------+---------+
  32. .. rst-class:: classref-section-separator
  33. ----
  34. .. rst-class:: classref-descriptions-group
  35. Enumerations
  36. ------------
  37. .. _enum_AudioEffectPitchShift_FFTSize:
  38. .. rst-class:: classref-enumeration
  39. enum **FFTSize**: :ref:`🔗<enum_AudioEffectPitchShift_FFTSize>`
  40. .. _class_AudioEffectPitchShift_constant_FFT_SIZE_256:
  41. .. rst-class:: classref-enumeration-constant
  42. :ref:`FFTSize<enum_AudioEffectPitchShift_FFTSize>` **FFT_SIZE_256** = ``0``
  43. Use a buffer of 256 samples for the Fast Fourier transform. Lowest latency, but least stable over time.
  44. .. _class_AudioEffectPitchShift_constant_FFT_SIZE_512:
  45. .. rst-class:: classref-enumeration-constant
  46. :ref:`FFTSize<enum_AudioEffectPitchShift_FFTSize>` **FFT_SIZE_512** = ``1``
  47. Use a buffer of 512 samples for the Fast Fourier transform. Low latency, but less stable over time.
  48. .. _class_AudioEffectPitchShift_constant_FFT_SIZE_1024:
  49. .. rst-class:: classref-enumeration-constant
  50. :ref:`FFTSize<enum_AudioEffectPitchShift_FFTSize>` **FFT_SIZE_1024** = ``2``
  51. Use a buffer of 1024 samples for the Fast Fourier transform. This is a compromise between latency and stability over time.
  52. .. _class_AudioEffectPitchShift_constant_FFT_SIZE_2048:
  53. .. rst-class:: classref-enumeration-constant
  54. :ref:`FFTSize<enum_AudioEffectPitchShift_FFTSize>` **FFT_SIZE_2048** = ``3``
  55. Use a buffer of 2048 samples for the Fast Fourier transform. High latency, but stable over time.
  56. .. _class_AudioEffectPitchShift_constant_FFT_SIZE_4096:
  57. .. rst-class:: classref-enumeration-constant
  58. :ref:`FFTSize<enum_AudioEffectPitchShift_FFTSize>` **FFT_SIZE_4096** = ``4``
  59. Use a buffer of 4096 samples for the Fast Fourier transform. Highest latency, but most stable over time.
  60. .. _class_AudioEffectPitchShift_constant_FFT_SIZE_MAX:
  61. .. rst-class:: classref-enumeration-constant
  62. :ref:`FFTSize<enum_AudioEffectPitchShift_FFTSize>` **FFT_SIZE_MAX** = ``5``
  63. Represents the size of the :ref:`FFTSize<enum_AudioEffectPitchShift_FFTSize>` enum.
  64. .. rst-class:: classref-section-separator
  65. ----
  66. .. rst-class:: classref-descriptions-group
  67. Property Descriptions
  68. ---------------------
  69. .. _class_AudioEffectPitchShift_property_fft_size:
  70. .. rst-class:: classref-property
  71. :ref:`FFTSize<enum_AudioEffectPitchShift_FFTSize>` **fft_size** = ``3`` :ref:`🔗<class_AudioEffectPitchShift_property_fft_size>`
  72. .. rst-class:: classref-property-setget
  73. - |void| **set_fft_size**\ (\ value\: :ref:`FFTSize<enum_AudioEffectPitchShift_FFTSize>`\ )
  74. - :ref:`FFTSize<enum_AudioEffectPitchShift_FFTSize>` **get_fft_size**\ (\ )
  75. The size of the `Fast Fourier transform <https://en.wikipedia.org/wiki/Fast_Fourier_transform>`__ buffer. Higher values smooth out the effect over time, but have greater latency. The effects of this higher latency are especially noticeable on sounds that have sudden amplitude changes.
  76. .. rst-class:: classref-item-separator
  77. ----
  78. .. _class_AudioEffectPitchShift_property_oversampling:
  79. .. rst-class:: classref-property
  80. :ref:`int<class_int>` **oversampling** = ``4`` :ref:`🔗<class_AudioEffectPitchShift_property_oversampling>`
  81. .. rst-class:: classref-property-setget
  82. - |void| **set_oversampling**\ (\ value\: :ref:`int<class_int>`\ )
  83. - :ref:`int<class_int>` **get_oversampling**\ (\ )
  84. The oversampling factor to use. Higher values result in better quality, but are more demanding on the CPU and may cause audio cracking if the CPU can't keep up.
  85. .. rst-class:: classref-item-separator
  86. ----
  87. .. _class_AudioEffectPitchShift_property_pitch_scale:
  88. .. rst-class:: classref-property
  89. :ref:`float<class_float>` **pitch_scale** = ``1.0`` :ref:`🔗<class_AudioEffectPitchShift_property_pitch_scale>`
  90. .. rst-class:: classref-property-setget
  91. - |void| **set_pitch_scale**\ (\ value\: :ref:`float<class_float>`\ )
  92. - :ref:`float<class_float>` **get_pitch_scale**\ (\ )
  93. The pitch scale to use. ``1.0`` is the default pitch and plays sounds unaffected. :ref:`pitch_scale<class_AudioEffectPitchShift_property_pitch_scale>` can range from ``0.0`` (infinitely low pitch, inaudible) to ``16`` (16 times higher than the initial pitch).
  94. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  95. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  96. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  97. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  98. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  99. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  100. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
  101. .. |void| replace:: :abbr:`void (No return value.)`