Harmony
Keywords: mma

Subsections

- Harmony
  - Chord Based
  - Note Value Based
  - Interval Based
  - Combining Harmonies
  - Random Harmony Selection
  - Some notes and cautions
- HarmonyOnly
- HarmonyVolume

#
Harmony

MMA can generate harmony notes for you ... just like hitting two or more keys on the piano! And you don't have to take lessons.

Automatic harmonies are available for the following track types: Bass, Walk, Arpeggio, Scale, Solo and Melody.

Just in case you are thinking that MMA is a wonderful musical creator when it comes to harmonies, don't be fooled. MMA 's ideas of harmony are quite facile. It determines harmony notes by finding a note lower or higher than the current note being sounded within the current chord or a specified interval. And its notion of “open” is certainly not that of traditional music theory. But, all that said, the results can be quite pleasing.

#
Harmony

To enable harmony notes, use a command like:

Solo Harmony 2

You can set a different harmony method for each bar in your sequence.

There are two kinds of harmony: chordal and interval.

### Chord Based

Harmonies based on the current chord examine the chord and select notes to add from that chord. This method ensures that the resulting harmony will be consonant ... but not necessarily exciting. The following mnemonic values can be used to set a chord-based harmony:

2 or 2Below Two part harmony. The harmony note selected is lower (on the scale). 28Below Two part harmony, the harmony note is lowered by an additional octave. 2Above The same as “2”, but the harmony note is raised an octave. 28Above The same as “2Above”, but the harmony note is raised by two octaves. 3 or 3Below Three part harmony. The harmony notes selected are lower. 3Above The same as “3”, but both notes are raised an octave. 38Above Same as “3”, but the two harmony notes are raised by two octaves. 38Below Same as “3”, but the two harmony notes are lowered by two octaves. Open or OpenBelow Two part harmony, however the gap between the two notes is larger than in “2”. Open8Below Same as “OpenBelow”, but the harmony note is lowered by an additional octave. OpenAbove Same as “Open”, but the added note is above the original. Open8Above Same as “OpenAbove”, but the added note is raised by an additional octave. Root The root note of the chord is added. If the note is the same as the root note, no harmony will be generated. See ROOTBELOW and ROOTABOVE, below, for alternatives. RootBelow, Root8Below & Root16Below The root note will be lower than the solo note. The “8” and “16” variants move the harmony note one or two octaves one or two octaves lower. RootAbove, Root8Above & Root16 The root note will be higher than the solo note. The “8” and “16” variants move the harmony note one or two octaves up. Top The top note of the current chord is added. If the note is the same as the chord's top note no harmony will be applied. Neither the octave of the current note or chord is considered in the calculation and this may result in unexpected results. See TOPBELOW and TOPABOVE, below, for alternatives. TopBelow, Top8Below & Top16Below The top note of the chord will be lower than the solo note. The “8” and “16” variants move the harmony note one or two octaves lower. TopAbove, Top8Above & Top16Above The top note of the chord will be higher than the solo note. The “8” and “16” variants move the harmony note one or two octaves higher.

### Note Value Based

The following options do not look at the current chord, they just add a “harmony note” based on the current note. Since they are all simple octave relationships there should be no dissonances generated.

8 or 8Below A note 1 octave lower is added. 8Above A note 2 octave higher is added. 16 or 16Below A single note two octaves below is added.15.1 16Above A single note two octaves above are added. 24 or 24Below A single note three octaves below is added. 24Above A single note three octaves above is added.

### Interval Based

You can harmonize using specific intervals ... these are not based on the current chord, but only as a mathematical relationship between notes. Intervals like this are quite common in commercial music, but you must be careful in MMA with this method since it is easy to create dissonant or clashing sounds (which you may or may not want).

Please note that the current scale/chord is not considered when determining the interval.

To specify an interval type harmony start a “name” with a leading “:” or an octave specifier and a “:” (the presence of a single “:” tells MMA that you want to use an interval). The octave can be any value between -4 and 4. This is the number of octaves to add or subtract to the interval. The “name” part of the interval can be specified in a two of different ways:

1. Value: A single value specifying the number of semitones to offset the harmony note. For example:

   Solo Harmony :5

   would generate a harmony note 5 semitones above the solo note. This is the same as a perfect fourth.

   Adding the octave modifier:

   Solo Harmony -1:5

   will generate the same perfect fourth a full octave below the solo note. Other examples include:

   Arpeggio Harmony 2:2

   which generates harmony notes 26 semitones above the note, and

   Bass Harmony :24

   for “harmony” notes 2 octaves above the note.

