Offline processing


I am trying to figure out how i can create an offline plugin. my process needs to receive the entire audio file before processing.
However in processBlock() the function expects me to process one buffer before i continue to the next.
How is it possible to read the input in its entirety and only then process the audio and provide the output?
If anyone has an idea i would be grateful


I really don’t think it is possible.

AU / RTAS (Real Time Audio Suite) / VST are all real-time protocols based on buffer processing. These plugins will work ‘offline’ in the sense that the host just push buffers to the plugin as quick as the CPU allows, rather than based on the playback speed.

I am not aware of any protocol that allows a plugin to ‘scan’ an entire audio file before processing it, other than AS (Digidesign’s Audio Suite), where I never came across 3rd party plugins. So even there I’m not sure it can be done.