Midi/XMl export differences

I am exporting from Dorico to make a theme in Cubase and I find big differences in duration and placement of the notes when exporting in midi, however I see that in xml it places them correctly. Attached screenshot Red is midi, the color green belongs to xml Does anyone know what the cause is and what the solution would be?

I’m afraid your screenshots didn’t make it into the post. Please try again.

captura piccolo.pdf (92.6 KB)

Is it possible the corresponding instrument in your Dorico project has an expression map assigned that specifies note durations (e.g. natural = 95%, etc), and that you’re indicating some articulations in your score?

1 Like

I think Ebrooks nailed it. As far as a resolution, there are a number of settings in playback options for humanization, playback versus notated length that you might want to turn off or adjust. Think of the midi as having playback or driving an instrument being one of its primary usages.

Thanks, I’m going to try to see if it works, it’s true that I have joints

After doing multiple tests removing articulations, ligatures, tempo changes, calderon, etc., etc. I don’t have a solution to my problem because the solution that I have found, at least for me, doesn’t have any logic. I think that having to export the Dorico track to Finale and then opening the midi with Cubase does not say the best about this problem, I think I should be able to do this without going through Finale.

@ximofa Sorry for being so dense, but could you clarify what you are trying to achieve? To my mind, XML and MIDI serve different purposes (or at least that’s how I use them) so I’m a little confused why you won’t use XML if you need generic note durations.

You see, the problem is that xml does not export CC1, CC11 and the speed is totally flat, so I have to redo all the expression work that I have already done in Dorico, that means a big waste of time and a big difference in sound, so I suppose I have to modify many things in Cubase but when exporting in MIDI I already have a guide from which to start and I advance the work, I don’t know if you understand my position regarding MIDI?

Yes I get it now. My suggestion would be to work on your default/generic expression maps in Dorico to get the note durations you need. Even better - getting the Cubase and Dorico versions of the expression maps to match as close as possible so that the translation between them is as seamless as you need. I believe @mducharme mentioned his system has been set up to match the two programs and templates, perhaps he might a tip to share.

I would ask what expression map you are using in Dorico that is being applied to this track.

I do believe that all playback humanization will be exported as well when exporting as MIDI, just so you are aware, this will shift the note start positions backward or forward to “humanize” them. Negative delays set in expression maps will also shift the notes earlier in time.

If you played the notes in on a MIDI keyboard in real-time with record enabled, it likely would have stored offsets in the note to indicate how the playback representation differs from the notated representation, as Dorico allows you to manually tweak notes backward and forward and this gets recorded too when playing in live on a MIDI keyboard. You can check this playback offset in the Dorico piano roll by choosing the option to show the played note durations rather than the written durations. The played durations are always exported instead of the written durations, so that any MIDI loaded into a DAW will sound 100% identical to how it sounds when hitting play in Dorico with the same virtual instruments loaded with the same settings on those tracks.

The default MIDI export should be exactly the way it plays back in Dorico, and any offsets/humanization in the MIDI should be absolutely identical to the offsets/humanization in the playback when hitting play in Dorico itself. If you don’t like the way it plays back in Dorico due to the humanization (randomization) that Dorico has added to the note starts, then you should adjust that before exporting the MIDI. I suppose that’s the part I’m not understanding - if you noticed the MIDI export is off in terms of timing, then you should have also noticed that the Dorico playback is off by exactly the same amount in all the same places. It seems peculiar / not logical that you might play things back, notice that the note start times were off in the Dorico playback but ignore it, export it to MIDI, and then get upset when the MIDI export played back identical to the way it did in Dorico with the same note start times off by the same amounts. So, something isn’t quite adding up here.

Also, be sure to check your piano roll in Dorico with Played Durations selected:

See if that looks the same as your MIDI export.

Hello, first of all, who told you that I am angry? I am simply looking for an explanation for something that I do not understand well and I have politely tried to find a solution because it has been many years since the days of the Atari with the Pro 24 and this does not I had seen it until now! Maybe it could be that sometimes we mere humans need a little more information about the things we use for our work or hobby! Anyway, thank you very much for your clarification and I will try to understand how exports work and etc, etc,
Thank you

I said “upset” which doesn’t mean the same thing as angry. It often means the same thing as annoyed or displeased. “Angry” is a much stronger term, and I could tell that you were slightly displeased from your posts.

The difference between Dorico and these other programs you mention is that Dorico really stores two different representations of the music - a representation as notated, and a representation of the performance which is used for playback. The notated representation is very precise and literal to how it is notated, with everything being dead on the beat with all notes held to full length with robotic precision, and the playback representation includes all minor “errors” (humanization) that a real performer would introduce in their playing to create a musical result, and shortening of notes in various musical contexts where it thinks they should be shortened. When you export MusicXML, you are exporting the notated representation, but when you export MIDI, you are exporting the playback representation, including all humanization etc. that the software is introducing to the playback that is not written in the score.

You have a similar idea in the field of musicology or ethnomusicology when a recorded performance of music that is not notated is being transcribed, like that of a folk singer - if the performer attacks a note a hair early, say a 32nd note ahead of the beat, do you represent that in the notation, or do you “correct” it to what it was obviously supposed to be? There is an argument to be made for both. In some ways, to capture this, you almost need two notated versions - one that shows the notation that was obviously intended, and one that shows how the performer actually performed it, taking certain notes a hair early or late to make it more musical. This is what Dorico accomplishes by having these two representations of the score. They make the assumption of course that if you are exporting MIDI that you want the version with all the performance imprecision and not the more robotic and literal translation of the written notes.

Having these two different representations is a major strength in Dorico. Usually you would need to work with two copies of the piece in two different programs (a notation program and a DAW) to accommodate both the notated score and the “performed version” with all of the timing inaccuracies that human performers will have, and deal with any edits to the piece by having to edit it in two programs.

hank you very much for your clarification. What you just explained to me is what my square musician head didn’t quite understand.
I thank you again and now I understand.