void processAudio(AudioBuffer &buffer) { // Reasonably assume we will not have more than 32 channels float* ins[32]; float* outs[32]; int n = buffer.getChannels(); if ( (fDSP.getNumInputs() < 32) && (fDSP.getNumOutputs() < 32) ) { // create the table of input channels for(int ch=0; ch<fDSP.getNumInputs(); ++ch) { ins[ch] = buffer.getSamples(ch%n); } // create the table of output channels for(int ch=0; ch<fDSP.getNumOutputs(); ++ch) { outs[ch] = buffer.getSamples(ch%n); } // read OWL parameters and updates corresponding Faust Widgets zones fUI.update(); // Process the audio samples fDSP.compute(buffer.getSize(), ins, outs); } }