MIDI Export Bug - MIDI File export is shorter than track length in MuseScore 1.428571%

• Oct 28, 2023 - 15:18

I am exporting a piano score from MuseScore in uncompressed musicxml and MIDI format. When playing the musescore file in musescore the track is 3:29.0' long. The exported MIDI file is only 3:26.14' long. Can't understand why this is a problem and why they wouldn't just match by defualt but here I am. How do I correct this to get the exported MIDI track length to exactly match the length in MuseScore. I can post the tracks but i want to be respecful of copyright. This is sheet music i bought and transcribed into MuseScore to help me learn to play the piece.

Attachment Size
‎chariots-MIDI bug.‎1.jpeg 377.37 KB

Comments

In reply to by Jojo-Schmitz

I'm sorry but I don't understand what i could do with that information to test out a solution. Is there somewhere i can change the output frequency? ...but 3.9/48 would be 8.125% so not sure if that would be the difference here?

In reply to by SortaNew

In general, the mscz file will be longer so that any applied effects or natural decay of the last note are finished. The midi file just cuts off after the last beat.

In reply to by bobjp

So in this case that makes it where the notes I play to match the musicxml file do not coincide with the midi track to an increasing degree as the track progresses to the file, making it impossible (for me) to accurate learn and play the piece. So how do I fix this?

In reply to by Marc Sabatella

I’d rather not have to download and learn a whole new program. I’d prefer to have muse score do what it should do. If it plays a song with decay it should export it with decay. If it doesn’t put decay in the musicxml, then there shouldn’t be decay in the midi. Ideally, they should match. At the very least there should be an option to turn off the decay. Bottom line: is there any way to simply have the midi out exactly match the file? Can I turn off delay or retardondo (sp?) or literally any other option to have MuseScore midi match the output midi with no decay?

In reply to by SortaNew

I'm confused - are you saying the program you are loading these files into is incapable of doing that simple edit? If you want to edit audio, you'll need an audio editor, that's just a simple fact.

Anyhow, it's not a bug - MuseScore is doing exactly what it should. Both the MIDI and the audio file have exactly the correct amount of data. MIDI is not audio, and it's perfectly normal that a MIDI file would have a duration shorter than the corresponding audio, due to the natural decay. Not "delay", not "retardando" - I' mean the natural decay of the last note and the natural reverb of the room it was recorded in. Chopping that off sound would be a bug.

In reply to by SortaNew

For me, it isn't clear what you are trying to do. How are you trying to learn this piece?
All three files will start at the same time. The last beat of the last note will end at the same in all three. The midi is shorter because it ends the last note where the notation dictates. The other two end after the last note.

In reply to by bobjp

Ok I see what I have failed to communicate. Because of the difference in the midi output and the music xml file the last notes in the MIDI file DO NOT start at the same time as the last notes in the music xml file. The visual off 3 seconds from the audio.

In reply to by SortaNew

How did MusicXML get invovled? What program are you using here? In any case, the extra time is at the end of the audio file. The start times should definitely line up, unless the program you are using to play these files is messing things up something. But in that case, it probably has nothing to do with the difference in lengths, just a difference in how this mystery program processes MIDI versus audio vs MusicXML files.

If you explain your workflow in more detail 0- and say what program you are using to process these MIDI and audio files, and how MusicXML got involved - we can understand and assist better.

Do you still have an unanswered question? Please log in first to post your question.