Esiste un rapporto tra buffer size e frequenza di campionamento.
Una scheda audio ha uno "spazio" di pre-lettura del flusso dei campionamenti chiamato appunto buffer e può essere modificato in capienza con un numero che indica la quantità di campioni messi in attesa. I valori (campioni) possono essere vari, tipo 1024, 512, 64... Questo è uno stratagemma per dare tempo al sistema di verificare ed "aggiustare" eventuali errori nel flusso, una sorta di anticamera dove i campioni vengono rimessi in fila e contati per assicurare un suono fluido.
La velocità di lettura dei campioni nel buffer (che determina anche la latenza) dipende dalla frequenza scelta sulla scheda audio che può essere di 22.050 campioni al secondo, di 44.100, di 48.000, 88.000, 96.000. Normalmente ci esprimiamo in 44.1 K, 96 K etc...
Va da se che l'impostazione della frequenza (44.1, 96 etc.) va ad influire sul tempo di risposta del suono in relazione alla grandezza del buffer e quindi un buffer di 1024 campioni letto da una scheda settata alla velocità di 44.1k porterà una latenza di 0.1 sec. (valore indicativo, per comodità), se lo stesso buffer di 1024 campioni lo si fa leggere ad una scheda settata a 88.2k renderà una latenza di 0,05 sec. (sempre indicativo), lo stesso buffer di 1024 campioni letto invece da un settaggio della scheda a 192k ...ci darà una latenza di 0.02 sec. (20 millesimi di sec., ma ripeto, sono solo valori indicativi) il che offre una performance migliore a livello di risposta tasto/suono.
Perciò tu pensi che una frequenza maggiore porti meno latenza ma non è così, perlomeno non è il sistema più pratico per avere basse latenze, è più proficuo abbassare il buffer, tanto sino a quando il sistema regge e non da problemi.
Quindi esiste un rapporto tra buffer, frequenza e risposta del suono e a seconda del PC o altro tipo di lettore, si può impostare il rapporto ottimale.
Perciò non serve avere 1024 di buffer per poi dover mettere la lettura a 192khz per suonare liberamente... basta trovare il compromesso, magari un buffer a 128 o 96 e la frequenza a 44.1k o 48.2k e si otterranno lo stesso valori suonabili, anche perché alte frequenze (192khz) pesano al sistema!!! specie se a 24 bit!
Una qualsiasi scheda audio da 150/200€, con driver audio ben collaudati (tutte oramai), offrono latenze bassissime, nell'ordine dei 10/8 msec.
Certo, che se hai un PC con Windows 95 e Pentium 200... non potrai pretendere di portare il buffer neanche a 512 campioni a meno che non ti piacciano i suoni pieni di scrocchi e distorsioni varie se non addirittura blocchi di sistema.
Ma oggi, e già da qualche anno, questi problemi non ci sono più.
Ah, poi c'è quest'ottimo contributo di Barbetta57: