AudioStreamRandomizer
继承: AudioStream < Resource < RefCounted < Object
用音高和音量偏移,包装一个音频流池。
描述
根据播放模式,从池中随机选择一个 AudioStream,并在播放期间应用随机音高偏移和音量偏移。
属性
| ||
| ||
| ||
|
方法
void | add_stream(index: int, stream: AudioStream, weight: float = 1.0) |
get_stream(index: int) const | |
get_stream_probability_weight(index: int) const | |
void | move_stream(index_from: int, index_to: int) |
void | remove_stream(index: int) |
void | set_stream(index: int, stream: AudioStream) |
void | set_stream_probability_weight(index: int, weight: float) |
枚举
enum PlaybackMode: 🔗
PlaybackMode PLAYBACK_RANDOM_NO_REPEATS = 0
根据为每个流选择的概率权重随机挑选一个流,但尽可能避免连续两次播放同一个流。如果池中只有 1 个声音,则将始终播放同一个声音,从而有效地允许重复发生。
PlaybackMode PLAYBACK_RANDOM = 1
根据为每个流选择的概率权重随机挑选一个流。如果池中只有 1 个声音,则将始终播放同一个声音。
PlaybackMode PLAYBACK_SEQUENTIAL = 2
按照流池中出现的顺序播放流。如果池中只有 1 个声音,则将始终播放同一个声音。
属性说明
PlaybackMode playback_mode = 0
🔗
void set_playback_mode(value: PlaybackMode)
PlaybackMode get_playback_mode()
控制该 AudioStreamRandomizer 如何选择下一个要播放的 AudioStream。
随机音高变化的强度。值为 1 表示没有变化。
float random_volume_offset_db = 0.0
🔗
随机音量变化的强度。值为 0 表示没有变化。
流池中流的数量。
方法说明
void add_stream(index: int, stream: AudioStream, weight: float = 1.0) 🔗
在指定索引处插入一个流。如果索引小于零,则插入发生在底层池的末尾。
AudioStream get_stream(index: int) const 🔗
返回指定索引处的流。
float get_stream_probability_weight(index: int) const 🔗
返回与给定索引处的流关联的概率权重。
void move_stream(index_from: int, index_to: int) 🔗
将流从一个索引移动到另一个索引。
void remove_stream(index: int) 🔗
移除指定索引处的流。
void set_stream(index: int, stream: AudioStream) 🔗
设置指定索引处的 AudioStream。
void set_stream_probability_weight(index: int, weight: float) 🔗
设置流在指定索引处的概率权重。该值越高,随机化器在随机播放模式下选择该流的可能性就越大。