[CM] generators

bil at ccrma.Stanford.EDU bil at ccrma.Stanford.EDU
Mon Dec 11 15:59:49 PST 2017


The fm part is normally imitating fm in an oscil.  If you have

(with-sound (:play #t)
   (let ((gen (make-oscil 300)))
      (do ((i 0 (+ i 1)))
	 ((= i 20000))
        (outa i (* .5 (oscil gen .01))))))

the .01 fm is just a constant added to the phase-increment which
changes the (constant) frequency of the oscil.  The same thing in nxycos
makes the n cosines jump out (if they were fusing before) mostly
because you've raised the pitch.

Here is fm in nxycos:

(with-sound (:play #t)
   (let ((gen (make-nxycos 300 1/3 3))
	(fm (make-oscil 300)))
      (do ((i 0 (+ i 1)))
	 ((= i 20000))
        (outa i (* .5 (nxycos gen (* .01 (oscil fm))))))))


(+ angle fm frequency) is just like (+ 1 2 3).



More information about the Cmdist mailing list