How do I stop my keyboard latency

Configure and optimize you computer for Audio.
RELATED
PRODUCTS

Post

I'm using the cpu to do all my audio, with an asio4all.

The latency is now getting unbearable.

Playing my S25 keyboard is like waiting for a signal from mars it's so slow.

I've done all the tweaks, buffers, etc

What do I need to buy to make it all quicker, low latency?

I don't know :cry:

All the vendors seem to be offering audio recording box solutions, but I never record audio, so I'm buying a pile of sockets & stuff I don't need, that just take up space.

Can anyone point me to the right thing I need to buy, so I can load more plugs, and have them play fast from my keyboard?

thanx = kev :)
Member 12, Studio One v6.5, VPS Avenger, Kontakt 7, Spitfire, Dune, Arturia, Sonible, Baby Audio, CableGuys, Nektar Panorama P1, Vaporizer 2 to test out

Post

Ditch ASIO4all, it's shit.

One function of a good audio interface is providing good ASIO drivers.

I get about 2-3ms with my RME, which is virtually imperceptible.

Post

We are the KVR collective. Resistance is futile. You will be assimilated. Image
My MusicCalc is served over https!!

Post

Yeah, this is a problem that is particular to MIDI, and yes, you're right, since you're not recording audio, an audio interface is probably not going to help.

The problem lies with the DAW and your computer. The more work your computer has to do while it's receiving your MIDI data, the longer it's going to take for it to process your MIDI data, convert it into audio data with the virtual instrument you've chosen, and send it back to you. The processing takes place in your DAW, with your computer's cpu. What you should notice is the latency only exists when you're playing your controller; on playback of the MIDI sequence data in your DAW, there is no latency at all.

The solution is to take some of the load off your cpu. Route all your existing audio tracks to a common bus and bounce them as a single track. Create a new project that contains only your bounced audio track and the MIDI track you're going to record on. Eliminate any effects that you can apply after the MIDI data has been recorded.

This will allow you to record your MIDI with negligible latency. Then you can move your MIDI recording back into your original project for tweaking and playback.

If you're trying to play MIDI live, the only real solution is more powerful computer.

Post

Oh dear...
RichieWitch wrote:Yeah, this is a problem that is particular to MIDI
No, it isn't.
RichieWitch wrote:, and yes, you're right, since you're not recording audio, an audio interface is probably not going to help.
Yes, it is.
RichieWitch wrote:The problem lies with the DAW and your computer.
Not really true.
RichieWitch wrote:The more work your computer has to do while it's receiving your MIDI data
Which is easier than audio, as it's lower frequency, so uses fewer CPU cycles to capture the information.
RichieWitch wrote:, the longer it's going to take for it to process your MIDI data, convert it into audio data with the virtual instrument you've chosen
This is different from audio, yes, but any audio signal received could be being processed (e.g. written to disk, EQed, etc, etc), so it's really only the virtual instrument, not any effects - built in or otherwise, so it's mostly rubbish.
RichieWitch wrote:, and send it back to you
same as audio
RichieWitch wrote:. The processing takes place in your DAW, with your computer's cpu
same as audio
RichieWitch wrote:. What you should notice is the latency only exists when you're playing your controller; on playback of the MIDI sequence data in your DAW, there is no latency at all.
Rubbish.
RichieWitch wrote:The solution is to take some of the load off your cpu
Rubbish.
RichieWitch wrote:. Route all your existing audio tracks to a common bus and bounce them as a single track
same as audio
RichieWitch wrote:.. Create a new project that contains only your bounced audio track and the MIDI track you're going to record on. Eliminate any effects that you can apply after the MIDI data has been recorded.

This will allow you to record your MIDI with negligible latency
Er, this won't affect the latency heard between pressing a key and the audio being emitted. Total rubbish.
RichieWitch wrote:.. Then you can move your MIDI recording back into your original project for tweaking and playback.

