AudioStreamRandomizer

Успадковує: AudioStream < Resource < RefCounted < Object

Обгортає пул аудіопотоків зі зміною висоти та гучності.

Опис

Вибирає випадковий AudioStream із пулу залежно від режиму відтворення та застосовує випадкове зміщення висоти та гучності під час відтворення.

Властивості

PlaybackMode

playback_mode

0

float

random_pitch

1.0

float

random_volume_offset_db

0.0

int

streams_count

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)

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 🔗

Керує тим, як цей рандомізатор AudioStream вибирає, який AudioStream відтворювати наступним.


float random_pitch = 1.0 🔗

  • void set_random_pitch(value: float)

  • float get_random_pitch()

Інтенсивність випадкової зміни висоти. Значення 1 означає відсутність варіацій.


float random_volume_offset_db = 0.0 🔗

  • void set_random_volume_offset_db(value: float)

  • float get_random_volume_offset_db()

Інтенсивність випадкової зміни гучності. Значення 0 означає відсутність змін.


int streams_count = 0 🔗

  • void set_streams_count(value: int)

  • int get_streams_count()

Кількість потоків у пулі потоків.


Описи методів

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) 🔗

Встановіть вагу ймовірності потоку за вказаним індексом. Чим вище це значення, тим більша ймовірність того, що рандомізатор вибере цей потік під час режимів випадкового відтворення.