frequncy and amplitude controlled by GUI
@author
import controlP5.*;
import ddf.minim.spi.*;
import ddf.minim.signals.*;
import ddf.minim.*;
import ddf.minim.analysis.*;
import ddf.minim.ugens.*;
import ddf.minim.effects.*;
Minim minim;
AudioOutput out;
Oscil osc;
ControlP5 cp5;
float freq, amp;
void setup(){
size(400, 300);
float radius = 40;
cp5 = new ControlP5(this);
cp5.addKnob("freq")
.setLabel("frequency")
.setRange(0, 1000)
.setValue(500)
.setPosition(width / 3 - radius, height / 2 - radius)
.setRadius(radius)
.setDragDirection(Knob.VERTICAL);
cp5.addKnob("amp")
.setLabel("amplitude")
.setRange(0, 1)
.setValue(0.5)
.setPosition(width * 2.0 / 3 - radius, height / 2 - radius)
.setRadius(radius)
.setDragDirection(Knob.VERTICAL);
minim = new Minim(this);
out = minim.getLineOut();
osc = new Oscil(440, 0.5, Waves.SINE);
osc.patch(out);
}
void draw(){
background(128);
osc.setAmplitude(amp);
osc.setFrequency(freq);
}