JavaScript:Библиотеки/p5.sound/Класс p5.Envelope/triggerRelease()
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
triggerRelease() [1]
Описание
Запускает стадию затухания ADSR-огибающей. Действие этой функции аналогично отпусканию клавиши пианино и последующему затуханию звука, которое будет происходить в соответствии со значениями в параметрах, отвечающих за уровень затухания и длительность затухания.
Чтобы использовать эту функцию, нужно подключить библиотеку p5.sound. Для этого в заголовок своего файла «index.html» впишите следующее:
<script language="javascript" type="text/javascript" src="path/to/p5.sound.js"></script>
Синтаксис
triggerRelease(unit, secondsFromNow)
Параметры
unit – объект из библиотеки p5.sound или объект AudioParam из Web Audio API, громкость которого будет управляться с помощью ADSR-огибающей. Тип данных – объект
secondsFromNow – время (в секундах) после вызова функции, спустя которое будет включен заданный звуковой объект с ADSR-огибающей. Тип данных – number
Возвращаемое значение
Пример
№1
var attackLevel = 1.0;
var releaseLevel = 0;
var attackTime = 0.001
var decayTime = 0.3;
var susPercent = 0.4;
var releaseTime = 0.5;
var env, triOsc;
function setup() {
var cnv = createCanvas(100, 100);
background(200);
textAlign(CENTER);
text('click to play', width/2, height/2);
// 'кликните, чтобы начать проигрывание'
env = new p5.Env();
env.setADSR(attackTime, decayTime, susPercent, releaseTime);
env.setRange(attackLevel, releaseLevel);
triOsc = new p5.Oscillator('triangle');
triOsc.amp(env);
triOsc.start();
triOsc.freq(220);
cnv.mousePressed(envAttack);
}
function envAttack(){
console.log('trigger attack');
env.triggerAttack();
background(0,255,0);
text('attack!', width/2, height/2);
// 'атака!'
}
function mouseReleased() {
env.triggerRelease();
background(200);
text('click to play', width/2, height/2);
// 'кликните, чтобы начать проигрывание'
}