[Nyquist-users] seq-midi weirdness
Nyquist is a language for sound synthesis and music composition.
Brought to you by:
rbd
|
From: Steven J. <pl...@gm...> - 2008-01-26 21:35:13
|
Roger I have run across odd behavior while rendering Adagio scores.
The two files below set up a simple Adagio score and then realize it
using one of the Phil Light drum samples. It works as expected as long
as the tempo is below ~195. Increase the tempo and/or shorten note
durations and Nyquist aborts complaining about recursive sounds.
Further the effect seems to be accumulative. If you comment out the
third 1/16th note the first two render fine. Likewise, if you replace
the initial 1/16th notes with longer durations you can squeeze out
more notes before the problem appears. I have a suspicion this is
somehow related to the samples being stretched or time-shifted as a
function of tempo/duration.
--Steven
P.S. So far I have failed to take your advice and try
SCORE-READ-SMF instead. :)
*** start test.gio
!tempo 200
t0 v1 c4 s
c4 s
c4 s * Comment out this line and problem "goes away"
* c4 s
* c5 s
* c4 s
*** end test.gio
;; start test.lsp
(setf *gio-file* "/home/sj/src/ny2/test.gio")
(setf *test-file* "/home/sj/Samples/DrumKits/plight/snare-3.wav")
(defun adagio->seq (filename)
(let ((seq (seq-create))
(fobj (open filename)))
(if fobj
(progn
(seq-read seq fobj)
(close fobj)
seq)
nil)))
(setf *seq* (adagio->seq *gio-file*))
(if (null *seq*)
(error (format nil "Could not open Adagio file: ~S" *file*)))
(defun debug-note (&rest args)
(aref (s-read *test-file*) 0))
(setq *result* (seq-midi *seq*
(note (chan pitch vel)
(debug-note))))
(play *result*)
;; end test.lsp
|