C'è un modo per attivare eventi in C# con una risoluzione di pochi microsecondi?Eventi di attivazione con risoluzione al microsecondo per sequencer midi
Sto costruendo un sequencer MIDI e richiede l'attivazione di un evento ogni tick MIDI, che riprodurrà quindi qualsiasi nota registrata in quel momento.
A 120 battiti al minuto e con una risoluzione di 120 ppqn (impulsi per battito/semiminima), tale evento dovrebbe generare ogni 4.16666 millisecondi. I sequencer moderni hanno risoluzioni più elevate come 768ppqn che richiederebbero che l'evento venga attivato ogni 651 microsecondi.
La migliore risoluzione per gli eventi a breve termine che ho trovato è di 1 millisecondo. Come posso andare oltre?
Questo problema deve essere già stato risolto da un sequencer MIDI C# o da un lettore di file MIDI. Forse sto solo non guardando il problema attraverso l'angolo retto.
Grazie per il vostro aiuto.
Non seguo i tuoi calcoli. Se 120ppqn = 41.6666ms, sicuramente 768ppqn! = 651microsec, ma 768ppqn = 1000 * 41.6666 * 120/768 = 6510 microsec? – spender
120 bpm = 1 battito ogni 500 ms, 120 tick per battito = 500ms/120 = 4.166ms & 768 tick per beat = 500ms/768 = 0.651ms Esiste davvero un refuso nel mio primo numero, lo correggerò ora . Grazie. – Brice
guarda la mia risposta aggiornata – Fredou