Experimenting with the optimizer script I learned that mainly two things make artefacts which detract from the enjoyment to play piano with MG2, especially when not playing very clean/accurate:
-
Still remaining noise after use of the noise gate in MG2. Even when not playing the guitar some notes will be triggered. This can be deleted with the Gate_Threshold knob very efficiently. This value has to be adjusted according to guitar setting and playing style.
-
Ghost notes produced when pushing the string(s) on the fret (or fingers on the string, I am not sure) or even worse when lifting off the finger(s). The latter can produce one or two undesired notes, typically with a short duration < 50 ms, but well to hear. Thats why I have tested a filter, which deletes all notes below an adjusteable time length. To do so the filter has to wait for this time before it can detect such notes and there will be additional latency as an adverse side effect (for about the set min. time). The filter works well (see picture,where the min. time was set to 30 ms), one have to check if the additional latency is acceptable. Beside the set (standard) midi channel where the filtered notes will be output, there is an unfiltered output with no additional latency on midi channel 16. If the latency is uncomfortable this channel can be used for monitoring and the other for recording a cleaned version.
To get an idea of the different latencies I have done some measurements:
My audio interface has a latency of approx. 9 ms (@48 kHz and 256 samples)
The detection latency of MB and MG2 depends on the frequency (f) of the played notes: Low frequencies needs more time to be detected because the periodic time (T) is longer (T = 1/f), for monophonic playing I measured approx. 60 ms for the low E on a 4-string bass (see pic), 25 ms for the low E on a 6-string guitar and approx. 10 ms for an high e on the 12 fret of the high e string. As a raw estimation you can use the formula for the detection latency in s: 0.0085 + 2 / frequency [Hz]. So it is approx. 8.5 ms + 2 times the periodoc time (wave length), which is quite fast in my oppinion.
I will integrate this filter in a new version of the “Optimizer” midi machine.
Cut short notes.lua (1.4 KB)

