Audio signal as resonator

Rickard Carlsson's icon

Hi everyone! Long time lurker, first time poster.
I have been wondering for a while how you could use one audio signal as a real time resonator on another audio signal but I can't figure out the optimal method. A similar process to what I want to accomplish is using an audio file as the Impulse Response file in a convolutional reverb, but instead I want the analogous IR to be RT audio (without the tail of an IR).

For example if I were to use a synthesizer as the resonator to a white noise signal, I would like the processed white noise to sound almost identical to the synthesizer. A more practical example would be using a recorded or sampled instrument as the resonator for a synthesizer using a harmonically rich waveform, so that the synthesizer would inherit timbral characteristics of the more "natural" instrument.

I assume this could be accomplished with some form of FFT processing, but that is new to me so I don't know the most appropriate method. The one thing I want to avoid is additional harmonics in processed signal, so frequency/amplitude modulation is a no-go. The intention is to use this effect as a textural element, so the sampling rate of the resonator signal doesn't have to match the sample rate of the signal as long as the result doesn't sound choppy/clearly quantized. If it makes any difference I intend to implement this in an Max For Live Audio Effect (four signals coming from plugin~ going to two signals in plugout~).

Can anyone help me out with this?
Thanks in advance!

Jean-Francois Charles's icon

What you describe is close to what a vocoder does.
There are many, many flavors of vocoders. Actually, there is one in Live, try to spend time with it, you might achieve your goals just with that.
Then, you could study the "Vocoder" example in Max (Help -> Examples -> Effects -> Classic Vocoder Folder -> Classic Vocoder). Not as good as a great vocoder plugin, but you can see how this version is coded in Max.

Roman Thilenius's icon


or, when he is talking about impulse-response, simply crossconvolution. (isnt one in the examples, too?)

double_UG's icon

look at the buffir~ object. But changing the buffer will produce clicks

Francesco Gallo's icon

Hi I'm really curious, did you find a solution for your audio resonator?

Francesco Gallo's icon

I'm interested into acoustic-like synthesis using resonator and convolution.

I tried using SPEAR to analyze a sample, saving it as SDIF file.
I used CNMAT externals to play the partials of SDIF as a modal synthesis resonator to excite and I can scan the sample partials evolving in time like a wavetable.

I want to find an easier approach, and maybe try to do something similiar also using convolution, something where you can scan a sample to get a short impulse response without getting any loading time or clicks, something like Tone2 Rayblaster does.