If you're trying to play MIDI live, the only real solution is more powerful computer.
Rubbish.

Post

You're going to need an ASIO audio interface. There are plenty of cheap(ish) alternatives.

Doesn't the S25 have its own ASIO driver?

Post

BertKoor
Yes that's right.

And I never got an answer as everyone assumed I was asking about speaker speaker latency stuff, a much more complex subject I have no idea about.

I just wanted a cheap reliable something to make more plugs load and my keyboard to respond a bit better.

Instead it turned into a discussion over my head.

Which is why I'm asking again.

But thank you for noticing :)
Member 12, Studio One v6.5, VPS Avenger, Kontakt 7, Spitfire, Dune, Arturia, Sonible, Baby Audio, CableGuys, Nektar Panorama P1, Vaporizer 2 to test out

Post

for the record a few years back i lived happily with an audiophile 24/96 card which was perfect.

then i got another computer :ud:
Member 12, Studio One v6.5, VPS Avenger, Kontakt 7, Spitfire, Dune, Arturia, Sonible, Baby Audio, CableGuys, Nektar Panorama P1, Vaporizer 2 to test out

Post

kevvvvv wrote:BertKoor
Yes that's right.

And I never got an answer as everyone assumed I was asking about speaker speaker latency stuff, a much more complex subject I have no idea about.)
What difference are you thinking there is between what you're calling 'keyboard latency' and 'speaker speaker latency'?

Because in your previous thread you seemed to be aware that an audio interface would make a difference to latency, and now you're asking what would make a difference to latency.

So its probably a bit confusing to answer your question, since its not really clear what the issue might be. Generally, when you have audible audio latency its the audio interface buffering that makes the primary controllable difference. That's got nothing to do with keyboard or speakers, its literally the amount of time it takes between the audio interface getting a digital sample of audio from the DAW and it coming out the other end of the audio interface as a voltage.

If it takes L milliseconds to do that, then when you hit a key on your keyboard, the sound will start to reach your ears L+M+D milliseconds later, where M will be a millisecond or three for the USB MIDI to get sent, and D will be about 3 milliseconds per meter you are away from the speakers, ie the speed of sound through air

Total latencies like that of around 20 and upwards milliseconds are where they start to become noticeable. That's roughly a buffer size of 1024 samples at 48K; a decent ASIO audio interface should be running at 256, or 128 samples or less...
my other modular synth is a bugbrand

Post

RichieWitch wrote:Yeah, this is a problem that is particular to MIDI,

such complete nonsense but written with so much confidence as if every word was true....

Sad that this place misinforms on such a level nowadays.

Post

