Android - What does "chaining audio" effects mean in SuperpoweredFilter effects?

109 views Asked by At

I have two filter effects (with lowpass and highpass types). However, after processing both on my audiosample buffers, both effects are not audible at runtime. The second filter to be declared only gets heard. I have experimented a lot by swapping the order of calling the resonance frequency bit still, the second filter type to be declared only makes it to output at runtime. I got a suggestion describing a process called "audio chaining". Does anyone please have an idea about this? Or can't Superpowered DSP process buffers with two different filter types in an audio system? Please, any help at all would be very much appreciated...

This is my declaration of both instances;

filter = new SuperpoweredFilter(SuperpoweredFilter_Resonant_Highpass, samplerate);
filterb = new SuperpoweredFilter(SuperpoweredFilter_Resonant_Lowpass, samplerate);


audioSystem = new SuperpoweredAndroidAudioIO(samplerate, buffersize, false, true, audioProcessing, this, -1, SL_ANDROID_STREAM_MEDIA, buffersize * 2);

           filterb->setResonantParameters(floatToFrequency(0.5f), 0.2f);
           filter->setResonantParameters(floatToFrequency(0.5f), 0.2f);              //resonance
           filterb->enable(true);
           filter->enable(true);

       playerA->play(false);

Also in the audioprocessing method, I called

filterb->process(stereoBuffer, stereoBuffer, numberOfSamples);  
filter->process(stereoBuffer, stereoBuffer, numberOfSamples); 
1

There are 1 answers

0
Gabor Szanto On

Your pseudo-code looks okay. I'm guessing you called filter->enable and filterb->enable too?

As far as I can guess, you should hear some high and some low frequencies reduced.