FaustWorkshop2014: Difference between revisions
Appearance
| Line 48: | Line 48: | ||
process = _ <: *(pan),*(1-pan); | process = _ <: *(pan),*(1-pan); | ||
</pre> | |||
==== Additive Synthesizer ==== | |||
<pre style="white-space: pre-wrap; | |||
white-space: -moz-pre-wrap; | |||
white-space: -pre-wrap; | |||
white-space: -o-pre-wrap; | |||
word-wrap: break-word;"> | |||
import("music.lib"); | |||
import("effect.lib"); | |||
gain = hslider("gain",0,0,1,0.01) : smooth(0.999); | |||
freq = hslider("freq",440,50,1000,0.1) : smooth(0.999); | |||
gate = button("gate") : smooth(0.999); | |||
process = osc(freq),osc(freq*2),osc(freq*3) :> *(gain)*gate <: _,_; | |||
</pre> | </pre> | ||
Revision as of 15:43, 8 July 2014
Day 1
Optional textbook to go further: http://www.amazon.com/Physical-Audio-Signal-Processing-Instruments/dp/0974560723
Simple Sine Oscillator Synthesizer
import("music.lib");
import("filter.lib");
g = hslider("myParameter",0,0,1,0.01);
freq = hslider("frequency",440,50,1000,0.1);
myOsc(frequency,gain) = osc(frequency)*(smoothGain)
with{
smoothGain = gain : smooth(0.999);
};
process = myOsc(freq,g) ;
Working with Signals
process = _ <: _,_,_,_ :> _;
is the same as:
process = _ <: _+_+_+_;
Simple Panner
import("filter.lib");
pan = hslider("pan [style:knob]",0.5,0,1,0.01) : smooth(0.999);
process = _ <: *(pan),*(1-pan);
Additive Synthesizer
import("music.lib");
import("effect.lib");
gain = hslider("gain",0,0,1,0.01) : smooth(0.999);
freq = hslider("freq",440,50,1000,0.1) : smooth(0.999);
gate = button("gate") : smooth(0.999);
process = osc(freq),osc(freq*2),osc(freq*3) :> *(gain)*gate <: _,_;