GK3/ GI20 combo vs. Jam Origin MIDI Guitar (trial version)
I made this for the pourpose of discussion on another forum, but maybe someone can find it useful ...
Before you read this long borring and unnecessarry post ...
1. Get informed on what latency is and how it adds up.
2. Make distinction btw quality of tracking vs. speed of pitch recognition & triggering.
3. Note that we do not know inner "mechanics" of MIDI Guitar software, how it deals with various inputs and how it addresses VST synths
4. Note that his was not to measure how fast either "participant" is, but to observe general tendency of difference in pitch recognition engine speed, given all other conditions are as similar as possible.
Signal paths:
1. GK3:Guitar-GK3-Gi20 (Pitch Rec)-USB-"MIDI Guitar" MIDI in (virtual)-VST synth in "MIDI Guitar"-Audio out-USB-Digital Mixer-USB -ASIO in-DAW (RCh)
2. M G:Guitar-Digital Mixer-USB-ASIO in-"MIDI Guitar" (Pitch Rec)-VST synth in "MIDI Guitar"-Audio out-USB-Digital Mixer-USB -ASIO in-DAW (R Ch)
3: Audio (Paralel to above): Guitar-Digital Mixer-USB-ASIO in-DAW (left channel)
This way I could recorded stereo files to compare L and R channel and measure difference in accumulated latency btw two channels. Since path for L channel is common to both paths, difference in latency of R channel btw files recorded via one path vs. another is the real life application difference of the 2 pitch recognition engines.
That differnce is equal to difference btw all the latences accumulated as per following:
1. For GK3 path: GK3-Gi20 (Pitch Recognition)-"MIDI Guitar" MIDI input (virtual)
2. For M G path: Digital Mixer-ASIO in-"MIDI Guitar" (Pitch Recognition)
It is obvious couple of elements apart from "pitch recognition engines" are adding to the total, namely:
1. ASIO in buffer makes for 2.9ms of latency.
2. Digital mixer AD conversion and whatever, add for some number of saamples, probably about 3ms.
3. MIDI ports have minimal jitter/ delay/ latency of about 3.5ms, which can go to more than 10.
Knowing this, we can see that in order to strictly compare only pitch recognition engines, measured differences we should compensate by:
1. For GK3 at least 3.5ms, ie deduct 3.5ms
2. For M G at least 5.9ms, ie deduct 5.9ms
And now, measured results. Obtained by playing Bb major scale in 5th position, 6th string 6th fret root ...
Scale..A..Bb.C..D..Eb.F..G..A..Bb.C..D..Eb.F..G..A.Bb
GK3....27.38.36.34.43.38.27.34.28.32.27.29.25.27.25.26 all arround latency in ms
M.G....46 56 58 44 42 43 47 48 41 43 42 44 42 40 38 44 all arround latency in ms
Diff: .19 18 22 10 -1. 5 20 14 13 11 15 15 17 13 13 18 difference btw paths in ms
Frankly, I thought this was way wrong, so I measured again, this time in C (VII/6/8) ...
Scale ...B C D E F G A B C D E F G A B C
GK3 .....35 43 34 38 38 35 35 26 28 32 26 27 24 25 24 28
M G .....53 50 49 43 52 46 50 45 45 48 41 43 49 40 48 41
After compensation, the difference would be about 3ms smaller and even if I was biased, I could not steal more than maybe 4ms MAX, but you can trust me I did my best to stay within 1ms error window, in total, GK3/GI20 combo would still score better.
Using better PC hardware, like graphic card, processor ..., maybe I could've got more uniform results, but the difference would likely ressemble above findings.
Also if we are comparing spped of triggering (as oposed to above "spped of recognition engine") The question would be: Is the difference in latency caused by ASIO input buffer vs. MIDI input buffer big enough, in favour of ASIO, to make "MG" trigger synth within DAW before Roland does? To answer that question, the compensation I proposed should be changed in a manner to only compensate "MG" results by some 3ms for digital mixer and not compensate Roland for MIDI input buffer. And the result is ... The difference is reduced, but still there, in Roland's favour.
So there it is.
It is fair to note that M G developper never claimed it was better, faster ... they modestly and precisely said "... comparable to hardware solutions ...", which it really is. With all the benefit of saving on unnecessarry hardware as well as, IMO, less false triggering, which may be more important than pure speed, you can conclude whatever you want.
P.S.
An observation: As long as it's all different notes, played on couple of different strings there is no problem at all. Roland HEX PU picks up some more garbage which result in false triggerings. I.e. time to work on technique.
Where both Roland and "MG" fall short, for me, is fast tremolo picking of only 1 note. It gets worse as you go down in pitch. In my case, both MG and Roland start to fall apart on A (110 Hz), while on low E (82.4 Hz) it's not even worth trying. Again, maybe it's more due my technique, but for sure both MG and Roland behave quite similarly.