Modes:
-- free-running
-- button trigger that grabs one buffer full
-- amplitude trigger option (adjustable threshold) on one channel to
allow freeze of both l&r signals
test with handclaps and two mics spaced far enough apart to measure
speed of sound
output of the following devices would also want to be fed to stereo
scope
2) Stereo signal generator:
Two channels are identical except that second has adjustable start
time offest
(to play with phase delay between channels)
Modes:
-- waveform oscillator (sin, saw, pulse, square) w/ amp & freq
controls
-- noise (white, 1/f)
-- chaotic unit generator with real-time control of degree of turbulence
Good one is logistic map or use this:
x = 0.002; initial condition, can be varied at start of run from
-1.0 to 1.0
a0 = -.6; can be varied during run from -1.0 to 0.0 to control
degree of turbulence
a1 = -.6;
a2 = 2.0;
x = a0 + (a1 * x) + (a2 * x * x);
if (fabs(x)>1.0) x = x * -0.0001;
3) Kitchen-sink 1D waveguide (clarinet, bugle)
Real-time control of
-- loop filter
-- loop length
-- output scaling
Modes: (choice of excitation by)
-- impulse
-- coupled polynomial non-linearity from input breath pressure (the
usual reed simulation)
-- sndin from one line in
-- gaussian noise
-- external waveform source (could be derived from signal generator)
Extras:
-- pulsed noise that amplitude modulates gaussian noise by instantaneous
level of loop output
-- passive non-linearity in loop
4) Make a really long delay version of the previous waveguide (sub-audio loop length)
5) (to do) implement Scot van Duyne's 2D mesh, or maybe it is already? for vibrating plates
6) examples of reverb
-- (to do) schroeder style with real-time controls and sndin
-- convolution method (not real-time) with choice of sound files