Kronos Latency
Posted: Sun Oct 21, 2018 10:49 am
I did some tests which you might find interesting. I've been considering the Kronos as a no-latency unit because I didn't notice any. I even ran my guitar and bass through it and still didn't didn't find anything worth complaining about and thus concluded it had very little. But it arose in a discussion I partook in that due to its digital nature, there is inherently some latency in there. How much?
TL;DR: I'm not nearly as sensitive to latency as I thought I was..
My assumption going into this was that I've used interfaces with 25ms worth of roundtrip and have been completely unable to play sounds with percussive attack on them, and I boldly extrapolated from that if 25ms was unusable, I would need latency to be less than 5ms or so, otherwise everything be damned. Oh my.. the folly of uneducated guesses. :p
There is this thread 2012 which talks about the subject and which landed on about 7ms (http://www.korgforums.com/forum/phpBB2/ ... a58afffcc1), but I wanted to do a few of my own tests on my K2, plus I wanted to test a few more things.
For the tests I used:
- MacBook Pro, 13-inch, Mid 2014
- FocusRite Clarett 8Pre, Analog in and Midi In
- Arturia MiniBrute 2, analog out and midi out
- Moog Mother-32, analog out, analog in
- Korg Kronos, USB Midi, Analog Out, Midi In/out
- Results sampled in Reaper by recording, 96Khz sample rate and buffer size 64 which gives me a latency of 1.5 / 1.5.
All synths were set to play a plain saw, no envelope, no filter, just a plain saw. Kronos did this using AL-1.
I'm assuming that MIDI is low-latency, but we'll see results on that in the tests. I also assume that the analog synths are very low latency. I also know that Reaper will do latency compensation for both MIDI and audio alike, so the fact that there is latency should not have any impact on the recorded results (I mean, they will be compensated, but audio and midi are compensated by an equal amount, so the deltas are preserved, and the deltas is what I'm looking for).
Test 1:
- MiniBrute -> FocusRite Audio In
- MiniBrute MIDI Out -> Kronos MIDI In -> Audio In
I play a note on the MiniBrute and it triggers both the MiniBrute audio and the Kronos via MIDI. Purpose of this test is to measure the difference between an audio signal coming directly from an analog synth, which also sends out midi, and compare the Kronos' response to that midi signal.
Result: The Kronos audio is recorded 7ms after the MiniBrute.
Test 2:
- Kronos USB MIDI OUT -> MacBook
- Kronos Audio Out -> FocusRite
I play a note on the Kronos and record both the MIDI "note on" and the resulting audio signal. I'm interested in the delta between the two:
Results: Kronos audio comes on 5ms after the MIDI message.
Test 3:
- MiniBrute Audio Out -> Focusrite
- MiniBrute patched with analog cables to trigger Moog Mother 32 -> FocusRite
- MiniBrute MIDI OUT -> FocusRite MIDI IN
I play a note on the MicroBrute and record MIDI message, analog signal and another analog synth (Mother-32) triggered from the MiniBrute. Though unrelated to the Kronos, I wanted to run this test to get a handle on latency of MIDI vs the analog signal path. And I threw in the M32 because I was curious about that too..
Results:
- MiniBrute audio triggers first
- Moog Mother-32 triggers some 2-300 microseconds later
- MIDI "Note on" was registered at about 1ms after the MiniBrute Audio.
Test 4:
- Kronos Audio Out -> Focusrite
- Kronos MIDI OUT -> Focusrite MIDI IN
I realized that the USB Midi Out might fare differently from the FocusRite MIDI, so I decided doing another test using Kronos MIDI OUt into the FocusRite, same place I plugged the MiniBrute. I play a note on the Kronos and look at the delta between recorded midi and audio.
Resultat: Identical to test 2. Kronos Audio comes 5ms after Midi event.
Test 5:
- Moog Mother 32 -> Focusrite Audio IN
- Moog Mother 32 -> Kronos Audio In -> IFX / TFX / MFX -> Kronos Audio Out -> Focusrite Audio IN
So the purpose of this test was to figure out the roundtrip time for the audio in, internal effects processing, and then back out. I play a sound on the Mother 32, and patch the VCA out into Krono's analog input. Then run delay, chorus, O-Verb, and send it out to the FocusRite. I also tried to run the signal DRY through the Kronos, and there was no change.
Result: The audio passing through the Kronos is 10ms late.
If we take tests 2, 4 and 5, it appears to me that the Kronos 2 has about 5ms worth of latency in/out. For the throughput test, 5, there is no time "wasted" in triggering, so that is perhaps the most honest test in terms of raw latency. When the Kronos is externally triggered, a higher number is measured, 7ms. It is not possible based on my tests to decide whether the extra latency originates in the MiniBrute going out or in the processing on the Kronos on the receiving end, but somewhere along the way some time is lost. The Kronos might also spend a bit of time "waking up" in response to the midi message.
Test 3 indicates I have a latency of 1ms for midi events, at least going into the computer. At any rate, Midi latency is "low", which matches the general saying that midi latency is not an issue until you start chaining a lot of gear.
If we speculate a bit then.. The Kronos is running at 48Khz, so if we search for a buffer size which is "power of two" which lands us in the 5ms ballpark, we get 256, (256 / 48000 = 5.3ms). So perhaps the Kronos has a buffer size of for I/O of 256.
So is this a problem in practice? The speed of sound is 343 m/s, so in 5-6ms sound will have travelled about 2 meters (6 feet, I guess). So we can compare it to playing the guitar with the amp 2 meters away from you. I frequently do this and it never crossed my mind that this would be a problem, so I can safely say it doesn't bother me. And did I mention that I didn't consider any latency when I used the effects processor on the Kronos for my guitar. That is 10ms roundtrip of latency, equal to having a guitar amp at about 4 meters away or using some long sticks to play the piano 4 meters away.. I would argue again that it makes sense that I didn't notice this difference because a sound source at 4 meters away is still very close.
Though of course, there is the whole psychology aspect as well, where if we expect to hear a sound, our brains might facilitate to compensate for latency.. And there is the question of how long it takes to depress a key and how much variance there is in that how that will relate to the latency..
Anyway.. I thought was interesting and wanted to share it
TL;DR: I'm not nearly as sensitive to latency as I thought I was..
My assumption going into this was that I've used interfaces with 25ms worth of roundtrip and have been completely unable to play sounds with percussive attack on them, and I boldly extrapolated from that if 25ms was unusable, I would need latency to be less than 5ms or so, otherwise everything be damned. Oh my.. the folly of uneducated guesses. :p
There is this thread 2012 which talks about the subject and which landed on about 7ms (http://www.korgforums.com/forum/phpBB2/ ... a58afffcc1), but I wanted to do a few of my own tests on my K2, plus I wanted to test a few more things.
For the tests I used:
- MacBook Pro, 13-inch, Mid 2014
- FocusRite Clarett 8Pre, Analog in and Midi In
- Arturia MiniBrute 2, analog out and midi out
- Moog Mother-32, analog out, analog in
- Korg Kronos, USB Midi, Analog Out, Midi In/out
- Results sampled in Reaper by recording, 96Khz sample rate and buffer size 64 which gives me a latency of 1.5 / 1.5.
All synths were set to play a plain saw, no envelope, no filter, just a plain saw. Kronos did this using AL-1.
I'm assuming that MIDI is low-latency, but we'll see results on that in the tests. I also assume that the analog synths are very low latency. I also know that Reaper will do latency compensation for both MIDI and audio alike, so the fact that there is latency should not have any impact on the recorded results (I mean, they will be compensated, but audio and midi are compensated by an equal amount, so the deltas are preserved, and the deltas is what I'm looking for).
Test 1:
- MiniBrute -> FocusRite Audio In
- MiniBrute MIDI Out -> Kronos MIDI In -> Audio In
I play a note on the MiniBrute and it triggers both the MiniBrute audio and the Kronos via MIDI. Purpose of this test is to measure the difference between an audio signal coming directly from an analog synth, which also sends out midi, and compare the Kronos' response to that midi signal.
Result: The Kronos audio is recorded 7ms after the MiniBrute.
Test 2:
- Kronos USB MIDI OUT -> MacBook
- Kronos Audio Out -> FocusRite
I play a note on the Kronos and record both the MIDI "note on" and the resulting audio signal. I'm interested in the delta between the two:
Results: Kronos audio comes on 5ms after the MIDI message.
Test 3:
- MiniBrute Audio Out -> Focusrite
- MiniBrute patched with analog cables to trigger Moog Mother 32 -> FocusRite
- MiniBrute MIDI OUT -> FocusRite MIDI IN
I play a note on the MicroBrute and record MIDI message, analog signal and another analog synth (Mother-32) triggered from the MiniBrute. Though unrelated to the Kronos, I wanted to run this test to get a handle on latency of MIDI vs the analog signal path. And I threw in the M32 because I was curious about that too..
Results:
- MiniBrute audio triggers first
- Moog Mother-32 triggers some 2-300 microseconds later
- MIDI "Note on" was registered at about 1ms after the MiniBrute Audio.
Test 4:
- Kronos Audio Out -> Focusrite
- Kronos MIDI OUT -> Focusrite MIDI IN
I realized that the USB Midi Out might fare differently from the FocusRite MIDI, so I decided doing another test using Kronos MIDI OUt into the FocusRite, same place I plugged the MiniBrute. I play a note on the Kronos and look at the delta between recorded midi and audio.
Resultat: Identical to test 2. Kronos Audio comes 5ms after Midi event.
Test 5:
- Moog Mother 32 -> Focusrite Audio IN
- Moog Mother 32 -> Kronos Audio In -> IFX / TFX / MFX -> Kronos Audio Out -> Focusrite Audio IN
So the purpose of this test was to figure out the roundtrip time for the audio in, internal effects processing, and then back out. I play a sound on the Mother 32, and patch the VCA out into Krono's analog input. Then run delay, chorus, O-Verb, and send it out to the FocusRite. I also tried to run the signal DRY through the Kronos, and there was no change.
Result: The audio passing through the Kronos is 10ms late.
If we take tests 2, 4 and 5, it appears to me that the Kronos 2 has about 5ms worth of latency in/out. For the throughput test, 5, there is no time "wasted" in triggering, so that is perhaps the most honest test in terms of raw latency. When the Kronos is externally triggered, a higher number is measured, 7ms. It is not possible based on my tests to decide whether the extra latency originates in the MiniBrute going out or in the processing on the Kronos on the receiving end, but somewhere along the way some time is lost. The Kronos might also spend a bit of time "waking up" in response to the midi message.
Test 3 indicates I have a latency of 1ms for midi events, at least going into the computer. At any rate, Midi latency is "low", which matches the general saying that midi latency is not an issue until you start chaining a lot of gear.
If we speculate a bit then.. The Kronos is running at 48Khz, so if we search for a buffer size which is "power of two" which lands us in the 5ms ballpark, we get 256, (256 / 48000 = 5.3ms). So perhaps the Kronos has a buffer size of for I/O of 256.
So is this a problem in practice? The speed of sound is 343 m/s, so in 5-6ms sound will have travelled about 2 meters (6 feet, I guess). So we can compare it to playing the guitar with the amp 2 meters away from you. I frequently do this and it never crossed my mind that this would be a problem, so I can safely say it doesn't bother me. And did I mention that I didn't consider any latency when I used the effects processor on the Kronos for my guitar. That is 10ms roundtrip of latency, equal to having a guitar amp at about 4 meters away or using some long sticks to play the piano 4 meters away.. I would argue again that it makes sense that I didn't notice this difference because a sound source at 4 meters away is still very close.
Though of course, there is the whole psychology aspect as well, where if we expect to hear a sound, our brains might facilitate to compensate for latency.. And there is the question of how long it takes to depress a key and how much variance there is in that how that will relate to the latency..
Anyway.. I thought was interesting and wanted to share it
