Audio buffer lookahead?
Posted: Thu May 01, 2014 6:44 pm
Hi,
been a while since I posted here but I've still been working on my physical modelling drum synth and have started to look into the possibility of internal triggering as an alternative option to just attempting to filter plain incoming audio sources, allowing more reliable results across varying sources.
I have got a few tests made which are close to working reasonably well but I have a little worry about latency almost regardless of implementation. Presumably the 'single sample at a time' processing in Flowstone must receive a long buffer of samples from ASIO for example and then feed us one of these at a time at the sample rate. The trouble with this is the fact that a 512 buffer at 44100hz is 10ms which will be the delay in seeing the end sample. any buffers I then use in code to look back through for peaks will add to this.
basically what I want to do is have some of my code work more like a typical C++ plugin where you are free to manipulate each full buffer received from ASIO straight away. This could also be good for fft's as they could be calculated on the first sample of a new buffer.
Is there any way to do this in Flowstone or would I need to wait till I start porting stuff to C++?
been a while since I posted here but I've still been working on my physical modelling drum synth and have started to look into the possibility of internal triggering as an alternative option to just attempting to filter plain incoming audio sources, allowing more reliable results across varying sources.
I have got a few tests made which are close to working reasonably well but I have a little worry about latency almost regardless of implementation. Presumably the 'single sample at a time' processing in Flowstone must receive a long buffer of samples from ASIO for example and then feed us one of these at a time at the sample rate. The trouble with this is the fact that a 512 buffer at 44100hz is 10ms which will be the delay in seeing the end sample. any buffers I then use in code to look back through for peaks will add to this.
basically what I want to do is have some of my code work more like a typical C++ plugin where you are free to manipulate each full buffer received from ASIO straight away. This could also be good for fft's as they could be calculated on the first sample of a new buffer.
Is there any way to do this in Flowstone or would I need to wait till I start porting stuff to C++?