Interval transposition in MuseScore

Transposition in MuseScore 0.9.5 and earlier makes guesses on the pitch-spelling of the transposed notes and often guesses incorrectly. I created a reference table that can be used for tranposing notes without losing the correct pitch spelling. A human tranposing notes would use their exisiting knowledge of scales, plus various other mental tricks. However the method outline below uses a different approach that should be easier to code.

Interval Change of
Note Name
Semitones Example 1 Example 2
Perfect Unison 0 0 C - C F# - F#
Augmented Unison 0 1 C - C# F# - F##
Diminished Second 1 0 C - Dbb F# - Gb
Minor Second 1 1 C - Db F# - G
Major Second 1 2 C - D F# - G#
Augmented Second 1 3 C - D# F# - G##
Diminished Third 2 2 C - Ebb F# - Ab
Minor Third 2 3 C - Eb F# - A
Major Third 2 4 C - E F# - A#
Augmented Third 2 5 C - E# F# - A##
Diminished Fourth 3 4 C - Fb F# - Bb
Perfect Fourth 3 5 C - F F# - B
Augmented Fourth 3 6 C - F# F# - B#
Diminished Fifth 4 6 C - Gb F# - C
Perfect Fifth 4 7 C - G F# - C#
Augmented Fifth 4 8 C - G# F# - C##
Diminished Sixth 5 7 C - Abb F# - Cb
Minor Sixth 5 8 C - Ab F# - C
Major Sixth 5 9 C - A F# - C#
Augmented Sixth 5 10 C - A# F# - C##
Diminished Seventh 6 9 C - Bbb F# - Eb
Minor Seventh 6 10 C - Bb F# - E
Major Seventh 6 11 C - B F# - E#
Augmented Seventh 6 12 C - B# F# - E##
Diminished Octave 7 11 C - Cb F# - F
Perfect Octave 7 12 C - C F# - F#

Description of Table Headings


An interval name (such as minor second or perfect fifth) describes both the distance between two notes and the spelling of the transposed note.

The full interval name consists of two parts: the basic interval (Unison, 2nd, 3rd, 4th, 5th, 6th, 7th, or Octave) and a modifier (Augmented, Major, Perfect, Minor, or Diminished). The "Perfect" modifier is only used with Unisons, Fourths, Fifths, and Octaves. The "Major" and "Minor" modifier is only used with 2nds, 3rds, 6ths, and 7ths. "Augmented" and "Diminished" can be used with any interval.

To better describe each column of the table I will use the example of transposing a note upward by a diminished fourth.

Change of Note Name

The note name refers to the seven letters of the musical alphabet (A, B, C, D, E, F, G). A diminished fourth has a Change of Note Name of “3”. If you start with the note C then the transposed note name is F as shown in Figure 1 below.

When the musical alphabet is arranged in a circle you can hop around from any point

Figure 1 Change of Note Name of “3” starting from the letter C


From the previous section we know that a diminished fourth above C is some kind of F but we don’t know if the F needs any flats or sharps. Algorithmically we might use the following formula to find whether we need to add flats or sharps to the transposed note name found in the Change of Note Name section above.

(Number of semitones referenced in the table) – (Number of semitones between the starting note and the transposed note name) = (Flat/sharp alteration)

From the table we see that the number of semitones for a diminished fourth is 4. The number of semitones between our starting note C and the transposed note name F is 5. If we plug these numbers into the formula we get (4) – (5) = -1.

The flat/sharp alteration is an integer between -2 and 2 and represents double-flat, flat, natural, sharp, double-sharp respectively. Since the flat/sharp alteration is -1 we need to add a flat to the transposed F.

We now know that a diminished fourth above C is Fb.

Triple sharps and flats

It is possible for the flat/sharp alteration to go beyond the normal range of -2 to 2. For example a Major Sixth above “A double sharp” is technically “F triple sharp” (5 – 9 = -3). Whether to display a triple sharp or respell the note as “G sharp” depends on the context and the desire of the composer or editor.

If you transpose a selection via Notes > Transpose then my preference would be to respell as “G sharp”. The default in Finale is to show the triple sharp. The default in Sibelius is to respell. Perhaps a check box to allow triple sharps and flats would be a good idea.

However if I add the “A double sharp” to an alto saxophone in concert pitch and switch to transposing pitch (a major sixth higher) I would expect MuseScore to preserve the triple sharp or flat and display an “F triple sharp”. This way when I return to concert pitch the “A double sharp” hasn’t turning into a “B” (i.e. “non-lossy” transposition). Again the default in Finale is to show the “F triple sharp”. My copy of Sibelius 5.0.0 messes up and shows an “F sharp”.

Finale is capable of showing any number of sharps or flats before a note (see Figure 2 below). Sibelius is unable to handle triple sharps and flats and sometimes make serious mistakes (as mentioned above).

Finale allows any number of sharps or flats in front of a note including triple sharps or more

Figure 2 Multi-sharps and multi-flats in Finale 2007

User Interface

MuseScore’s current transposition dialog is very straight forward and easy to understand. Although the capability of interval transposition is necessary for composers/editors it adds terminology that is not necessary understood by a beginning musician. The user interface challenge is to create a transposition dialog that meets the needs of both the professional and the casual amateur of music.


Finale’s dialog has a single drop-down menu that gives a full list of the interval transpositions if you select “Chromatically” (see Figure 3 below). You can also elect to transpose “Diatonically” which gives only the basic interval names (Unison, Second, Third, etc.)

Finale transposition dialog

Figure 3 Finale’s chromatic transposition menu lists all the interval names within an octave.


Sibelius’ dialog splits the interval name into two drop-down menus. The first menu contains the modifier (Augmented, Major/Perfect, etc.) and the second menu contains the basic interval name (Unison, 2nd, 3rd, 4th, etc.). The advantage of having the two menus is the basic interval list is easier to read and quickly scan.

Notice in Figure 4 below that Major/Perfect are grouped together as a single menu item since they are mutually exclusive (for example if the basic interval is a 5th then it is a Perfect Fifth since there is no such thing as a Major Fifth). The modifier menu also groups Minor/Diminished together. Unfortunately the latter grouping is not mutually exclusive and means that Sibelius cannot transpose by a diminished 2nd, 3rd, 6th, or 7th.

Siblius transposition dialog

Figure 4 Sibelius separates the modifier and the basic interval into two separate menus.


MuseScore should adopt an interval-based user interface for transposition. Figure 5 below shows a dialog separated into two sections. The top half has full list of the chromatic transpositions similar to Finale. The bottom half retains the key signature and chord name options from the previous MuseScore dialog but adds a new option for multi-sharps and flats. The drop-down menu contains three options: (1) Single sharps and flats only (2) Use double sharps and flats (3) Use multi sharps and flats. The last option would allow triple sharps and flats or even quadruple sharps and flats if necessary.

Dialog option 1

Figure 5 Possible dialog for MuseScore (transposition by interval only)

Sibelius has a “Transpose by Key” option (as shown in Figure 4 above). This is another simple method of transposition that a beginning musician would understand. It is better than the “Transpose by Semitone” option since it does not have to guess about pitch spellings. The disadvantage is it may take more time to implement. It calculates the interval between the key chosen in the drop-down menu and the key signature of the selected notes (basically the transposition algorithm in reverse). Then it can apply the transposition to the selected notes using the regular interval transposition algorithm.

Figure 6 below shows what the dialog might look like in MuseScore if it contained methods for transposition by key as well as interval.

Dialog option 2

Figure 6 Possible dialog for MuseScore (transposition by key or interval)

David Bolton, November 2009.