improvements in midifile imports

• May 4, 2019 - 10:39
Reported version
S5 - Suggestion

Hi Musescore team
Sorry to bother you on the bugs report but I had no answer at all on the forum. First thanks for such a wonderful software and frequent updates. Its a real pleasure to design music sheet with a friendly, efficient and free tool.

My topic here is mainly around midifile import workflow.
I have intensively tested for all events all MUSESCORE import options : MID / MXML / BIAB
-all tests perfromed with v 2,3,2, but confirmed with v3.1

1 some META events seem not to be imported or wrongly whereas they belong to the midifile specifications:
-midi markers META FF06 could be imported and driven to "rehearsal mark" MUSESCORE objects
-key signature META FF59 could be imported and driven to MUSESCORE clefs objects
-some text events (META FF01) are imported but driven to MUSESCORE lyrics objects, like genuine lyrics meta events (FF05).
Midifiles made with PGMUSIC software (BIAB/REALBAND/Power tracks) store specific information in text META events (FF01) that should not be mixed with lyrics. They should better be driven to simple MUSESCORE text objects.
-Midifiles made with PGMUSIC software also store chords (either computed or manually entered) in SEQUENCER SPECIFIC META events (FF7F var.len data)
As the BIAB import facility already knows how to handle these events, I guess it could be implemented also for midi files, as soon as the .mid contains PGMUSIC SEQ SPEC META events
My main workflow, either when recording from scratch or when extracting specific parts from a midifile, consists in preparing data (selecting phrases, quantize starts and durations) in PGMUSIC TOOLS, and I use musscore for the real notation and embellishment process.
While doing this, I massively use midi markers, text events and chords, and I have them saved in the midifile for later use if needed. Importing these events with the midifile would save me a lot of time as I have toi re-enter them manually in musescore.
I would propose in fact flags in preferences screen to chose to :
-import markers and keysig
-chose to drive text events to lyrics objects or text objects
-interpret PGMUSIC SEQSPEC for chords
2 When importing a single channel / single track midifile with a piano tune (no 8/9 channel or track splitting), it can be very tedious to finish with a proper 2 staves system:
split staff only knows a fixed note split, whereas many piano pieces have left / right hands going up and down. I didn't find any better way to manually correct the split than to cut / paste from one staff to another.
I have two suggestions, to definitely move some notes from one staff to another (with all bar completeness impacts naturly)
-a dedicated function (a bit like ctrl Maj up/dwn does) that would allow to cut from one staff and copy to the adjacent one in the system : that would be the easyest way.
-extend cut and paste to non adjacent notes : it would allow for example in right hand staff to select all notes that should be in left hand staff and to one single cut + 1 single paste on the first note in left hand staff it should be moved to.
Ill be pleased to get your feedbacks about these ideas. Thanks by advance and best regards from France.