Why MIDI Needs Conversion
MIDI is a performance format, not a notation format. Think of it like an audio recording that captures when you pressed each key and how hard—but not how the music should look on paper.
What MIDI actually contains
- Note pitches (which keys were pressed)
- Timing (when each note started and ended)
- Velocity (how hard each key was pressed)
- Tempo and time signature
What MIDI doesn't contain
- Which hand plays which notes (left vs right)
- How to spell notes (C# or Db?)
- Where rests go (silence is just... silence)
- Articulations, dynamics, slurs
When you import a MIDI file, Crescendo converts it to MusicXML (real notation) using intelligent algorithms to reconstruct the missing information.
What's Preserved (The Good News)
Everything you need for practice mode works reliably:
| Information | Accuracy | Why It Matters |
|---|---|---|
| Note pitches | ~100% | Practice mode checks you're playing the right notes |
| Timing & rhythm | ~98% | Cursor advances at the right pace |
| Staff assignment | ~95% | Notes appear on correct staff (treble/bass) |
| Chords | ~95% | Simultaneous notes grouped correctly |
| Ties across barlines | ~90% | Held notes shown correctly |
| Grace notes | ~85% | Detected and marked (not required in practice) |
What Changes or Gets Lost
Some information can't be recovered from MIDI. Here's what might look different:
Enharmonic spelling
MIDI only knows "the black key between C and D"—not whether the composer wrote C# or Db. Crescendo guesses based on the key signature, but may choose differently than the original.
Impact on practice: None. C# and Db are the same piano key.
Rest placement
MIDI doesn't have rests—just silence between notes. Crescendo fills gaps with rests, but may decompose them differently (e.g., one half rest vs two quarter rests).
Impact on practice: None. The cursor navigates by note positions, not rests.
Dynamics and articulations
Markings like piano, forte, staccato, and accents don't survive MIDI export. Velocity (key pressure) exists but doesn't reliably map back to dynamic markings.
Impact on practice: None. Practice mode checks note correctness, not dynamics.
Slurs and phrasing
MIDI has no concept of slurs or phrase markings. These cannot be recovered.
Impact on practice: None. Reference your original score for interpretation.
How Staff Assignment Works
MIDI doesn't specify which hand plays which notes. Crescendo uses a multi-step algorithm to figure it out:
-
Track-based detection (primary method)
If the MIDI has two tracks with clear pitch separation, Crescendo assumes the higher-pitched track is the right hand (treble) and the lower-pitched track is the left hand (bass). This works well for MIDI exported from MuseScore. -
Pitch-based fallback
If tracks aren't clearly separated, notes are split at middle C (C4). Higher notes go to treble staff, lower notes to bass staff. -
Ledger line cleanup
Very high notes (C6 and above) are always placed on treble staff to avoid excessive ledger lines, even if the algorithm initially placed them on bass.
Accuracy: Staff assignment is correct about 95% of the time for MIDI files exported from MuseScore. Complex pieces with cross-hand passages may occasionally have notes on the wrong staff.
Setting Expectations
Works great for
- Standard piano pieces with clear left/right hand parts
- MIDI exported from notation software (MuseScore, Finale, Sibelius)
- Practice-focused learning where note accuracy is the priority
May need adjustment for
- Complex pieces with rapid cross-hand arpeggios
- MIDI from live recordings or DAWs (less predictable structure)
- Single-track MIDI files (no hand separation information)
For best results
- Use MusicXML when available—it preserves everything perfectly
- Export MIDI from notation software rather than DAWs
- If exporting from MuseScore, use separate tracks for each hand
What Happens When You Import
- Conversion notice—You'll see a dialog explaining that MIDI requires conversion
- Automatic conversion—Crescendo converts the MIDI to sheet music notation
- Quality check—The converted file is validated
- Added to library—The piece appears in your library, ready to practice
Note: The original MIDI file is not kept. Crescendo stores only the converted sheet music notation. If you need the MIDI file later, keep a copy elsewhere.
Troubleshooting
"MIDI conversion failed"
The MIDI file may be corrupted or use features the converter doesn't support.
Try:
- Open the file in another program (like MuseScore) to verify it works
- Export as MusicXML from MuseScore instead
- Find an alternative version of the piece
Notes appear on the wrong staff (wrong hand)
Staff assignment is a best guess based on pitch and track information. Complex passages may be assigned incorrectly.
Workarounds:
- Practice with the staff as-is (you'll still learn the notes)
- Export from MuseScore with separate tracks for each hand
- Use MusicXML instead of MIDI (preserves staff assignment)
The notation looks different from my original score
This is expected. MIDI doesn't preserve notation choices, so Crescendo makes reasonable guesses about note spelling, rest placement, and beaming.
The notes and timing are correct—only the visual presentation may differ. For practice purposes, this shouldn't affect your learning.
Missing dynamics, articulations, or slurs
This information doesn't exist in MIDI files and cannot be recovered. It's a fundamental limitation of the format, not a conversion error.
For interpretation details, reference your original score or a PDF alongside Crescendo's practice view.
Should I use MIDI or MusicXML?
MusicXML is always better when available. It preserves everything: exact notation, staff assignments, articulations, dynamics.
Use MIDI when:
- MusicXML isn't available for the piece
- You have a MIDI recording you want to practice with
- You don't need perfect notation fidelity
Still Need Help?
Having trouble with a specific MIDI file? Send it to us and we'll take a look.
Response time: 2-3 business days