lowest note. However, when the cents list does not begin with 0, it doesn't
seem to consistently specify the distance between adjacent steps. For

thanks, this is a bug. it seems the code simply looks for increasing order, not the starting value, to determine if the series is steps (relative distance ) or degrees (absolute)

so it takes (100 200) and thinks that these are degrees because they are monotonically increasing :/ . if you switch: (200 100) then it works:

CM> (setq foo (new tuning :name 'one :cents '(200 100) :lowest 261.625))
#<tuning "one">

CM> (setq bar (loop for i to 3 collect (hertz i :in foo)))
(261.625 293.66412 311.1263 349.22748)

CM> (note bar :hz)
(C4 D4 EF4 F4)


according to the documentation it should be explicitly looking for an initial cent value of 0 (or scaler of 1 i guess) to determine if its step or degree values. ill try to fix this later today.



Hi,
I've been experimenting with tunings, and there's one thing I can't figure
out. I'm using the "tuning" class with :cents. When the subsequent list
begins with 0, all is well and I can specify each notes distance from the lowest note. However, when the cents list does not begin with 0, it doesn't
seem to consistently specify the distance between adjacent steps. For
example:

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

Reply via email to