[linux-audio-dev] XAP: a polemic

David Olofson david at olofson.net
Mon Dec 16 21:52:00 UTC 2002


On Tuesday 17 December 2002 03.19, Pascal Haakmat wrote:
> 16/12/02 20:04, Taybin Rutkin wrote:
> > On Tue, 17 Dec 2002, Pascal Haakmat wrote:
> > > accomodate every possible musical expression under the sun. A
> > > musical instrument is always part of a culture and a history
> > > and this defines its use.
> >
> > But in this case, they're designing a system for designing
> > instruments. Such a system should be able to accomodate every
> > possible musical expression under the sun.
>
> I don't believe it. If it is that comprehensive it won't be very
> useful. And if it's useful, it won't be that comprehensive.
>
> > > After all, is it preferable to have a piece of wood with the
> > > potential to become any kind of instrument, or a guitar?
> >
> > I like this metaphor because in this case, they're trying to find
> > the most generally useful peice of wood for as many instruments
> > as possible.
>
> Exactly. It is totally backwards.

That sounds like you're ignoring the distinction between API and 
implementation. We're not trying to create a *synth*, but an API for 
synths.

And what's wrong with 1.0/octave for pitch? That covers every scale 
under the sun, and then some. Still the most trivial interface for 
pitch you can possibly come up with.

As to meter, that's only relevant to plugins that actually care. Beat 
sync plugins will have to look at the meter to see what "one beat" is 
or "one bar". If they want note values, they scale value parameters 
according to the beat value of the meter. Who cares if these values 
are all floats...?

Both of these are examples of interfaces that will make plugins 
trivial to implement, while automatically allowing them to support 
advanced features. You get continuos pitch, non-ET scales and "weird" 
meters *for free*.

It's just a matter of picking the right units and relations, so the 
calculations you have to do *anyway* become generic, rather than 
fixed to a specific, simplified view.


//David Olofson - Programmer, Composer, Open Source Advocate

.- The Return of Audiality! --------------------------------.
| Free/Open Source Audio Engine for use in Games or Studio. |
| RT and off-line synth. Scripting. Sample accurate timing. |
`---------------------------> http://olofson.net/audiality -'
   --- http://olofson.net --- http://www.reologica.se ---



More information about the Linux-audio-dev mailing list