La latenza è il ritardo tra gesto e suono: premi il tasto, e la nota esce dopo. Sotto i ~10 ms il cervello percepisce "istantaneo"; oltre i 20-30 ms suonare dal vivo diventa una lotta.
Da dove viene: l'audio si elabora a blocchi (buffer) – buffer da 256 campioni a 48 kHz ≈ 5,3 ms per direzione, e il giro completo (in + elaborazione + out) si somma. Buffer piccolo = poca latenza ma CPU sotto pressione (i crackle sono il buffer che non ce la fa); buffer grande = comodo ma molle sotto le dita.
Le leve, in ordine: driver giusti (ASIO su Windows – quello nativo della tua interfaccia, non il generico; Core Audio su Mac è già a posto; PipeWire/JACK su Linux), buffer al minimo che regge il progetto (128-256 per suonare, 512+ per mixare, dove la latenza non conta), e per la registrazione il direct monitoring dell'interfaccia: ti ascolti in analogico, a latenza zero, aggirando il problema. Nel browser il collo è storicamente peggio – motivo per cui MIXI porta il DSP in Rust/WebAssembly.