Subject: Re: MIDI renovations available for testing
To: Chapman Flack <nblists@anastigmatix.net>
From: Gavan Fantom <gavan@coolfactor.org>
List: tech-kern
Date: 05/23/2006 12:13:10
Chapman Flack wrote:
> I have begun working on a standard MIDI controllers module (nothing
> committed yet). As for the voice stealing, I am not an expert on such
> algorithms so I am sort of hoping that somebody else will be one, or
> want to become one. :)  I know some of the more obvious ideas are
> "recycle the voice whose currently sounding note is softest, or has
> decayed the most since its attack" and it might be good to protect
> any voice playing in legato mode from recycling. Other heuristics
> might be to avoid stealing voices with the brightest/most perceptible
> timbres, which could perhaps be estimated from the data fed to the
> synth chip. But here I am well out of my depth, and I'm pretty sure
> that even simple refinements to the current voice stealing would
> give a noticeable improvement in practice.

Most (hardware) synthesizers and keyboard that I've seen appear to use a
simple LRU algorithm. Looking at the midisyn code, it looks like that's
what's currently implemented.

I think that you can probably consider any sound which is still playing
after release to be finished, though. Currently, midisyn doesn't seem to
do any accounting for what happens after a note is finished, other than
marking it as not in use. Do any of the output devices support continued
audio output after a note is finished? (release phase)

Of course, the correct answer is "Don't play full orchestral
arrangements on devices with limited polyphony".

-- 
Gillette - the best a man can forget