class_audiostreamrandomizer.rst 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275
  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/AudioStreamRandomizer.xml.
  6. .. _class_AudioStreamRandomizer:
  7. AudioStreamRandomizer
  8. =====================
  9. **Inherits:** :ref:`AudioStream<class_AudioStream>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
  10. Wraps a pool of audio streams with pitch and volume shifting.
  11. .. rst-class:: classref-introduction-group
  12. Description
  13. -----------
  14. Picks a random AudioStream from the pool, depending on the playback mode, and applies random pitch shifting and volume shifting during playback.
  15. .. rst-class:: classref-reftable-group
  16. Properties
  17. ----------
  18. .. table::
  19. :widths: auto
  20. +--------------------------------------------------------------+----------------------------------------------------------------------------------------------+---------+
  21. | :ref:`PlaybackMode<enum_AudioStreamRandomizer_PlaybackMode>` | :ref:`playback_mode<class_AudioStreamRandomizer_property_playback_mode>` | ``0`` |
  22. +--------------------------------------------------------------+----------------------------------------------------------------------------------------------+---------+
  23. | :ref:`float<class_float>` | :ref:`random_pitch<class_AudioStreamRandomizer_property_random_pitch>` | ``1.0`` |
  24. +--------------------------------------------------------------+----------------------------------------------------------------------------------------------+---------+
  25. | :ref:`float<class_float>` | :ref:`random_volume_offset_db<class_AudioStreamRandomizer_property_random_volume_offset_db>` | ``0.0`` |
  26. +--------------------------------------------------------------+----------------------------------------------------------------------------------------------+---------+
  27. | :ref:`int<class_int>` | :ref:`streams_count<class_AudioStreamRandomizer_property_streams_count>` | ``0`` |
  28. +--------------------------------------------------------------+----------------------------------------------------------------------------------------------+---------+
  29. .. rst-class:: classref-reftable-group
  30. Methods
  31. -------
  32. .. table::
  33. :widths: auto
  34. +---------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  35. | |void| | :ref:`add_stream<class_AudioStreamRandomizer_method_add_stream>`\ (\ index\: :ref:`int<class_int>`, stream\: :ref:`AudioStream<class_AudioStream>`, weight\: :ref:`float<class_float>` = 1.0\ ) |
  36. +---------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  37. | :ref:`AudioStream<class_AudioStream>` | :ref:`get_stream<class_AudioStreamRandomizer_method_get_stream>`\ (\ index\: :ref:`int<class_int>`\ ) |const| |
  38. +---------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  39. | :ref:`float<class_float>` | :ref:`get_stream_probability_weight<class_AudioStreamRandomizer_method_get_stream_probability_weight>`\ (\ index\: :ref:`int<class_int>`\ ) |const| |
  40. +---------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  41. | |void| | :ref:`move_stream<class_AudioStreamRandomizer_method_move_stream>`\ (\ index_from\: :ref:`int<class_int>`, index_to\: :ref:`int<class_int>`\ ) |
  42. +---------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  43. | |void| | :ref:`remove_stream<class_AudioStreamRandomizer_method_remove_stream>`\ (\ index\: :ref:`int<class_int>`\ ) |
  44. +---------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  45. | |void| | :ref:`set_stream<class_AudioStreamRandomizer_method_set_stream>`\ (\ index\: :ref:`int<class_int>`, stream\: :ref:`AudioStream<class_AudioStream>`\ ) |
  46. +---------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  47. | |void| | :ref:`set_stream_probability_weight<class_AudioStreamRandomizer_method_set_stream_probability_weight>`\ (\ index\: :ref:`int<class_int>`, weight\: :ref:`float<class_float>`\ ) |
  48. +---------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  49. .. rst-class:: classref-section-separator
  50. ----
  51. .. rst-class:: classref-descriptions-group
  52. Enumerations
  53. ------------
  54. .. _enum_AudioStreamRandomizer_PlaybackMode:
  55. .. rst-class:: classref-enumeration
  56. enum **PlaybackMode**: :ref:`🔗<enum_AudioStreamRandomizer_PlaybackMode>`
  57. .. _class_AudioStreamRandomizer_constant_PLAYBACK_RANDOM_NO_REPEATS:
  58. .. rst-class:: classref-enumeration-constant
  59. :ref:`PlaybackMode<enum_AudioStreamRandomizer_PlaybackMode>` **PLAYBACK_RANDOM_NO_REPEATS** = ``0``
  60. Pick a stream at random according to the probability weights chosen for each stream, but avoid playing the same stream twice in a row whenever possible. If only 1 sound is present in the pool, the same sound will always play, effectively allowing repeats to occur.
  61. .. _class_AudioStreamRandomizer_constant_PLAYBACK_RANDOM:
  62. .. rst-class:: classref-enumeration-constant
  63. :ref:`PlaybackMode<enum_AudioStreamRandomizer_PlaybackMode>` **PLAYBACK_RANDOM** = ``1``
  64. Pick a stream at random according to the probability weights chosen for each stream. If only 1 sound is present in the pool, the same sound will always play.
  65. .. _class_AudioStreamRandomizer_constant_PLAYBACK_SEQUENTIAL:
  66. .. rst-class:: classref-enumeration-constant
  67. :ref:`PlaybackMode<enum_AudioStreamRandomizer_PlaybackMode>` **PLAYBACK_SEQUENTIAL** = ``2``
  68. Play streams in the order they appear in the stream pool. If only 1 sound is present in the pool, the same sound will always play.
  69. .. rst-class:: classref-section-separator
  70. ----
  71. .. rst-class:: classref-descriptions-group
  72. Property Descriptions
  73. ---------------------
  74. .. _class_AudioStreamRandomizer_property_playback_mode:
  75. .. rst-class:: classref-property
  76. :ref:`PlaybackMode<enum_AudioStreamRandomizer_PlaybackMode>` **playback_mode** = ``0`` :ref:`🔗<class_AudioStreamRandomizer_property_playback_mode>`
  77. .. rst-class:: classref-property-setget
  78. - |void| **set_playback_mode**\ (\ value\: :ref:`PlaybackMode<enum_AudioStreamRandomizer_PlaybackMode>`\ )
  79. - :ref:`PlaybackMode<enum_AudioStreamRandomizer_PlaybackMode>` **get_playback_mode**\ (\ )
  80. Controls how this AudioStreamRandomizer picks which AudioStream to play next.
  81. .. rst-class:: classref-item-separator
  82. ----
  83. .. _class_AudioStreamRandomizer_property_random_pitch:
  84. .. rst-class:: classref-property
  85. :ref:`float<class_float>` **random_pitch** = ``1.0`` :ref:`🔗<class_AudioStreamRandomizer_property_random_pitch>`
  86. .. rst-class:: classref-property-setget
  87. - |void| **set_random_pitch**\ (\ value\: :ref:`float<class_float>`\ )
  88. - :ref:`float<class_float>` **get_random_pitch**\ (\ )
  89. The intensity of random pitch variation. A value of 1 means no variation.
  90. .. rst-class:: classref-item-separator
  91. ----
  92. .. _class_AudioStreamRandomizer_property_random_volume_offset_db:
  93. .. rst-class:: classref-property
  94. :ref:`float<class_float>` **random_volume_offset_db** = ``0.0`` :ref:`🔗<class_AudioStreamRandomizer_property_random_volume_offset_db>`
  95. .. rst-class:: classref-property-setget
  96. - |void| **set_random_volume_offset_db**\ (\ value\: :ref:`float<class_float>`\ )
  97. - :ref:`float<class_float>` **get_random_volume_offset_db**\ (\ )
  98. The intensity of random volume variation. A value of 0 means no variation.
  99. .. rst-class:: classref-item-separator
  100. ----
  101. .. _class_AudioStreamRandomizer_property_streams_count:
  102. .. rst-class:: classref-property
  103. :ref:`int<class_int>` **streams_count** = ``0`` :ref:`🔗<class_AudioStreamRandomizer_property_streams_count>`
  104. .. rst-class:: classref-property-setget
  105. - |void| **set_streams_count**\ (\ value\: :ref:`int<class_int>`\ )
  106. - :ref:`int<class_int>` **get_streams_count**\ (\ )
  107. The number of streams in the stream pool.
  108. .. rst-class:: classref-section-separator
  109. ----
  110. .. rst-class:: classref-descriptions-group
  111. Method Descriptions
  112. -------------------
  113. .. _class_AudioStreamRandomizer_method_add_stream:
  114. .. rst-class:: classref-method
  115. |void| **add_stream**\ (\ index\: :ref:`int<class_int>`, stream\: :ref:`AudioStream<class_AudioStream>`, weight\: :ref:`float<class_float>` = 1.0\ ) :ref:`🔗<class_AudioStreamRandomizer_method_add_stream>`
  116. Insert a stream at the specified index. If the index is less than zero, the insertion occurs at the end of the underlying pool.
  117. .. rst-class:: classref-item-separator
  118. ----
  119. .. _class_AudioStreamRandomizer_method_get_stream:
  120. .. rst-class:: classref-method
  121. :ref:`AudioStream<class_AudioStream>` **get_stream**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_AudioStreamRandomizer_method_get_stream>`
  122. Returns the stream at the specified index.
  123. .. rst-class:: classref-item-separator
  124. ----
  125. .. _class_AudioStreamRandomizer_method_get_stream_probability_weight:
  126. .. rst-class:: classref-method
  127. :ref:`float<class_float>` **get_stream_probability_weight**\ (\ index\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_AudioStreamRandomizer_method_get_stream_probability_weight>`
  128. Returns the probability weight associated with the stream at the given index.
  129. .. rst-class:: classref-item-separator
  130. ----
  131. .. _class_AudioStreamRandomizer_method_move_stream:
  132. .. rst-class:: classref-method
  133. |void| **move_stream**\ (\ index_from\: :ref:`int<class_int>`, index_to\: :ref:`int<class_int>`\ ) :ref:`🔗<class_AudioStreamRandomizer_method_move_stream>`
  134. Move a stream from one index to another.
  135. .. rst-class:: classref-item-separator
  136. ----
  137. .. _class_AudioStreamRandomizer_method_remove_stream:
  138. .. rst-class:: classref-method
  139. |void| **remove_stream**\ (\ index\: :ref:`int<class_int>`\ ) :ref:`🔗<class_AudioStreamRandomizer_method_remove_stream>`
  140. Remove the stream at the specified index.
  141. .. rst-class:: classref-item-separator
  142. ----
  143. .. _class_AudioStreamRandomizer_method_set_stream:
  144. .. rst-class:: classref-method
  145. |void| **set_stream**\ (\ index\: :ref:`int<class_int>`, stream\: :ref:`AudioStream<class_AudioStream>`\ ) :ref:`🔗<class_AudioStreamRandomizer_method_set_stream>`
  146. Set the AudioStream at the specified index.
  147. .. rst-class:: classref-item-separator
  148. ----
  149. .. _class_AudioStreamRandomizer_method_set_stream_probability_weight:
  150. .. rst-class:: classref-method
  151. |void| **set_stream_probability_weight**\ (\ index\: :ref:`int<class_int>`, weight\: :ref:`float<class_float>`\ ) :ref:`🔗<class_AudioStreamRandomizer_method_set_stream_probability_weight>`
  152. Set the probability weight of the stream at the specified index. The higher this value, the more likely that the randomizer will choose this stream during random playback modes.
  153. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  154. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  155. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  156. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  157. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  158. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  159. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
  160. .. |void| replace:: :abbr:`void (No return value.)`