MIDI always has a minimal latency depending upon the size of the message. If you're using the MIDI 31250 baud rate a standard note-on message (three bytes: status, note, velocity) should be represented by the formula 3*8bits / 31250bitsps = 768us. So that's only slightly under 1ms (0.768ms) which is already definitely perceptible. (It's 1302 Hz.)

Adding additional latency reaching into multiple milli-seconds or even tens of milli-seconds is extremely perceptible and can make accurate feedback based timing (play and listen with your ears) impossible.

The only way to reduce MIDI latency is via USB or some other interface other than the original opto-isolated UART running at 31250 baud (baud = bits per second in this case?)

That said it isn't the primary source of latency which is in fact the audio buffer used by your audio device. Since at best you can use USB or a similar interface to reduce latency and improve timing accuracy into the 100s or 10s of micro-seconds range it makes a lot more sense to focus on the primary source of latency: your audio device. In addition software sometimes adds additional buffers which can significantly increase the total. The audio device may only add 1ms while the audio driver has a software buffer of 100ms or more.

In optimization it rarely pays to focus on small 1% or 2% improvements. Anything less than 50% is probably not worth much attention at first and anything less than 20% is arguably never worth any attention at all until there is nothing left to improve. There are diminishing returns and an optimization effort that focuses on the last 5% will tend to actually make the other 95% worse off.

Trim the software buffer down to 1ms and then the audio interface and MIDI will be making up near a third of the total. Assuming 3ms is still too much (<1ms is ideal) you can then focus on these newly made significant elements.
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Post

/sigh

Okay, before everyone writes me off as a complete idiot, let me just say that if I am wrong, it is because I am misinterpreting the OPs problem. The solution I’m suggesting works for the problem as I understand it.

You can try this at home:

I load up Ableton Live with a fresh project, plug in my MIDI keyboard, and drop Kontakt on a new MIDI track. I then load something like Sampletekk’s “the Big One” virtual piano. It’s a gigantic sample library, so it is particularly susceptible to this problem.

I press a key on the controller and I get a piano note on my speakers. No delay. No latency. Simple.

I drag a couple audio files onto two audio tracks and play them while I follow along on my MIDI controller. Still—no problem.

I drag 10 more audio files onto audio tracks, play them all together, and try to follow along on my keyboard… now I am starting to get a slight delay between the time my finger presses the key and I hear a piano note. If I manage to play along, the delay will not be present when I listen to the track; my virtual instrument will follow the pre-recorded MIDI data perfectly.

I drag 10 more audio files, throw on a few compressors, a reverb, and several EQ. The lag between pressing a controller key and hearing a piano note is now significant, nearly a full second, and I can no longer play along because the delay makes it impossible for me to anticipate when to press the piano key.

The solution? Bounce the entire project to an audio file. Open a new project with just that new consolidated audio file and a fresh MIDI track. Play and record to my heart’s content with no delay. When I finish recording the MIDI track, I can copy it over to my original project (the one with all the individual audio files), and the MIDI data will play perfectly in sync with my original project.

This works every time. It has worked for me and everyone I have ever suggested it to.

Now, like I said, if I’m not describing the problem the OP has, then I apologize for misreading the post. Otherwise, I guess you can go on thinking I’m an idiot. :oops:

Post

aciddose wrote:So that's only slightly under 1ms (0.768ms) which is already definitely perceptible. (It's 1302 Hz.)
You can convert a delay into a frequency - one is measured in "seconds" the other is measured in "cycles per second". Your maths is wrong. Your argument therefore invalid.

Post

tehlord wrote:Ditch ASIO4all, it's shit.

One function of a good audio interface is providing good ASIO drivers.

I get about 2-3ms with my RME, which is virtually imperceptible.
Yup and the old ones can be had for 'cheap'.
I have a 1st gen multiface but just bought a 2nd hand multiface 2 as back up for £100 as I cant bear to think Ill be without it one day :(

But back to the OP, freeze all the tracks you dont need to tweak realtime, you can always unfreeze them later.

Everyone is obsessed with having all their tracks playing back with all instruments and effects in realtime when its not necessary!
Amazon: why not use an alternative

Post

pljones wrote:
aciddose wrote:So that's only slightly under 1ms (0.768ms) which is already definitely perceptible. (It's 1302 Hz.)
You can convert a delay into a frequency - one is measured in "seconds" the other is measured in "cycles per second". Your maths is wrong. Your argument therefore invalid.
What are you talking about? It's a simple reciprocal. Hz = 1/time because "a Hertz" defines a measure for audio frequency based upon "cycles per second". So all we need to do is take the time unit (1) and divide it by the length of a cycle (1 ms) in order to get the result (1000 Hz.)

It isn't possible to accurately perceive time in such tiny increments but it is absolutely trivial for anyone who isn't near deaf to hear 1000 Hz. Such a delay produces a dramatic comb filtering effect that is extremely audible to anyone with a typical adult hearing range (16 kHz.)

Your argument is nonsensical and therefore invalid. Yes you can convert from a time measurement to Hz because that's how the unit is defined in the first place. Anyone with at least two functioning brain cells in their head should understand that if they're working in audio.
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Post Reply

Return to “Computer Setup and System Configuration”