MIDI import

MuseScore can import MIDI files (.mid/.midi/.kar) and convert them into music notation. To import, use the standard Open command.

Initially, the programs renders the MIDI to notation using certain default settings. A MIDI Import Panel appears at the bottom of the screen, showing a list of tracks (only tracks with note events are shown) and the operations available for each track. You can change these settings on a track-by-track basis and then reimport the data: The “Apply” button (at the top) submits any changes with immediate effect. The "Cancel" button immediately cancels any unsaved changes. The final result should be a better quality score reproduction of the file.

Use Shift+Wheel or Ctrl+Wheel to scroll track options horizontally; scroll tracks vertically without those modifiers.

If there are multiple tracks, then one more track is added at the top of the list to select all tracks at once.

MIDI Import Panel

In the MIDI Import Panel, you can choose which tracks to import and reorder them. Some information about each track is displayed: sound, staff name, and lyrics, if any. The presence of the lyric column is an indication that the file contains a lyric track—assignable to different tracks through the drop-down menu.

The MIDI import panel updates the relevant information of whatever file is in view, if the user has several open. If the MIDI import panel is no longer required, it can be closed by clicking the close button in the top-left corner. The panel will re-appear after clicking on the button "Show MIDI import panel" which appears right after the panel is closed.

After saving the score, the MIDI Import Panel will not be available, because MuseScore is no longer importing a MIDI file.

Available operations

MuseScore instrument
Assign a MuseScore instrument (listed in instruments.xml or in specified custom xml file in Preferences) that defines staff name, clef, transposition, articulations, etc.

Quantize MIDI notes by some regular grid. The grid MAX resolution can be set via the drop-down menu:

  • Value from preferences (default) - quantization value is taken from the main Preferences dialog of MuseScore (in the “Import” tab)
  • Quarter, Eighth, 16th, 32nd, 64th, 128th - user-defined values

However, the actual quantization grid size is adaptive and reduces when the note length is small, so for each note the quantization value is different. But there is an upper limit for the quantization value, and that value can be set by the user as "max. quantization".
For example, if some note is long - say, half note, and the max. quantization is set to 8th, then the note will be quantized with the 8th-note grid, not the half- or quarter-note grid as it supposed to be by the algorithm.
Such quantization scheme allows to quantize all notes in the score (with different lengths!) adequately.

Max. voices
Sets maximum count of allowed musical voices.
Search tuplets
When enabled, this option attempts to detect tuplets and applies the corresponding quantization grid to the tuplet chords.
Is human performance
If enabled, this option reduces the accuracy of MIDI-to-score conversion in favor of readability. It is useful for unaligned MIDI files, when no regular quantization grid is provided. For such files the automatic beat tracking algorithm is used which tries to detect the bar positions throughout the piece.
2x less measure count
The option is active for unaligned MIDI files (when "Is human performance" is checked by default). It halves measure count obtained in the internal beat tracking operation. It may be convenient when the beat tracking gives 2x more frequent bar subdivision than necessary.
Time signature
The option is active for unaligned MIDI files. The user can choose an appropriate time signature for the whole piece if the default detected value is wrong. The option is useful because it handles imported tuplets correctly unlike the direct time signature setting from the palette.
Split staff
This option is suited mainly for piano tracks - to assign notes to the left or right hand of the performer. It uses constant pitch separation (the user may choose the pitch via sub-options) or floating pitch separation (depending on the hand width - sort of a guess from the program point of view).
For drum tracks (“Percussion” sound in the track list) it splits the staff into multiple staves, each of which gets only one drum pitch (i.e. drum sound). There is also a sub-option to allow/disallow the application of the square bracket for the newly created set of drum tracks.
Clef changes
Small clefs can be inserted within a staff to keep chords closer to the 5 staff lines. Clef changes depend on the average pitch of the chord. Tied groups of notes are not broken by the clef insertion (if it occurs, one can report a bug for algorithm in importmidi_clef.cpp). This option is available for non-drum tracks only.
Simplify durations
Reduces number of rests to form more "simple" note durations. For drum tracks this option can remove rests and lengthen notes as well.
Show staccato
Option to show/hide staccato markings in the score.
Dotted notes
Controls whether MuseScore will use dotted notes or ties.
Show tempo text
Shows/hides tempo text markings in the score.
Show chord names
Shows/hides chord names in the score, if any, for XF MIDI file format.
Recognize pickup measure
When enabled, this option doesn't change the time signature of the first bar that is shorter than the second bar. It is also called anacrusis. This option is only available for all tracks at once.
Detect swing
MuseScore tries to detect swing, and automatically replace a pattern of 4th + 8th notes in triplets (for the most common swing feel, 2:1), or a dotted 8th + 16th pattern (for shuffle, 3:1), with two straight 8ths and a “Swing” or “Shuffle” text at the beginning.
Do you have an unanswered question? Post it in the forum.