How will Dorico handle midi file import? What settings–import options-- if any, will be user supplied to affect the resulting notation? For example what tuplets will be allowed? Minimum note values, adjust rhythm, etc?
Will Dorico have a function as in Sibelius, with Live Playback, to A/B the notation and the original midi file?
Will you be recommending midi files be quantized before import? (Finale recommends NOT to quantize–Sibelius recommends to quantize but with an awful lot of testing in this area I found Sib did MUCH better with very complex midi files if imported unquantized.)
And with midi export will tick resolution-PPQN-be able to be user specified?
Will there be any Performance settings as In Sib–eg Espressivo,Rubato? What internal rules will be used for this–eg the KTH Music Performance Rules?
And will these also affect the resulting midi file export?
Thanks so much Daniel and team–really looking forward to using Dorico!
At the moment, Dorico doesn’t show any MIDI import settings. It’s using an adaptive, probabilistic quantisation algorithm that has been developed by Paul. I’m sure he will eventually pop along and provide a bit more information about it.
I know that your particular interest is in music that is similar in nature to the New Complexity works by composers like Ferneyhough and Finnissy, among others, and that kind of music is pretty much a torture test for any quantisation approach you might try. For your kind of music, at the moment I have no idea whether or not you will be better off quantizing the MIDI before you import it.
We likewise don’t have any MIDI export options at the moment. I suspect that things like tick resolution will end up being determined by the requirements of the audio engine and how our playback model maps onto the data that needs to be streamed to the engine for playback.
Dorico won’t initially have much in the way of playback humanisation features. It will try to perform switches of playing technique automatically according to the available endpoints (as determined by expression maps, one way or another), and it will also handle playback of dynamics and tempo changes, but things like changing the dynamics or timings of notes on a micro level to simulate subtleties of phrasing etc. will not be included initially.
Just to add to Daniel’s response, the quantisation algorithm I’ve implemented (which isn’t yet fully wired into the application) should do a reasonable job in most cases (hopefully better than Sibelius’s, which I also had a hand in
However, if you do have very complex MIDI files with nested tuplets or uncommon ratios, or complex rhythms within the tuplets, then it’s unlikely that a quantisation algorithm will do a decent job. Part of the problem is the limited resolution of a MIDI file which means the tuplet positions can’t be specified exactly, and the other part is the Combinatorial Explosion™ of possible tuplet combinations that a quantiser would have to search through in order to identify the best one.
In general I would recommend that if you have files with complex tuplet requirements that you should try to import via MusicXML instead if possible.
We intend that we’ll preserve the actual note onset time, duration and velocity and preserve this within the notated note. This should also be user-editable in Play Mode.
GREAT job with that, Paul I used to work in Digital Performer and then bring it over to Sib (and I also tried Fin, which had real midi import problems at that time–so much so that MM saw them and offered me my money back!), but about 5 years ago I knew I had to bite the bullet and do it all in Sib, and cut out doing it in the sequencer and then facing the translation of a midi file.
However, if you do have very complex MIDI files with nested tuplets or uncommon ratios, or complex rhythms within the tuplets, then it’s unlikely that a quantisation algorithm will do a decent job. Part of the problem is the limited resolution of a MIDI file which means the tuplet positions can’t be specified exactly, and the other part is the Combinatorial Explosion™ of possible tuplet combinations that a quantiser would have to search through in order to identify the best one.
In Sib I use the same settings all the time on even the most complex midi files and I was satisfied with how it sounded, but the notation always caused me problems for the exact reason as you stated above–as for example from a midi file, the desired notation of quintuplets 16ths @480 ppqn=96 ticks each , and even with any setting of rules for that tuplet it would more often than not be notated closer to dotted 32nds (32nd tied to 64th)=90 each (or either of them could be tied to a 256 note= 97.5…ok im getting carried away here…LOL And at a moderate to faster tempo the dotted 32nds would sound ok, but theh whole flavor and simplicity of the notated tuplet would be lost, which again is why I switched over to doing it all in SIb, but I have a whole bunch of midi files from years ago, that Id like to notate.
(MIDI geek spoken here, though its been awhile and I hope I spoke it correctly…LOL
In general I would recommend that if you have files with complex tuplet requirements that you should try to import via MusicXML instead if possible.
Thanks–and agreed
We intend that we’ll preserve the actual note onset time, duration and velocity and preserve this within the notated note. This should also be user-editable in Play Mode.
Sounds really good Paul–you guys are doing a helluva job and cant wait to use Dorico!
I’m also interested in how MIDI files will translate. I have a very slick way of quantising both notes and lengths in Nuendo, but Sibelius quite often used to disregard these, particularly with reference to note lengths. Actually used to disregard identical tuplets as well. I do hope that Dorico is a step forward in this regard.
If you have scores that show this then please do send them to me and I can tweak my algorithm when I’m next in that area. The ideal would be to send me a short, indicative section of a MIDI file, along with a score (Sibelius/MusicXML) that shows how you would expect it to be notated.
Thanks, Paul. I came across this only the other day on two different files, so I’ll send you a MIDI file and a Sibelius score. If you want to see what the MIDI file actually looks like, then just load it into a sequencer.
In addition to Bobs question, will this future-feature “humanizing-microshifting-do-everything-in-a-freaky-way” be fully deactivatable?
IMO both should be there…
Playback preferences such like those mentioned above are always good for a quick impression but are pretty much hindering when it comes to detailed adjustments.
PaulWalmsley wrote:
If you have scores that show this then please do send them to me and I can tweak my algorithm when I’m next in that area. The ideal would be to send me a short, indicative section of a MIDI file, along with a score (Sibelius/MusicXML) that shows how you would expect it to be notated.
Hi Paul,
I just read your invitation and I was wondering how Dorico handles rhythmical voice-differentiations in midi files. We know Midi is not very suitable when polyphony is used. When voices are split over several tracks, the translation to a score might work. In piano music however, it often happens that polyphonic writing is needed for a shorter period of time: a part of a measure / a beat. In most notation programms you have to fill complete measures with notes/rests. As a consequence you have to hide these rests when a voice is finished. Altogether it can be quite elaborate.
In the attachemt I sent a small midi file with a kind of piano-solo + a pdf that shows how I would like to see this on paper.
Two questions:
What is the best way to get midi-information like this into Dorico?
How “automatic” will Dorico produce a page like this?
Many thanks.
Cees
cc It seems that the files won’t upload. I will send the attachment
As I read this thread, I see what the issues are. Importing Ferneyhough via MIDI files sounds like a nightmare problem to solve. However, I’m importing much simpler files, for example, the Minuet and Trio from Mozart’s 1st Quartet. The results are unfortunately much too accurate. Detaché quarter notes notated as 8ths tied and beamed to 16th and 64th notes followed by 32nd and 64th rests. I hope there will be some way to indicate a need for reduced complexity. Playback is very nice though.
Or another example of simplicity: I tried to import a piece that only uses quintuplets (and multiple values of it). The midifile was quantized according to this. Till now not a single bar was notated correctly. Any suggestion to get this job done?
If Midi files are your only source, then I suggest you make them into MusicXML files in another program (Which I think I’ve already mentioned twice on this forum ) and then import the results into Dorico. As things stand Dorico’s MusicXML import is much more advanced than it’s midi file import.