2. Mnemonic: A descriptive term for the interval. The following table lists the basic terms which MMA recognizes:

   Mnemonic | Semitones
   --- | ---
   Unison | 0
   MinorSecond | 1
   MajorSecond | 2
   DiminishedThird | 2
   MinorThird | 3
   AugmentedSecond | 3
   MajorThird | 4
   DiminishedFourth | 4
   PerfectFourth | 5
   AugmentedThird | 5
   AugmentedFourth | 6
   DiminishedFifth | 6
   PerfectFifth | 7
   DiminishedSixth | 7
   MinorSixth | 8
   AugmentedFifth | 8
   MajorSixth | 9
   DiminishedSeventh | 9
   MinorSeventh | 10
   AugmentedSixth | 10
   MajorSeventh | 11
   DiminishedEight | 11
   Octave | 12
   AugmentedSeventh | 12

   To make typing a bit easier, you can shorten any of Minor, Major, etc. to the first three letters (Min, Maj, etc.) and the values Second, Fifth, etc. to an integer (2, 5, etc.). So, “MajorSeventh” could be entered as “Major7” or “MajSeventh” or “Maj7”.

Many of the about intervals are going to sound “odd” to say the least. Others are duplications of the chord based intervals, for example “Octave” is the same as “8Above”.

### Combining Harmonies

You can combine any of the above harmony modes by using a “+” (no spaces!). For example:

OPEN+8Below will produce harmony notes with an “Open” harmony and a note an octave below the current note. 3Above+16 will generate 2 harmony notes above the current note plus a note 2 octaves below. 8Below+8Above+16Below will generate 3 notes: one 2 octaves below the current, one an octave below, and one an octave above. -1:Per4+8Above generates 2 harmony notes: one a perfect fourth above, less an octave (same as a perfect fifth below) plus a note a full octave above.

### Random Harmony Selection

You can force the selection of a random harmony by concatenating a number of harmony types with commas. For example:

Solo Harmony Open,OpenAbove,OpenBelow

will select a harmony from one of the types in the list. Each time a harmony note is needed a new random selection will be made.

The special type NONE can be used to cause no harmony note to be generated.

It is perfectly acceptable to combine a random selection with the “+” combination:

Bass Harmony Bottom+Open,OpenBelow,None

will force the bottom note of the current chord to be added to one of the harmony types, or if NONE is selected, no additional note at all.

As noted elsewhere in this section, no spaces are permitted in a random list (spaces are used to set harmonies for different sequence points).

### Some notes and cautions

- MMA , trying to be intelligent, will not create a harmony when the chord for a given beat is turned off. So, if you have a sequence like:

  F FzC F / {4a;b;c;d;}

  no harmony notes will be generated for the second beat.

- There is no limit to the number of modes you can concatenate. Any duplicate notes generated will be ignored.

- To disable harmony use a “0”, “-” or “None”.

- Be careful in using harmonies. They can make your song sound heavy, especially with BASS notes (applying a different volume may help).

- The duration of the harmony notes will be the same as the original note.

- The command has no effect in DRUM or CHORD tracks.

- If the “note” at the current position is already a “chord” (let's say you have a solo and you set “4a;bc;d;e”) beat 2 will not have a harmony applied. This can be useful to skip harmony on certain notes: just set the note twice (i.e., “4aa;bb;2c” will only have harmony applied to beat 3 and the duplicate notes will be stripped before the MIDI is generated).

#
HarmonyOnly

As a added feature to the automatic harmony generation discussed in the previous section, it is possible to set a track so that it only plays the harmony notes. For example, you might want to set up two ARPEGGIO tracks with one playing quarter notes on a piano and a HARMONYONLY track playing a violin. The following snippet is extracted from the song file “Cry Me A River” and sets up two different choir voices:

Begin Arpeggio Sequence A4 Voice ChoirAahs Invert 0 1 2 3 SeqRnd Octave 5 RSkip 40 Volume p Articulate 99 End Begin Arpeggio-2 Sequence A4 Voice VoiceOohs Octave 5 RSkip 40 Volume p Articulate 99 HarmonyOnly Open End

Just like the HARMONY command, above, you can have different settings for each bar in your sequence. Setting a bar (or the entire sequence) to “-”, “None” or “0” disables the HARMONYONLY settings.

The command has no effect in DRUM or CHORD tracks.

If you want to use this feature with SOLO or MELODY tracks you can duplicate the notes in your RIFF or in-line notation or with the AUTOHARMONYTRACKS COMMAND.

#
HarmonyVolume

By default, MMA will use a volume (velocity) of 80% of that used by the original note for all harmony notes it generates. You can change this with the the HARMONYVOLUME command. For example:

Begin Solo Voice JazzGuitar Harmony Open HarmonyVolume 80 End

You can specify different values for each bar in the sequence. The values are percentages and must be greater than 0 (large values work just fine if you want the harmony louder than the original). The command has no effect in DRUM or PLECTRUM tracks.

#### Footnotes

... added.15.1
  Please don't confuse MMA 's idea of 16ABOVE (and other variants) with the proper musical notation of 15ma (often incorrectly shown as 15va), etc. A single note two octaves below another is 15, not 16, whole tones down.