I think you're close -- this slightly edited version
seems to work:

(define (strum e)
  (if (> (mus-location e) (mus-length e))
      (mus-reset e))
  (env e))

(with-sound (:srate 48000 :channels 1 :play #t)
(let ((gen (make-polyshape 100.0 :partials (list 1 .5 2 .25 3 .125 4 .125))) (strum-env (make-env '(0 0 .25 0.01 .5 0.2 1 0.0) :scaler 1.0 :duration 1 :base .53))
        )
    (do ((i 0 (+ i 1)))
        ((= i 96000))
      (outa i (* .5 (polyshape gen 0.95 (strum strum-env))))
      )))

In your code, you had two things named "strum", and
the map-channel wasn't needed.

_______________________________________________
Cmdist mailing list
[email protected]
https://cm-mail.stanford.edu/mailman/listinfo/cmdist

Reply via email to