[LAU] ot-ish: musical scales question

James Morris james at jwm-art.net
Mon Jul 5 09:39:53 UTC 2010


a program i'm making (yes that one) will benefit from knowing about
musical scales. i looked in the source code for non-sequencer (i'll
look at arpage next), and adapted an array there into the following
form:

    { "Major",              { 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1 }},
    { "Natural Minor",      { 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0 }},
    { "Harmonic Minor",     { 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0, 1 }},
    { "Melodic Minor",      { 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1 }},
    { "Major Pentatonic",   { 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0 }},
    { "Minor Pentatonic",   { 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0 }},
    { "Chromatic",          { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }}

(1 means a note is part of that scale, 0 means it is not).

so for C Major:

    { "Major",              { 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1 }},
                              c  c# d  d# e  f  f# g  g# a  a# b

(Unless I'm mistaken) all the above scales can be transposed to work
with any key.

Now I'm not very musical, and found my way to wikipedia, specifically this page:

http://en.wikipedia.org/wiki/Whole_tone_scale

Which says "In music, a whole tone scale is a scale in which each note
is separated from its neighbours by the interval of a whole step.
There are only two complementary whole tone scales, both six-note or
hexatonic scales:
    * {C, D, E, F♯, G♯, A♯, C}
    * {B, D♭, E♭, F, G, A, B}.
"

Which is confusing for me because it seems I can represent it in the array as:

    { "Whole Tone",         { 1, 0, 1, 0, 1 ,0, 1, 0, 1, 0, 1, 0 }},

But goes on to say I it is impossible for any key other than "c" or
"b" but the array representation seems to show it could work for any
key.

Can anyone explain?

Cheers,
James.


More information about the Linux-audio-user mailing list