xxxxxxxxxx
49
let wave;
let slider;
let button;
let playing = false;
let env;
function setup() {
createCanvas(400, 400);
wave = new p5.Oscillator();
slider = createSlider(100, 1200, 440);
wave.setType('sin');
wave.start();
wave.freq(440);
wave.amp(0);
button = createButton('play/pause');
button.mousePressed(toggle);
env = new p5.Env();
env.setADSR(0.5, 0.2, 0.7, 0.5);
// env.setRange(1.0, 0);
// wave.amp(env);
}
function draw() {
if (playing) {
background(255, 0, 255);
} else {
background(51);
}
// wave.freq(slider.value());
wave.freq(400 + 40*abs(sin(frameCount/2)));
}
function mousePressed() {
env.play();
}
function toggle() {
if (!playing) {
wave.amp(0.5, 1);
playing = true;
} else {
wave.amp(0, 1);
playing = false;
}
}