On Wednesday 04 December 2002 22.27, Steve Harris wrote:
On Wed, Dec 04, 2002 at 09:44:12 +0100, David Olofson
wrote:
Hoever
making sure htat the API is scale neutral (unlike generic MIDI)
is important. I'm not sure what the best way to ensure this is.
I use "linear pitch". 1.0 would be your MIDI standard middle C.
+1.0 would give you the next higher semitone, and +12.0 would
give you the next higher octave.
Thats somewhat semitone biased, if we use +1.0 is middle C, +2.0 is
one octave higher then we are tuning neutral, and, coincidentally
compatible with 1.0volt/octave analogue synths.
Well, I just decided to use 12.0 per octave in Audiality. No
particular reason (yeah, right! ;-), and it's easy enough to change.
With fixed point numbers, this affects accuracy slightly, but with
floats, it makes no difference whatsoever in that regard.
Well, then
there's no problem. It's just that if we design an API
for simple instruments, I can quarantee that it won't be too long
before we're here again, discussing a third API for "advanced
instruments". (That will probably happen anyway, but we can at
least *consider* covering what we know already.)
Well, no, because for advanced instruments (eg. a full featured
sampler) we have jack.
Well, yes - modulo a sample accurate event system that deals with
stuff beyond MIDI.
Or we just
design an event system and strap that onto JACK as
well as a stripped version of LADSPA. :-)
I think its reasonable to expect a jack app to be able to natively
understand MIDI/OSC/CV/whatever.
Sure - but how do I connect a sequencer to it, and how do I make it
all stay in sync? I think people will soon expect timing and reliable
of softsynths to be *better* than h/w synths + MIDI; not worse.
//David Olofson - Programmer, Composer, Open Source Advocate
.- Coming soon from VaporWare Inc...------------------------.
| The Return of Audiality! Real, working software. Really! |
| Real time and off-line synthesis, scripting, MIDI, LGPL...|
`-----------------------------------> (Public Release RSN) -'
.- M A I A -------------------------------------------------.
| The Multimedia Application Integration Architecture |
`---------------------------->
http://www.linuxdj.com/maia -'
---
http://olofson.net ---
http://www.reologica.se ---