MIDI import

Updated 2 years ago
This page shows old instructions for MuseScore 3.
For MuseScore 4 users, see MIDI import.

    MuseScore can import MIDI files (.mid/.midi/.kar) and convert them into music notation.

    • To import a MIDI file, use the standard Open command. This converts the MIDI file into a MuseScore file (.mscz) and applies the default quantization settings.

    The MIDI Import Panel appears at the bottom of the screen: you can expand this by dragging the interface with the document window upwards. The panel shows all the tracks in the file (only those with note events are shown) and allows you to adjust parameters affecting the conversion process. 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

    • To accept the default conversion: Simply press the "X" symbol on the top-left of the Import Panel to close it. The panel can be re-opened at any time during the session by pressing "Show MIDI import panel" at the bottom of the document window.

    • To reimport the file: Adjust the desired parameters in the Import Panel (see below) and press Apply. If you have made changes to the Import Panel but wish to UNDO them, press Cancel. To close the Import Panel, press the "X" symbol at the top-left of the panel.
      If you reimport the file after making changes to the temporary generated result score, MuseScore will prompt you what should happen with that modified score: Save it somewhere, Discard it or Cancel. The Save option will save the modified score as a Musescore file in your \bin directory without modifying the original MIDI file. It will then reimport the original MIDI file and apply the import panel settings. The import panel settings are NOT applied to the saved file. The Discard option will UNDO your changes to the Musecore file, then reimport the original MIDI file and apply the new settings. The Cancel option will reimport the original MIDI file in the first tab and apply any import panel setting then create a new tab with your modified score but without applying any import panel settings. The second tab is the same as hitting SAVE, then opening the saved file. Therefore, you cannot apply import panel settings to a user modified score. You must first apply the import panel settings, make any changes to the score, then save the score using the standard Save command.

    Mouse wheel scrolling (MIDI Import Panel): Vertical scrolling is the default. For horizontal scrolling, press Shift or Ctrl while using the wheel.

    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.
    Quantization

    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 still have an unanswered question? Please log in first to post your question.