Please note that we've been made aware of a scam involving someone impersonating Native Instruments.
Read our community note - here.

can measure the time it takes to send a midi message from the midi controller

Geky
Geky Member Posts: 8 Newcomer
Hello everyone! It may seem like a crazy question. Does anyone have any idea how I can measure the time it takes to send a midi message from the midi controller to the native Kontakt instrument? I know that cc messages can be monitored in Kontakt but not the time it takes. Is there any software that can measure the transfer time of midi messages? Theoretically I know, I read that a note lasts around 0.90 ms but in practice it seems to take longer.

Answers

  • JesterMgee
    JesterMgee Member Posts: 3,151 Expert

    Usually the MIDI signal is as instant as the press of a letter on your computer keyboard. USB operates fast enough that small signals like that are pretty much instant so less than any noticeable period of time would be the answer.

    Usually if there is a delay between pressing the key on your controller and hearing a sound, the issue is almost always due to your audio settings.

    Would help (as it always does when asking for assistance) to know your OS (Will assume Windows because usually macOS doesn't have this issue) and also what DAW/Software you are using and what your Audio Interface is?

    If you do not have a "proper" audio interface and are just using the on-board audio (in Windows) then you are likely just using the standard windows audio drivers which do not do a good job of what is called "low latency" audio processing. This is because Windows has to handle audio from many different sources in a "shared" way so your buffer (the amount of time the audio is processed) will likely be pretty high.

    Solution would be to first check in your audio settings for whatever software you use what driver you are using:

    See here I am using shared audio with a total overall delay of 30ms at 96000Hz.

    The higher your samplerate, the more delay you will also introduce so can be a good idea to lower that, 48000 is usually fine.

    Ideally tho, having a decent interface will allow you to use ASIO drivers which bypass the windows shared audio system and directly connect software to the audio output reducing latency a lot. You can also install ASIO4ALL which can offer the same function for on-board audio, tho Asio4All is not always reliable in all cases like a decent USB attached pro audio interface will do.

    Here is my same audio interface running with ASIO drivers and the overall latency is now half what it was:

    Worth doing some research into how audio is handled using the different driver options under Windows. macOS has "core audio" which is ultimately much better in this regard as it was more designed for the task.

  • Geky
    Geky Member Posts: 8 Newcomer
    thanks for the very detailed answer. I was referring strictly to the midi message time from the controller to the recipient, in my case it is kontakt. I use the rme ucx2 audio interface. in kontakt it does not show the input time only the processing and output time, in my case I have the processing time 1ms and the output 0.7 ms overall 1.7 ms. ucx2 set to 192 khz 192 buffer. As far as I know, the higher the sampling rate and the smaller the buffer, the lower the latency. Of course, these settings do not work with every audio interface and depend on the system configuration, processor, ram, OS. optimized. I did a test in cubase, I recorded with the microphone, on one track the controller keystroke and on another midi track I recorded the midi notes, I used the controller both via midi cable and with a usb cable. The difference between the recorded audio signal and the midi note is around 3-4 ms. It is not fixed. This makes me think and have difficulty. Now I do not know how relevant my test is, because there are many factors that influence the message processing time.
    
  • JesterMgee
    JesterMgee Member Posts: 3,151 Expert

    drop the sample rate, no need at all to run at 192khz, try 96khz and see if it helps.

Back To Top