class-description NEWS COMMUNITY STORE TUTORIALS SIGN UP LOGIN LOGOUT ROKOJORI NEWSLETTER SIGN UP LOGIN LOGOUT NEWS COMMUNITY STORE TUTORIALS TOGGLE FULLSCREEN VOLLBILD AN/AUS ObjectRefCountedResourceAudioStream AudioStreamInteractive
Audio stream that can playback music interactively, combining clips and a transition table.

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 add_transition(). Additionally, this stream exports a property parameter to control the playback via AudioStreamPlayer, AudioStreamPlayer2D, or AudioStreamPlayer3D.

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.

Enum TransitionFromTime<>():Enum

TRANSITION_FROM_TIME_IMMEDIATE = 0

Start transition as soon as possible, don't wait for any specific time position.


TRANSITION_FROM_TIME_NEXT_BEAT = 1

Transition when the clip playback position reaches the next beat.


TRANSITION_FROM_TIME_NEXT_BAR = 2

Transition when the clip playback position reaches the next bar.


TRANSITION_FROM_TIME_END = 3

Transition when the current clip finished playing.

Enum TransitionToTime<>():Enum

TRANSITION_TO_TIME_SAME_POSITION = 0

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.


TRANSITION_TO_TIME_START = 1

Transition to the start of the destination clip.

Enum FadeMode<>():Enum

FADE_DISABLED = 0

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.


FADE_IN = 1

Use a fade-in in the next clip, let the current clip finish.


FADE_OUT = 2

Use a fade-out in the current clip, the next clip will start by itself.


FADE_CROSS = 3

Use a cross-fade between clips.


FADE_AUTOMATIC = 4

Use automatic fade logic depending on the transition from/to. It is recommended to use this by default.

Enum AutoAdvanceMode<>():Enum

AUTO_ADVANCE_DISABLED = 0

Disable auto-advance (default).


AUTO_ADVANCE_ENABLED = 1

Enable auto-advance, a clip must be specified.


AUTO_ADVANCE_RETURN_TO_HOLD = 2

Enable auto-advance, but instead of specifying a clip, the playback will return to hold (see add_transition()).

int clip_count<>():int

Amount of clips contained in this interactive player.

int initial_clip<>():int

Index of the initial clip, which will be played first when this stream is played.

void add_transition<>( int from_clip=, from_clip:int=, int to_clip=, to_clip:int=, TransitionFromTime from_time=, from_time:TransitionFromTime=, TransitionToTime to_time=, to_time:TransitionToTime=, FadeMode fade_mode=, fade_mode:FadeMode=, float fade_beats=, fade_beats:float=, bool use_filler_clip=false, use_filler_clip:bool=false, int filler_clip=-1, filler_clip:int=-1, bool hold_previous=false, hold_previous:bool=false, ):void

Add a transition between two clips. Provide the indices of the source and destination clips, or use the CLIP_ANY constant to indicate that transition happens to/from any clip to this one.

* from_time indicates the moment in the current clip the transition will begin after triggered.

* to_time indicates the time in the next clip that the playback will start from.

* fade_mode indicates how the fade will happen between clips. If unsure, just use FADE_AUTOMATIC which uses the most common type of fade for each situation.

* fade_beats indicates how many beats the fade will take. Using decimals is allowed.

* use_filler_clip indicates that there will be a filler clip used between the source and destination clips.

* filler_clip the index of the filler clip.

* If hold_previous is used, then this clip will be remembered. This can be used together with AUTO_ADVANCE_RETURN_TO_HOLD to return to this clip after another is done playing.

void erase_transition<>( int from_clip=, from_clip:int=, int to_clip=, to_clip:int=, ):void

Erase a transition by providing from_clip and to_clip clip indices. CLIP_ANY can be used for either argument or both.

AutoAdvanceMode get_clip_auto_advance<>( int clip_index=, clip_index:int=, ):AutoAdvanceMode

Return whether a clip has auto-advance enabled. See set_clip_auto_advance().

int get_clip_auto_advance_next_clip<>( int clip_index=, clip_index:int=, ):int

Return the clip towards which the clip referenced by clip_index will auto-advance to.

StringName get_clip_name<>( int clip_index=, clip_index:int=, ):StringName

Return the name of a clip.

AudioStream get_clip_stream<>( int clip_index=, clip_index:int=, ):AudioStream

Return the AudioStream associated with a clip.

float get_transition_fade_beats<>( int from_clip=, from_clip:int=, int to_clip=, to_clip:int=, ):float

Return the time (in beats) for a transition (see add_transition()).

FadeMode get_transition_fade_mode<>( int from_clip=, from_clip:int=, int to_clip=, to_clip:int=, ):FadeMode

Return the mode for a transition (see add_transition()).

int get_transition_filler_clip<>( int from_clip=, from_clip:int=, int to_clip=, to_clip:int=, ):int

Return the filler clip for a transition (see add_transition()).

TransitionFromTime get_transition_from_time<>( int from_clip=, from_clip:int=, int to_clip=, to_clip:int=, ):TransitionFromTime

Return the source time position for a transition (see add_transition()).

PackedInt32Array get_transition_list<>():PackedInt32Array

Return the list of transitions (from, to interleaved).

TransitionToTime get_transition_to_time<>( int from_clip=, from_clip:int=, int to_clip=, to_clip:int=, ):TransitionToTime

Return the destination time position for a transition (see add_transition()).

bool has_transition<>( int from_clip=, from_clip:int=, int to_clip=, to_clip:int=, ):bool

Returns true if a given transition exists (was added via add_transition()).

bool is_transition_holding_previous<>( int from_clip=, from_clip:int=, int to_clip=, to_clip:int=, ):bool

Return whether a transition uses the hold previous functionality (see add_transition()).

bool is_transition_using_filler_clip<>( int from_clip=, from_clip:int=, int to_clip=, to_clip:int=, ):bool

Return whether a transition uses the filler clip functionality (see add_transition()).

void set_clip_auto_advance<>( int clip_index=, clip_index:int=, AutoAdvanceMode mode=, mode:AutoAdvanceMode=, ):void

Set whether a clip will auto-advance by changing the auto-advance mode.

void set_clip_auto_advance_next_clip<>( int clip_index=, clip_index:int=, int auto_advance_next_clip=, auto_advance_next_clip:int=, ):void

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.

void set_clip_name<>( int clip_index=, clip_index:int=, StringName name=, name:StringName=, ):void

Set the name of the current clip (for easier identification).

void set_clip_stream<>( int clip_index=, clip_index:int=, AudioStream stream=, stream:AudioStream=, ):void

Set the AudioStream associated with the current clip.




All social media brands are registrated trademarks and belong to their respective owners.





CONTACT IMPRINT TERMS OF USE PRIVACY © ROKOROJI ® 2021 rokojori.com
CONTACT IMPRINT TERMS OF USE PRIVACY © ROKOROJI ® 2021 rokojori.com
We are using cookies on this site. Read more... Wir benutzen Cookies auf dieser Seite. Mehr lesen...