You need to log in to create posts and topics.

Playing notes outside of the current scale


This is basically the same question, asked two different ways:

  1. How can I include a chord in a chord progression that is comprised of notes that are not in the current scale?
  2. Is there a way to sharpen or flatten a particular note or notes by one semitone?

Basically I have a chord progression in the melodic minor scale, but I want to end on the root major chord.

I could switch the scale to chromatic and describe the chords that way, but it would be more convenient if there was a way to simply sharpen or flatten a particular note without leaving the scale.



Ugh, another clumsy post where the answer was already there.  Sorry!

  • Right now if you want to add a sharp or flat you can specify the pitch as a floating point number. e.g. 0.5 would be C# in the default scale. I get this question a lot and I'm not sure this is the best way to address the problem. For instance using a pitch value of 2.5 in the default scale gives you the note between E and F where there is no middle semitone.

No worries - I will add it to the FAQ. I have been wondering about a "sharp"/"flat" function to make it explicit. Would it be a useful addition? e.g.

p1 >> pads([0,flat(2),2,3])

Oooooh that seems like it could be perfect.  So, if I wanted to play a chord progression like:  Cminor --> G --> Cmajor, I could set the scale to minor and declare the notes in the chord explicitly:

p1 >> pads([(0,2,4), (4, 6, 8), (0, sharp(2), 4)])

But I can't think of a way to implement it in the case of the notes of the chord being added to the end like:

p1 >> pads([0, 2, 4]) + (0,2,4)

Which maybe just means it has to be done the first way, which is perfectly fine.

Another option which could be nice would be the ability to specify notes on the chromatic scale while in another scale, like:

p1 >> pads([(0,2,4), (4,6,8), (0, chromatic(4), 4)])

I love FoxDot!