Feeding AudioSources with AudioProcessor Outputs


#1

Hi JUCE community,

first of, I am relatively new to JUCE and also new to C++.

I´m working on a project for my bachelorthesis which implements a 5 channel convolution reverb into an already existing wavefield synthesis system app. The application is written with JUCE and ONLY AudioSources to get up to 128 Inputchannels and also up to 128 Outputchannels or more.

The thing is, that I want to be able to get the available InputBuffers, split each channel 5 times, perform some delay and gain processing, mix everything to 5 Channels, perform then convolution on each of the 5 mixed channels and feed them back to an existing AudioSource which then does the wavefield rendering. I really don´t want to mess with the rendering itself, because thats a really complicated script which got done a couple of years ago on a diploma thesis.

So any chance I can pull this off with combining the output of a processor with the inputs of an audioSource??

 

I can get more into detail if required. I hope what I just wrote makes at least a littlebit sense :)

 

thanks a lot!!

H


#2

"edited" -> moved to general Forum


#3

I can't say much about the specifics of what you're attempting to do but their isn't really much difference between AudioProcessors and AudioSources.  It's entirely possible to drive an AudioProcessor inside an AudioSource by calling processBlock on it and it can work the other way as well if you instead want to embed an AudioSource inside an AudioProcessor.  Only thing to note is the prepareToPlay parameters are inverted and use the AudioSampleBuffer in the AudioSourceChannelInfo for the processor, or likewise create an AudioSourceChannelInfo around the processor's AudioSampleBuffer if you're working the other way around.  You may want to call setPlayConfigDetails on the processor if you don't have internal access to it's rendering code.


#4

Hi Graeme,

thank you very much... this repply actually helped me a lot.

I got the AudioProcessor to work inside an AudioSource.