Fwd: Re: [linux-audio-dev] XAP: Pitch control

Nathaniel Virgo nathaniel.virgo at ntlworld.com
Thu Dec 12 15:38:00 UTC 2002


On Thursday 12 December 2002 7:16 pm, David Olofson wrote:
> On Thursday 12 December 2002 15.26, Steve Harris wrote:
> > I guess it
> > depends what key you're in... which can't be expressed in a note
> > number anyway, so I still think its redundant.
>
> Well, then we're into this "tweaking notes for better harmonies"
> thing again... That's indeed hairy stuff, and plugins that want to
> actually *do* that (rather than just switching between whatever notes
> they get in an input chord) will have to understand quite a bit more
> than notes. You'll need to either operate entirely in linear pitch,
> or hint the plugin a little about what scale you're using. 

I think that these kind of hints would have to be available for other reasons 
as well, and I think they would have to be impossibly complex - see below.

> The latter
> is what a MIDI solution would do (unless it just assumes 12tET), but
> obviously, it's rather silly to do it that way if you can just work
> in the linear_pitch domain, after the scale converter, instead. After
> all, *perfect* harmonies are not strictly bound to scales anyway.
>
> > Now I think about it you wouldn't want to do arpegiation using note
> > numbers, what you're interested in the the pitch coefficient to get
> > the correct harmonic relation.
>
> In some cases, yes - but remember that the arpeggiator is not the
> *only* plugin in the system. If you play other synths as well, you'll
> probably want the arpeggiator to respect the scales used for those,
> rather than trying to find "perfect" harmonies all on it's own. With
> notes + scales, you make this trivial, even with non-ET scales, since
> all you have to do is use the same scale everywhere.

Unfortunately I can think of a case where it's far from trivial: an advanced 
twelve-tone arpeggiator that wants to play a major or minor chord depending 
on what note is being played, so that it can stay in the right key.  This 
requires the plugin to know not just the ordering of the notes on the scale, 
but also some arbitrarily complex data about their harmonic and cultural 
relationships to each other.  

Presumably this has an analog in some other types of scale, and so supporting 
it in general will be next to impossible without having each arpeggiator 
designed for a specific scale.

In fact, data about a scale needs to be known even for the really simple case 
of generating a chord from a note.

Basically what I'm saying is that the note_pitch idea goes some way towards 
making scales work, but not all the way, and I think it's going to keep 
making things more and more complicated when they could be really simple if 
we just said "if it can be done in linear pitch then fine, otherwise let the 
sequencer handle it."




More information about the Linux-audio-dev mailing list