Re: [LAD] Internally representing pitch : A new approach

From: Jeff McClintock <jef@email-addr-hidden>
Date: Mon Oct 03 2011 - 23:19:48 EEST

Don't base anything on 7-bit MIDI, it's too low-fi for a modern system, plus
it's keyboard-centric (i.e the concept of each note 'stuck' at a single
pitch is too restrictive). Plus it's being replaced by hi-def MIDI.

My suggestions:
* Use at least 32-bit floating point to represent pitch to give high
accuracy.
* Base pitches internally on octaves. E.g. 440Hz = 'octave 0.0', 880Hz =
'octave 1.0' etc. An octave is a fundamental unit of pitch which is not
biased to any particular tuning system.
 Don't use plain frequency in Hertz, Hz are very un-musical because they do
not scale the same way as our ear perceives pitch.
* Separate the concept of 'key number' and 'pitch' (MIDI seems to confuse
people on this point). A key-number is NOT pitch and vice versa. This is so
you can...
* Support two 'keys' playing the same pitch, this is critical for stringed
instruments like guitars.
* Support 'bending' pitch on each note independently.
* Support the concept of re-triggering a voice that's already playing, this
is important for any percussive instrument. E.g. hitting a cymbal twice in
quick succession should not trigger the sound of two cymbals playing
together.

Best Regards,
Jeff

SynthEdit

_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@email-addr-hidden
http://lists.linuxaudio.org/listinfo/linux-audio-dev
Received on Tue Oct 4 00:15:02 2011

This archive was generated by hypermail 2.1.8 : Tue Oct 04 2011 - 00:15:02 EEST