andrewreeman / SpectralSuite

The Unlicense
166 stars 5 forks source link

Spectral gate should have multi-channel output #39

Closed andrewreeman closed 8 months ago

andrewreeman commented 1 year ago

Split audio output into one channel group which is the standard output and then another channel which is the weak/strong inverse

pixmusix commented 11 months ago

I've benefited a lot from your work and I wanted to give back. I have had a good read of your code. Super clean.

I think we are inheriting an &out from JUCER? Is that right? What's stopping us from making a auto& output : m_output_inverse?

void SpectralAudioPlugin::writeInverseOut() {
    for(auto& output : m_output_inverse)
    {
        std::fill(output.begin(), output.end(), m_output * (-f1.0));
    }   
}
andrewreeman commented 11 months ago

Hi :-), Glad you have found good use for these and enjoyed them. Thanks for taking a look and wanting to help, much appreciated.

The more I think about this issue the less useful I think it would be. This issue is doing things that people's audio workstations should be able to do already.

So the idea was, that this plugin should be able to send anything above the gate threshold through channels 1+2 and anything below the threshold through channels 3+4, assuming stereo input. But...people can just create 2 instances of the plugin and do it themselves which will be much more flexible! Only downside is that it will do another bunch of ffts.

Happy to hear your thoughts!

pixmusix commented 11 months ago

I agree. :)

Only downside is that it will do another bunch of ffts.

They don't call it a Fast Fourier Transform for nothing. Modern computers probably won't blink.

I think you can close this issue when you're ready.

andrewreeman commented 8 months ago

Yea I'm going to mark this as closed. It may be nice to have in the future once plugins have reached more stability. Thanks for the discussion on this