Skip to main content

File Import & Library

Supported File Formats

Crescendo supports MusicXML, MIDI, LilyPond, and PDF files. Here's what each format offers and which one to use.

Quick Recommendation

Use MusicXML when possible. It's the industry standard for sheet music and preserves the most information. Most notation software (MuseScore, Finale, Sibelius) can export MusicXML.

Have a MIDI file? It will work, but expect some differences in how the notation looks compared to the original score.

Format Comparison

Format Extensions Practice Mode Quality
MusicXML .musicxml .xml .mxl Full support Best
MIDI .mid .midi Converted Good
LilyPond .ly Converted Excellent
PDF .pdf View only N/A

Maximum file size: 100MB for all formats.

MusicXML

Recommended

MusicXML is the universal format for sheet music. It preserves everything: notes, rests, dynamics, articulations, tempo markings, and more. This is what Crescendo is built for.

File extensions

  • .musicxml - Standard MusicXML
  • .xml - Plain XML (older convention)
  • .mxl - Compressed MusicXML (smaller file size)

What's preserved

  • All notes, rests, and ties
  • Key and time signatures
  • Tempo markings
  • Dynamics (p, f, crescendo, etc.)
  • Articulations (staccato, accents)
  • Grace notes and ornaments
  • Title, composer, and other metadata

Where to get MusicXML files

  • MuseScore.com - Millions of user-uploaded scores
  • IMSLP.org - Public domain classical music
  • Export from notation software (MuseScore, Finale, Sibelius, Dorico)

MIDI

Converted automatically

MIDI files are converted to MusicXML when you import them. The conversion captures the notes accurately, but some visual details may differ from the original score.

File extensions

  • .mid - Standard MIDI
  • .midi - Alternative extension

What's preserved

  • All note pitches (which keys to press)
  • Note timing and durations
  • Tempo and time signature
  • Key signature
  • Basic staff assignment (treble/bass)

What may differ or be lost

  • Enharmonic spelling - C# might show as Db (same key, different name)
  • Articulations - Staccato, accents not preserved
  • Dynamics - Volume markings (p, f) not preserved
  • Slurs and phrasing - Visual groupings lost
  • Beaming - Note groupings may look different

Note: When you import a MIDI file, you'll see a notice that conversion may not be 100% accurate. For the best experience, use MusicXML when available.

LilyPond

Converted automatically

LilyPond is a text-based music notation system popular with classical musicians and open-source enthusiasts. Files are converted to MusicXML with excellent accuracy for notes.

File extension

  • .ly - LilyPond source file

What's preserved

  • All notes, rests, and ties
  • Key and time signatures
  • Chords and grace notes
  • Tuplets and complex rhythms
  • Repeats (unfolded for practice)

What's not converted

  • Dynamics, articulations, and slurs (parsed but not emitted)
  • Custom LilyPond functions or Scheme code
  • \include statements (external files)

LilyPond support is designed for musicians who already work with the format. If you're new to sheet music files, start with MusicXML.

PDF

View only

PDFs can be imported and viewed, but practice mode is not available. This is because PDFs are images of music, not structured music data.

What you can do with PDFs

  • View the sheet music
  • Use the metronome while viewing
  • Adjust tempo for your practice
  • Navigate pages (swipe or buttons)
  • Zoom and pan

What you cannot do

  • Get note-by-note feedback (no note checking)
  • Use practice mode with auto-advance
  • Set loop points
  • Practice hands separately

Why can't PDFs be practiced? A PDF is like a photograph of sheet music. The app can display it, but it can't identify individual notes. To practice with feedback, the music needs to be in a structured format like MusicXML.

What Actually Matters for Practice

When learning piano, Crescendo focuses on note reading. Here's what the app uses from your files:

Element Used for Practice Displayed
Notes (pitches) Yes - checked Yes
Rests Yes - auto-advance Yes
Ties Yes - first note only Yes
Grace notes Yes - checked Yes
Tempo Yes - metronome Yes
Key/time signatures No Yes
Dynamics (p, f) No Yes
Articulations No Yes
Slurs, ornaments No Yes

Dynamics, articulations, and other markings are displayed so you can see them while practicing, but the app doesn't check whether you played staccato or forte.


Common Questions

Which format should I choose?

MusicXML whenever possible. It gives you the most accurate representation of the original score.

If you only have a MIDI file, that works too. The notes will be correct; some visual details may just look different.

Why does my MIDI file look different from the original?

MIDI is a performance format, not a notation format. It records what keys are pressed and when, but not how the music should look on paper.

When converting MIDI to notation, some decisions have to be made: Should this note be C# or Db? Should these notes be grouped together? The converter makes reasonable guesses, but they may differ from the original engraving.

Can I convert my PDF to MusicXML?

Not within Crescendo currently. However, you can use external tools:

Results vary depending on the PDF quality. Scanned handwritten music rarely converts well.

What's the maximum file size?

100MB for all file types.

Most sheet music files are well under 5MB. If your file is larger than 100MB, it may be corrupted or contain embedded media that isn't needed for notation.

How do I export MusicXML from MuseScore?
  1. Open your score in MuseScore
  2. Go to File > Export
  3. Choose MusicXML or Compressed MusicXML (.mxl)
  4. Click Export

The .mxl format is recommended as it creates smaller files.

Still Need Help?

Having trouble with a specific file? We're here to help.

support@crescendopiano.app

Response time: 2-3 business days

Related Articles