;;; examples of one-cut ;;; simple call (no parameters changed) (with-sound () (let ((cut-soundfile "tubular-bell.snd")) (one-cut 0 0.7))) ;;; changing sample-rate (with-sound () (let ((cut-soundfile "tubular-bell.snd") (cut-sample-rate 0.5)) (one-cut 0.0 1.0))) ;;; changing sample-rate and sample-rate-dev (with-sound () (let ((cut-soundfile "tubular-bell.snd") (cut-sample-rate 0.5) (cut-sample-rate-dev 3.0)) (one-cut 0.0 1.0))) ;;; changing sampling-rate ;;; using loop to generate multiple samples ;;; with random sample-rate-deviation (with-sound () (let ((cut-sample-rate 1.0) (cut-srt-func '(0 1 0.5 0 1 1)) (cut-soundfile "tubular-bell.snd")) (loop for i from 0 by 0.1 below 1.0 do (one-cut i 1.0 :sample-rate-dev (+ 1.0 (random 2.0)))))) ;;; grouping bells by harmonic series (with-sound () (let ((cut-srt-func '(0 1 0.5 0.3 1 0)) (cut-soundfile "tubular-bell.snd") (cut-sample-rate-dev 0.1)) (loop for i from 1 to 10 do (one-cut 0.0 1.0 :sample-rate i)))) ;;; grouping bells by subharmonic series ;;; changing vibrato speed and amplitude (with-sound () (let ((cut-srt-func '(0 1 0.5 0.3 1 0)) (cut-soundfile "tubular-bell.snd") (cut-sample-rate-dev 0.1) (cut-vib-osc-freq 3.0) (cut-vib-osc-freq-dev 1.5) (cut-vib-osc-amp 0.7) (cut-vib-noi-freq 7.0) (cut-vib-noi-amp 0.3)) (loop for i from 1 to 10 do (one-cut 0.0 1.0 :sample-rate (/ 1 i))))) ;;; arpeggio bells by subharmonic series ;;; changing vibrato speed and amplitude ;;; scaling each sound and panning (with-sound (:channels 2) (let ((cut-srt-func '(0 1 0.5 0.3 1 0)) (cut-soundfile "tubular-bell.snd") (cut-sample-rate-dev 0.1) (cut-vib-osc-freq 3.0) (cut-vib-osc-freq-dev 1.5) (cut-vib-osc-amp 0.5) (cut-vib-noi-freq 7.0) (cut-vib-noi-amp 0.15) (cut-amp-func '(0 1 0.01 0.707 1 0)) (time 0.0)) (loop for i from 1 to 10 for amp from 1.0 by -0.07 do (one-cut time amp :sample-rate (/ 1.0 i) :degree (between 0.0 90.0)) (incf time (between 0.5 1.0)))))