Processing:Библиотеки/Sound/Класс AudioSample/play()
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Содержание | Среда разработки Processing | Справочник языка Processing | Библиотеки | Примеры | Режимы программирования |
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
![]() |
Черновик |
play()[1]
Класс
AudioSample
Обозначение
play()
Описание
Запускает проигрывание звукового фрагмента. Доходит до конца фрагмента, а потом останавливается, то есть проигрывает его всего единожды. Если ранее были вызвана функция cue() или pause(), проигрывание начнется с позиции, заданной какой-либо из этих функций.
Синтаксис
.play()
.play(rate)
.play(rate, amp)
.play(rate, pos, amp)
.play(rate, pos, amp, add)
.play(rate, pos, amp, add, cue)
Параметры
rate – относительная скорость проигрывания звукового фрагмента. Если задать «1.0», фрагмент будет проигрываться с нормальной скоростью, если задать «0.5» – вдвое медленнее обычного и частотой звука, пониженной на 1 октаву, а если задать «2.0» – вдвое быстрее и частотой звука, повышенной на 1 октаву. Тип данных – float
pos – стерео-значение звукового фрагмента. Варьируется от «-1.0» (весь звук будет идти в левое «ухо») до «1.0» (весь звук будет идти в правое «ухо»). Работает только с моно-фрагментами! Тип данных – float
amp – громкость проигрывания звукового фрагмента. Значения варьируются от «0.0» (полная тишина) до «1.0» (полная громкость). Тип данных – float
add – корректирует так называемое «смещение постоянного тока» (англ. «DC offset»), т.е. смещает звуковую волну на заданное значение относительно нулевого уровня. Тип данных – float
cue – позиция, с которой нужно начать проигрывание фрагмента (в секундах). Тип данных – float
Возвращаемое значение
void
Пример
import processing.sound.*;
AudioSample sample;
void setup() {
size(640, 360);
background(255);
sample = new AudioSample(this, 100000);
// заполняем звуковой фрагмент случайными значениями
// (в результате он станет похож на белый шум):
for (int i = 0; i < sample.frames(); i++) {
sample.write(i, random(-100, 100));
}
sample.play();
}
void draw() {
}