re: Leviathan listening.
Nice piece which is made more enjoyable by an understanding of the technique
used to create it (wave sequencing).
I was intrigued by this technique, which seemed to have a basis in the Korg
Wavestation.
But the description I found online read something like:
"Single-cycle waveforms in succession with cross fades etc. Place the cycle in
a table and use an array of tables for the oscillator. Morph between different
single-cycle waveforms (tables) while playing.Use multiple oscillators. Can use
looping (forward and back), of all steps as well as individual cycles, and
modulation (forward and back) as well."
I was giving this a primitive try in Snd and not sure I was on the right track.
I found make-wave-train (instead of oscillator playing tables) was a bit more
accurate than pure table-lookup for some reason, and therefore just wrote the
waveforms directly to vectors. I couldn't understand the need for a
single-cycle waveform, but maybe that's a Korg thing.
Be interested to know if there was a much better approach I probably missed.
(definstrument (mysequence start-time duration frequency size amp (amp-env '(0
0 2 .5 3 -.25 5 0)) sampling-rate )
(let* ((beg (floor (* start-time sampling-rate)))
(end (+ beg (floor (* duration sampling-rate))))
(fsize size)
(dur (/ fsize sampling-rate))
(myenv (make-env amp-env :duration dur :scaler 1.0))
(myvec (make-float-vector fsize)) ;envel vector for waveform
(fadeinout (make-env '(0 0 1 .25 3 1.0 5 0):duration duration :scaler
1.0)) ;crossfade
)
(do ((k 0 (+ k 1)))
((>= k fsize))
(set! (myvec k) (myenv k)) ;place env values in float-vector
)
(let ((gen (make-wave-train
:frequency frequency
:initial-phase 0.0
:wave myvec
:size fsize
:type mus-interp-none
)))
(do ((i beg (+ i 1)))
((= i end))
(outa i (* amp (* (env fadeinout) (wave-train gen)))))
)))
(with-sound (:play #f :srate 48000 :channels 1
:header-type mus-riff
:statistics #t)
(mysequence 0 2 440.0 128 0.5 '(0 0 2 .5 3 -.5 5 0) 48000)
(mysequence 1 2 440.0 128 0.5 '(0 0 1 1 2 -1 3 1 4 -1 5 0) 48000)
)
...by the way, there's a nice line in Moby Dick where Gregory Peck refers to
the white whale as a leviathan.
_______________________________________________
Cmdist mailing list
[email protected]
https://cm-mail.stanford.edu/mailman/listinfo/cmdist