A SCALA scale library interface would be a fantastic idea....I did something like this as an exercise in Python for turning SCALA .scl files into tuning dump commands for fluidsynth (even though SCALA itself has fluidsynth scale output :) )
One could use regex statements to parse the header, and have some case switches to determine if the line in the scale 'body' of the .scl file was a ratio, or value in cents, etc.
The synth engine would work with the final array of frequencies that were spit out into a MIDI-key indexed array....
I think this would be the easier part. The harder part, and where I think I'd need help, is integrating such functions into an existing audio architecture, plus integrating new GUI dialogs and menus into the same...it might take a whole to figure out if other things get broken as a result...I'm thinking for instance of envelope scaling being related to absolute pitch in HZ instead of MIDI note numbers. I haven't dug deep enough into the 'whysynth' code to see, but such things might need to be redesigned, and it might take time to work out any side effects of shoving SCALA interface code into the mix....maybe if Sean Bolton is on the list here, he'd have some insight into how to best fit things in with his existing code....
Perhaps the SCALA interface library could have a modular template of GUI dialogs/controls/menus for the more popular libs like GTK, FLTK, KDE, TK, etc.?
Anyway, I'd be happy as a pig in %^&* to see this in whysynth, and as a de facto standard library the same way jack is in any synth application now written.
Best,
AKJ
http://www.akjmusic.com #my site (lots of music made with linux there!)
http://www.untwelve.org #my project (microtonal/tuning-centric concert series ;) )
On Tue, Apr 28, 2009 at 5:25 AM, porl sheean
<porl42@gmail.com> wrote:
perhaps someone could write a simple library that takes a midi-key (0-127) as input, as well as a 'scala' mapping and outputs frequency numbers? rather than every project reimplementing the same idea.
having written this, you all probably think it is obvious anyway, so i'll keep quiet :)
porl
2009/4/28 Dave Phillips
<dlphillips@woh.rr.com>
Aaron Johnson wrote:
> ... after having located the code snippet in whysynth that creates a
> standard 12-equal tuning array, called 'y_pitch', as factors relative
> to 440HZ (A440), and indexed by MIDI note numbers. I wonder, how easy
> would it be to make this table dynamic and subject to for example,
> loading a SCALA .scl file, or at least, a user defined array which can
> be loaded from a dialog box?
I'd like to second Aaron's proposal/request. Support for Scala files
should be standard in all software synthesizers. It seems a bit
ludicrous to fix intonation at 12-tone ET when the medium is capable of
any intonation desired.
Best,
dp
_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev
_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev