robbert-vdh / nih-plug

Rust VST3 and CLAP plugin framework and plugins - because everything is better when you do it yourself
ISC License
1.45k stars 129 forks source link

Spectral Compressor feature requests #123

Closed AnsonX10 closed 2 months ago

AnsonX10 commented 2 months ago

Been playing with Spectral Compressor and I've been very impressed. It's so cool to have an open source solution like this. I'd like to put a couple features on your radar. It just needs a couple things and (IMO) it could be better than Soothe2 and similar plugins.

First, it needs a way to "smooth" the response frequency-wise, with variable range. At lower window sizes, the highs still have too much precision while the low frequencies have basically no precision because the first "band" is centered well below the usable range. The ability to smooth out the response would allow us to run higher window sizes and get accurate low frequency resonance taming while not smashing the highs into pink noise.

Secondly, it would ideally have a way to manually shape the threshold curve. (without feeding the "sidechain compression" with EQed noise.) My main reason for wanting this is to target an equal loudness contour instead of a flat pink noise slope (or a quadratic curve). Including an equal loudness contour instead of pink noise as a 4th "mode" option would satisfy my desire, regardless of whether or not you include manual threshold shapes.

Third, it might make more sense if the "Hi-Freq Rolloff" was exponential instead of linear (or logarithmic, if you look at it that way). Basically I would want it to affect the highest frequencies far more, and by 3000 Hz or something, the reduction shouldn't be noticeable at all.

Of course, the third request could be satisfied by a solution to the 2nd, if it's robust enough. The main use would be to bandlimit the threshold for a signal that has a hard cutoff at i.e. 18 khz, and treat all the frequencies above that the same.

But again, massive props for this. I'm so happy it exists. The other plugins are also great. Diopser has already far exceeded any other plugins with whom it may or may not share any similarity.

AnsonX10 commented 2 months ago

Oh also, an input gain control would be very helpful.

One thing that would instantly surpass Soothe2 would be if you could find a way to have the spectrum smoothing arbitrarily controllable across the spectrum. Like an EQ that controls the Q of the smoothing. I'm not aware of any plugin that has this, so it's probably difficult.

I love the spectrum analyzer this has, but I personally would get more use out of it if it could be extended to show a larger range of frequencies. e.g. down 5 Hz. I would also ask for the upper limit to be extended too, but that is DEFINITELY in feature-creep territory, so maybe a separate analyzer plugin would make more sense.

robbert-vdh commented 2 months ago

Thanks for the suggestions! The current version of the plugin is more of a testbed for trying ideas. I'm going to take these those ideas and a bunch more things I have planned and create a much nicer, commercial version of the plugin at some point in the future. But at the moment I have no concrete plans yet for when that will be.

AnsonX10 commented 2 months ago

I'm happy to hear you plan to improve the plugin, but the coolest part about it is the FOSS aspect IMO. The loss of that will sadden me, but that said, I understand the need to make money.

I'd actually like to hire someone to make a commercial plugin for me at some point. Would you be interested?