class_audiostreaminteractive.rst 44 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556
  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/modules/interactive_music/doc_classes/AudioStreamInteractive.xml.
  6. .. _class_AudioStreamInteractive:
  7. AudioStreamInteractive
  8. ======================
  9. **Inherits:** :ref:`AudioStream<class_AudioStream>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
  10. Audio stream that can playback music interactively, combining clips and a transition table.
  11. .. rst-class:: classref-introduction-group
  12. Description
  13. -----------
  14. This is an audio stream that can playback music interactively, combining clips and a transition table. Clips must be added first, and then the transition rules via the :ref:`add_transition<class_AudioStreamInteractive_method_add_transition>`. Additionally, this stream exports a property parameter to control the playback via :ref:`AudioStreamPlayer<class_AudioStreamPlayer>`, :ref:`AudioStreamPlayer2D<class_AudioStreamPlayer2D>`, or :ref:`AudioStreamPlayer3D<class_AudioStreamPlayer3D>`.
  15. The way this is used is by filling a number of clips, then configuring the transition table. From there, clips are selected for playback and the music will smoothly go from the current to the new one while using the corresponding transition rule defined in the transition table.
  16. .. rst-class:: classref-reftable-group
  17. Properties
  18. ----------
  19. .. table::
  20. :widths: auto
  21. +-----------------------+-------------------------------------------------------------------------+-------+
  22. | :ref:`int<class_int>` | :ref:`clip_count<class_AudioStreamInteractive_property_clip_count>` | ``0`` |
  23. +-----------------------+-------------------------------------------------------------------------+-------+
  24. | :ref:`int<class_int>` | :ref:`initial_clip<class_AudioStreamInteractive_property_initial_clip>` | ``0`` |
  25. +-----------------------+-------------------------------------------------------------------------+-------+
  26. .. rst-class:: classref-reftable-group
  27. Methods
  28. -------
  29. .. table::
  30. :widths: auto
  31. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  32. | |void| | :ref:`add_transition<class_AudioStreamInteractive_method_add_transition>`\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`, from_time\: :ref:`TransitionFromTime<enum_AudioStreamInteractive_TransitionFromTime>`, to_time\: :ref:`TransitionToTime<enum_AudioStreamInteractive_TransitionToTime>`, fade_mode\: :ref:`FadeMode<enum_AudioStreamInteractive_FadeMode>`, fade_beats\: :ref:`float<class_float>`, use_filler_clip\: :ref:`bool<class_bool>` = false, filler_clip\: :ref:`int<class_int>` = -1, hold_previous\: :ref:`bool<class_bool>` = false\ ) |
  33. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  34. | |void| | :ref:`erase_transition<class_AudioStreamInteractive_method_erase_transition>`\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |
  35. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  36. | :ref:`AutoAdvanceMode<enum_AudioStreamInteractive_AutoAdvanceMode>` | :ref:`get_clip_auto_advance<class_AudioStreamInteractive_method_get_clip_auto_advance>`\ (\ clip_index\: :ref:`int<class_int>`\ ) |const| |
  37. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  38. | :ref:`int<class_int>` | :ref:`get_clip_auto_advance_next_clip<class_AudioStreamInteractive_method_get_clip_auto_advance_next_clip>`\ (\ clip_index\: :ref:`int<class_int>`\ ) |const| |
  39. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  40. | :ref:`StringName<class_StringName>` | :ref:`get_clip_name<class_AudioStreamInteractive_method_get_clip_name>`\ (\ clip_index\: :ref:`int<class_int>`\ ) |const| |
  41. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  42. | :ref:`AudioStream<class_AudioStream>` | :ref:`get_clip_stream<class_AudioStreamInteractive_method_get_clip_stream>`\ (\ clip_index\: :ref:`int<class_int>`\ ) |const| |
  43. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  44. | :ref:`float<class_float>` | :ref:`get_transition_fade_beats<class_AudioStreamInteractive_method_get_transition_fade_beats>`\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| |
  45. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  46. | :ref:`FadeMode<enum_AudioStreamInteractive_FadeMode>` | :ref:`get_transition_fade_mode<class_AudioStreamInteractive_method_get_transition_fade_mode>`\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| |
  47. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  48. | :ref:`int<class_int>` | :ref:`get_transition_filler_clip<class_AudioStreamInteractive_method_get_transition_filler_clip>`\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| |
  49. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  50. | :ref:`TransitionFromTime<enum_AudioStreamInteractive_TransitionFromTime>` | :ref:`get_transition_from_time<class_AudioStreamInteractive_method_get_transition_from_time>`\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| |
  51. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  52. | :ref:`PackedInt32Array<class_PackedInt32Array>` | :ref:`get_transition_list<class_AudioStreamInteractive_method_get_transition_list>`\ (\ ) |const| |
  53. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  54. | :ref:`TransitionToTime<enum_AudioStreamInteractive_TransitionToTime>` | :ref:`get_transition_to_time<class_AudioStreamInteractive_method_get_transition_to_time>`\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| |
  55. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  56. | :ref:`bool<class_bool>` | :ref:`has_transition<class_AudioStreamInteractive_method_has_transition>`\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| |
  57. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  58. | :ref:`bool<class_bool>` | :ref:`is_transition_holding_previous<class_AudioStreamInteractive_method_is_transition_holding_previous>`\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| |
  59. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  60. | :ref:`bool<class_bool>` | :ref:`is_transition_using_filler_clip<class_AudioStreamInteractive_method_is_transition_using_filler_clip>`\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| |
  61. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  62. | |void| | :ref:`set_clip_auto_advance<class_AudioStreamInteractive_method_set_clip_auto_advance>`\ (\ clip_index\: :ref:`int<class_int>`, mode\: :ref:`AutoAdvanceMode<enum_AudioStreamInteractive_AutoAdvanceMode>`\ ) |
  63. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  64. | |void| | :ref:`set_clip_auto_advance_next_clip<class_AudioStreamInteractive_method_set_clip_auto_advance_next_clip>`\ (\ clip_index\: :ref:`int<class_int>`, auto_advance_next_clip\: :ref:`int<class_int>`\ ) |
  65. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  66. | |void| | :ref:`set_clip_name<class_AudioStreamInteractive_method_set_clip_name>`\ (\ clip_index\: :ref:`int<class_int>`, name\: :ref:`StringName<class_StringName>`\ ) |
  67. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  68. | |void| | :ref:`set_clip_stream<class_AudioStreamInteractive_method_set_clip_stream>`\ (\ clip_index\: :ref:`int<class_int>`, stream\: :ref:`AudioStream<class_AudioStream>`\ ) |
  69. +---------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  70. .. rst-class:: classref-section-separator
  71. ----
  72. .. rst-class:: classref-descriptions-group
  73. Enumerations
  74. ------------
  75. .. _enum_AudioStreamInteractive_TransitionFromTime:
  76. .. rst-class:: classref-enumeration
  77. enum **TransitionFromTime**: :ref:`🔗<enum_AudioStreamInteractive_TransitionFromTime>`
  78. .. _class_AudioStreamInteractive_constant_TRANSITION_FROM_TIME_IMMEDIATE:
  79. .. rst-class:: classref-enumeration-constant
  80. :ref:`TransitionFromTime<enum_AudioStreamInteractive_TransitionFromTime>` **TRANSITION_FROM_TIME_IMMEDIATE** = ``0``
  81. Start transition as soon as possible, don't wait for any specific time position.
  82. .. _class_AudioStreamInteractive_constant_TRANSITION_FROM_TIME_NEXT_BEAT:
  83. .. rst-class:: classref-enumeration-constant
  84. :ref:`TransitionFromTime<enum_AudioStreamInteractive_TransitionFromTime>` **TRANSITION_FROM_TIME_NEXT_BEAT** = ``1``
  85. Transition when the clip playback position reaches the next beat.
  86. .. _class_AudioStreamInteractive_constant_TRANSITION_FROM_TIME_NEXT_BAR:
  87. .. rst-class:: classref-enumeration-constant
  88. :ref:`TransitionFromTime<enum_AudioStreamInteractive_TransitionFromTime>` **TRANSITION_FROM_TIME_NEXT_BAR** = ``2``
  89. Transition when the clip playback position reaches the next bar.
  90. .. _class_AudioStreamInteractive_constant_TRANSITION_FROM_TIME_END:
  91. .. rst-class:: classref-enumeration-constant
  92. :ref:`TransitionFromTime<enum_AudioStreamInteractive_TransitionFromTime>` **TRANSITION_FROM_TIME_END** = ``3``
  93. Transition when the current clip finished playing.
  94. .. rst-class:: classref-item-separator
  95. ----
  96. .. _enum_AudioStreamInteractive_TransitionToTime:
  97. .. rst-class:: classref-enumeration
  98. enum **TransitionToTime**: :ref:`🔗<enum_AudioStreamInteractive_TransitionToTime>`
  99. .. _class_AudioStreamInteractive_constant_TRANSITION_TO_TIME_SAME_POSITION:
  100. .. rst-class:: classref-enumeration-constant
  101. :ref:`TransitionToTime<enum_AudioStreamInteractive_TransitionToTime>` **TRANSITION_TO_TIME_SAME_POSITION** = ``0``
  102. Transition to the same position in the destination clip. This is useful when both clips have exactly the same length and the music should fade between them.
  103. .. _class_AudioStreamInteractive_constant_TRANSITION_TO_TIME_START:
  104. .. rst-class:: classref-enumeration-constant
  105. :ref:`TransitionToTime<enum_AudioStreamInteractive_TransitionToTime>` **TRANSITION_TO_TIME_START** = ``1``
  106. Transition to the start of the destination clip.
  107. .. rst-class:: classref-item-separator
  108. ----
  109. .. _enum_AudioStreamInteractive_FadeMode:
  110. .. rst-class:: classref-enumeration
  111. enum **FadeMode**: :ref:`🔗<enum_AudioStreamInteractive_FadeMode>`
  112. .. _class_AudioStreamInteractive_constant_FADE_DISABLED:
  113. .. rst-class:: classref-enumeration-constant
  114. :ref:`FadeMode<enum_AudioStreamInteractive_FadeMode>` **FADE_DISABLED** = ``0``
  115. Do not use fade for the transition. This is useful when transitioning from a clip-end to clip-beginning, and each clip has their begin/end.
  116. .. _class_AudioStreamInteractive_constant_FADE_IN:
  117. .. rst-class:: classref-enumeration-constant
  118. :ref:`FadeMode<enum_AudioStreamInteractive_FadeMode>` **FADE_IN** = ``1``
  119. Use a fade-in in the next clip, let the current clip finish.
  120. .. _class_AudioStreamInteractive_constant_FADE_OUT:
  121. .. rst-class:: classref-enumeration-constant
  122. :ref:`FadeMode<enum_AudioStreamInteractive_FadeMode>` **FADE_OUT** = ``2``
  123. Use a fade-out in the current clip, the next clip will start by itself.
  124. .. _class_AudioStreamInteractive_constant_FADE_CROSS:
  125. .. rst-class:: classref-enumeration-constant
  126. :ref:`FadeMode<enum_AudioStreamInteractive_FadeMode>` **FADE_CROSS** = ``3``
  127. Use a cross-fade between clips.
  128. .. _class_AudioStreamInteractive_constant_FADE_AUTOMATIC:
  129. .. rst-class:: classref-enumeration-constant
  130. :ref:`FadeMode<enum_AudioStreamInteractive_FadeMode>` **FADE_AUTOMATIC** = ``4``
  131. Use automatic fade logic depending on the transition from/to. It is recommended to use this by default.
  132. .. rst-class:: classref-item-separator
  133. ----
  134. .. _enum_AudioStreamInteractive_AutoAdvanceMode:
  135. .. rst-class:: classref-enumeration
  136. enum **AutoAdvanceMode**: :ref:`🔗<enum_AudioStreamInteractive_AutoAdvanceMode>`
  137. .. _class_AudioStreamInteractive_constant_AUTO_ADVANCE_DISABLED:
  138. .. rst-class:: classref-enumeration-constant
  139. :ref:`AutoAdvanceMode<enum_AudioStreamInteractive_AutoAdvanceMode>` **AUTO_ADVANCE_DISABLED** = ``0``
  140. Disable auto-advance (default).
  141. .. _class_AudioStreamInteractive_constant_AUTO_ADVANCE_ENABLED:
  142. .. rst-class:: classref-enumeration-constant
  143. :ref:`AutoAdvanceMode<enum_AudioStreamInteractive_AutoAdvanceMode>` **AUTO_ADVANCE_ENABLED** = ``1``
  144. Enable auto-advance, a clip must be specified.
  145. .. _class_AudioStreamInteractive_constant_AUTO_ADVANCE_RETURN_TO_HOLD:
  146. .. rst-class:: classref-enumeration-constant
  147. :ref:`AutoAdvanceMode<enum_AudioStreamInteractive_AutoAdvanceMode>` **AUTO_ADVANCE_RETURN_TO_HOLD** = ``2``
  148. Enable auto-advance, but instead of specifying a clip, the playback will return to hold (see :ref:`add_transition<class_AudioStreamInteractive_method_add_transition>`).
  149. .. rst-class:: classref-section-separator
  150. ----
  151. .. rst-class:: classref-descriptions-group
  152. Constants
  153. ---------
  154. .. _class_AudioStreamInteractive_constant_CLIP_ANY:
  155. .. rst-class:: classref-constant
  156. **CLIP_ANY** = ``-1`` :ref:`🔗<class_AudioStreamInteractive_constant_CLIP_ANY>`
  157. This constant describes that any clip is valid for a specific transition as either source or destination.
  158. .. rst-class:: classref-section-separator
  159. ----
  160. .. rst-class:: classref-descriptions-group
  161. Property Descriptions
  162. ---------------------
  163. .. _class_AudioStreamInteractive_property_clip_count:
  164. .. rst-class:: classref-property
  165. :ref:`int<class_int>` **clip_count** = ``0`` :ref:`🔗<class_AudioStreamInteractive_property_clip_count>`
  166. .. rst-class:: classref-property-setget
  167. - |void| **set_clip_count**\ (\ value\: :ref:`int<class_int>`\ )
  168. - :ref:`int<class_int>` **get_clip_count**\ (\ )
  169. Amount of clips contained in this interactive player.
  170. .. rst-class:: classref-item-separator
  171. ----
  172. .. _class_AudioStreamInteractive_property_initial_clip:
  173. .. rst-class:: classref-property
  174. :ref:`int<class_int>` **initial_clip** = ``0`` :ref:`🔗<class_AudioStreamInteractive_property_initial_clip>`
  175. .. rst-class:: classref-property-setget
  176. - |void| **set_initial_clip**\ (\ value\: :ref:`int<class_int>`\ )
  177. - :ref:`int<class_int>` **get_initial_clip**\ (\ )
  178. Index of the initial clip, which will be played first when this stream is played.
  179. .. rst-class:: classref-section-separator
  180. ----
  181. .. rst-class:: classref-descriptions-group
  182. Method Descriptions
  183. -------------------
  184. .. _class_AudioStreamInteractive_method_add_transition:
  185. .. rst-class:: classref-method
  186. |void| **add_transition**\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`, from_time\: :ref:`TransitionFromTime<enum_AudioStreamInteractive_TransitionFromTime>`, to_time\: :ref:`TransitionToTime<enum_AudioStreamInteractive_TransitionToTime>`, fade_mode\: :ref:`FadeMode<enum_AudioStreamInteractive_FadeMode>`, fade_beats\: :ref:`float<class_float>`, use_filler_clip\: :ref:`bool<class_bool>` = false, filler_clip\: :ref:`int<class_int>` = -1, hold_previous\: :ref:`bool<class_bool>` = false\ ) :ref:`🔗<class_AudioStreamInteractive_method_add_transition>`
  187. Add a transition between two clips. Provide the indices of the source and destination clips, or use the :ref:`CLIP_ANY<class_AudioStreamInteractive_constant_CLIP_ANY>` constant to indicate that transition happens to/from any clip to this one.
  188. \* ``from_time`` indicates the moment in the current clip the transition will begin after triggered.
  189. \* ``to_time`` indicates the time in the next clip that the playback will start from.
  190. \* ``fade_mode`` indicates how the fade will happen between clips. If unsure, just use :ref:`FADE_AUTOMATIC<class_AudioStreamInteractive_constant_FADE_AUTOMATIC>` which uses the most common type of fade for each situation.
  191. \* ``fade_beats`` indicates how many beats the fade will take. Using decimals is allowed.
  192. \* ``use_filler_clip`` indicates that there will be a filler clip used between the source and destination clips.
  193. \* ``filler_clip`` the index of the filler clip.
  194. \* If ``hold_previous`` is used, then this clip will be remembered. This can be used together with :ref:`AUTO_ADVANCE_RETURN_TO_HOLD<class_AudioStreamInteractive_constant_AUTO_ADVANCE_RETURN_TO_HOLD>` to return to this clip after another is done playing.
  195. .. rst-class:: classref-item-separator
  196. ----
  197. .. _class_AudioStreamInteractive_method_erase_transition:
  198. .. rst-class:: classref-method
  199. |void| **erase_transition**\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) :ref:`🔗<class_AudioStreamInteractive_method_erase_transition>`
  200. Erase a transition by providing ``from_clip`` and ``to_clip`` clip indices. :ref:`CLIP_ANY<class_AudioStreamInteractive_constant_CLIP_ANY>` can be used for either argument or both.
  201. .. rst-class:: classref-item-separator
  202. ----
  203. .. _class_AudioStreamInteractive_method_get_clip_auto_advance:
  204. .. rst-class:: classref-method
  205. :ref:`AutoAdvanceMode<enum_AudioStreamInteractive_AutoAdvanceMode>` **get_clip_auto_advance**\ (\ clip_index\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_AudioStreamInteractive_method_get_clip_auto_advance>`
  206. Return whether a clip has auto-advance enabled. See :ref:`set_clip_auto_advance<class_AudioStreamInteractive_method_set_clip_auto_advance>`.
  207. .. rst-class:: classref-item-separator
  208. ----
  209. .. _class_AudioStreamInteractive_method_get_clip_auto_advance_next_clip:
  210. .. rst-class:: classref-method
  211. :ref:`int<class_int>` **get_clip_auto_advance_next_clip**\ (\ clip_index\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_AudioStreamInteractive_method_get_clip_auto_advance_next_clip>`
  212. Return the clip towards which the clip referenced by ``clip_index`` will auto-advance to.
  213. .. rst-class:: classref-item-separator
  214. ----
  215. .. _class_AudioStreamInteractive_method_get_clip_name:
  216. .. rst-class:: classref-method
  217. :ref:`StringName<class_StringName>` **get_clip_name**\ (\ clip_index\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_AudioStreamInteractive_method_get_clip_name>`
  218. Return the name of a clip.
  219. .. rst-class:: classref-item-separator
  220. ----
  221. .. _class_AudioStreamInteractive_method_get_clip_stream:
  222. .. rst-class:: classref-method
  223. :ref:`AudioStream<class_AudioStream>` **get_clip_stream**\ (\ clip_index\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_AudioStreamInteractive_method_get_clip_stream>`
  224. Return the :ref:`AudioStream<class_AudioStream>` associated with a clip.
  225. .. rst-class:: classref-item-separator
  226. ----
  227. .. _class_AudioStreamInteractive_method_get_transition_fade_beats:
  228. .. rst-class:: classref-method
  229. :ref:`float<class_float>` **get_transition_fade_beats**\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_AudioStreamInteractive_method_get_transition_fade_beats>`
  230. Return the time (in beats) for a transition (see :ref:`add_transition<class_AudioStreamInteractive_method_add_transition>`).
  231. .. rst-class:: classref-item-separator
  232. ----
  233. .. _class_AudioStreamInteractive_method_get_transition_fade_mode:
  234. .. rst-class:: classref-method
  235. :ref:`FadeMode<enum_AudioStreamInteractive_FadeMode>` **get_transition_fade_mode**\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_AudioStreamInteractive_method_get_transition_fade_mode>`
  236. Return the mode for a transition (see :ref:`add_transition<class_AudioStreamInteractive_method_add_transition>`).
  237. .. rst-class:: classref-item-separator
  238. ----
  239. .. _class_AudioStreamInteractive_method_get_transition_filler_clip:
  240. .. rst-class:: classref-method
  241. :ref:`int<class_int>` **get_transition_filler_clip**\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_AudioStreamInteractive_method_get_transition_filler_clip>`
  242. Return the filler clip for a transition (see :ref:`add_transition<class_AudioStreamInteractive_method_add_transition>`).
  243. .. rst-class:: classref-item-separator
  244. ----
  245. .. _class_AudioStreamInteractive_method_get_transition_from_time:
  246. .. rst-class:: classref-method
  247. :ref:`TransitionFromTime<enum_AudioStreamInteractive_TransitionFromTime>` **get_transition_from_time**\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_AudioStreamInteractive_method_get_transition_from_time>`
  248. Return the source time position for a transition (see :ref:`add_transition<class_AudioStreamInteractive_method_add_transition>`).
  249. .. rst-class:: classref-item-separator
  250. ----
  251. .. _class_AudioStreamInteractive_method_get_transition_list:
  252. .. rst-class:: classref-method
  253. :ref:`PackedInt32Array<class_PackedInt32Array>` **get_transition_list**\ (\ ) |const| :ref:`🔗<class_AudioStreamInteractive_method_get_transition_list>`
  254. Return the list of transitions (from, to interleaved).
  255. .. rst-class:: classref-item-separator
  256. ----
  257. .. _class_AudioStreamInteractive_method_get_transition_to_time:
  258. .. rst-class:: classref-method
  259. :ref:`TransitionToTime<enum_AudioStreamInteractive_TransitionToTime>` **get_transition_to_time**\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_AudioStreamInteractive_method_get_transition_to_time>`
  260. Return the destination time position for a transition (see :ref:`add_transition<class_AudioStreamInteractive_method_add_transition>`).
  261. .. rst-class:: classref-item-separator
  262. ----
  263. .. _class_AudioStreamInteractive_method_has_transition:
  264. .. rst-class:: classref-method
  265. :ref:`bool<class_bool>` **has_transition**\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_AudioStreamInteractive_method_has_transition>`
  266. Returns ``true`` if a given transition exists (was added via :ref:`add_transition<class_AudioStreamInteractive_method_add_transition>`).
  267. .. rst-class:: classref-item-separator
  268. ----
  269. .. _class_AudioStreamInteractive_method_is_transition_holding_previous:
  270. .. rst-class:: classref-method
  271. :ref:`bool<class_bool>` **is_transition_holding_previous**\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_AudioStreamInteractive_method_is_transition_holding_previous>`
  272. Return whether a transition uses the *hold previous* functionality (see :ref:`add_transition<class_AudioStreamInteractive_method_add_transition>`).
  273. .. rst-class:: classref-item-separator
  274. ----
  275. .. _class_AudioStreamInteractive_method_is_transition_using_filler_clip:
  276. .. rst-class:: classref-method
  277. :ref:`bool<class_bool>` **is_transition_using_filler_clip**\ (\ from_clip\: :ref:`int<class_int>`, to_clip\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_AudioStreamInteractive_method_is_transition_using_filler_clip>`
  278. Return whether a transition uses the *filler clip* functionality (see :ref:`add_transition<class_AudioStreamInteractive_method_add_transition>`).
  279. .. rst-class:: classref-item-separator
  280. ----
  281. .. _class_AudioStreamInteractive_method_set_clip_auto_advance:
  282. .. rst-class:: classref-method
  283. |void| **set_clip_auto_advance**\ (\ clip_index\: :ref:`int<class_int>`, mode\: :ref:`AutoAdvanceMode<enum_AudioStreamInteractive_AutoAdvanceMode>`\ ) :ref:`🔗<class_AudioStreamInteractive_method_set_clip_auto_advance>`
  284. Set whether a clip will auto-advance by changing the auto-advance mode.
  285. .. rst-class:: classref-item-separator
  286. ----
  287. .. _class_AudioStreamInteractive_method_set_clip_auto_advance_next_clip:
  288. .. rst-class:: classref-method
  289. |void| **set_clip_auto_advance_next_clip**\ (\ clip_index\: :ref:`int<class_int>`, auto_advance_next_clip\: :ref:`int<class_int>`\ ) :ref:`🔗<class_AudioStreamInteractive_method_set_clip_auto_advance_next_clip>`
  290. Set the index of the next clip towards which this clip will auto advance to when finished. If the clip being played loops, then auto-advance will be ignored.
  291. .. rst-class:: classref-item-separator
  292. ----
  293. .. _class_AudioStreamInteractive_method_set_clip_name:
  294. .. rst-class:: classref-method
  295. |void| **set_clip_name**\ (\ clip_index\: :ref:`int<class_int>`, name\: :ref:`StringName<class_StringName>`\ ) :ref:`🔗<class_AudioStreamInteractive_method_set_clip_name>`
  296. Set the name of the current clip (for easier identification).
  297. .. rst-class:: classref-item-separator
  298. ----
  299. .. _class_AudioStreamInteractive_method_set_clip_stream:
  300. .. rst-class:: classref-method
  301. |void| **set_clip_stream**\ (\ clip_index\: :ref:`int<class_int>`, stream\: :ref:`AudioStream<class_AudioStream>`\ ) :ref:`🔗<class_AudioStreamInteractive_method_set_clip_stream>`
  302. Set the :ref:`AudioStream<class_AudioStream>` associated with the current clip.
  303. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  304. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  305. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  306. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  307. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  308. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  309. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
  310. .. |void| replace:: :abbr:`void (No return value.)`