Polarity SC - Free Spectral Compressor Plugin (VST3 & CLAP)
Tutorial | Apr 17, 2026
Polarity SC is a free open-source spectral compressor for Windows, macOS, and Linux (VST3 & CLAP) with spectral ducking, resonance suppression, freeze, and IR export.
- You can watch the Video on Youtube
- Polarity-SC Download & Website
- Support me on Patreon if you like what you hear.
- Download Presets, Tools and Projects on my Dispenser
Quick Summary #
Polarity SC is a free open-source spectral compressor and suppressor derived from Robert van der Helm’s Spectral Compressor, with a darker redesigned interface and several practical workflow upgrades. It is useful for precise spectral ducking, resonance suppression, sidechain matching, and pink-noise-based shaping, making it effective on bass buses, music buses, and even the master. New features such as Delta monitoring, spectral freeze, and impulse-response export extend it beyond dynamic processing into static EQ and convolution-based workflows. Available in VST3 and CLAP for Windows, macOS, and Linux, it remains lightweight on CPU and is currently offered as a beta release.
Key Takeaways #
- Polarity SC is a modified open-source version of Robert van der Helm’s Spectral Compressor, rebuilt on the same Rust codebase with a darker UI, added features, and free binaries for Windows, macOS, and Linux in VST3 and CLAP formats.
- A practical sidechain ducking workflow is to insert Polarity SC on a bass or music bus, feed drums into the sidechain, set attack to 0 ms, use a very short release around 5 ms, and lower the ratio to duck only the frequencies that clash with the kick, snare, and hats.
- The plug-in can act as a resonance suppressor by using downward spectral compression on tonal material such as pads; lowering attack/release makes suppression faster, while very long release times (up to 10,000 ms) make it behave more gradually and can work well on the master bus.
- The new Delta button outputs only the removed content, making it possible to monitor suppressed resonances directly or use the processor like a spectral gate, especially when combined with threshold and window-size adjustments.
- The Freeze function converts the current dynamic spectral reduction into a static curve, effectively turning the result into a temporary static EQ instead of continuously reacting to the incoming signal.
- Freeze state is not persistent across reloads: the static reduction curve is not saved in a buffer/array, so reopening the plug-in or project requires freezing the spectrum again.
- The frozen spectral curve can be exported as an impulse response (IR) and loaded into a convolution processor to recreate the EQ-like shaping without needing the original plug-in, which is useful for sharing projects with people who do not own the same tools.
- Additional workflow features include color-coded compression modes, level matching, and bypass: upward compression is blue, downward compression is yellow, and Match compensates for loudness loss after heavy spectral reduction so input/output comparisons are easier.
Polarity SC: A Free Spectral Compressor and Suppressor #
Polarity SC is a modified version of Robert van der Helm’s open-source Spectral Compressor. It keeps the original Rust code base and remains free to use, with builds for Windows, macOS, and Linux in VST3 and CLAP formats. There is no subscription, account requirement, telemetry, or iLok-style copy protection.
The main goal of the modification is a darker, more readable interface and a handful of workflow-oriented additions that expand the original tool without changing its core purpose.
What It Does #
Polarity SC is a spectral dynamics processor. Instead of applying compression across the whole signal uniformly, it works on many narrow frequency bands independently. This allows it to reduce or boost specific spectral components with much greater precision than a traditional broadband compressor.
It can be used as:
- a spectral ducker
- a resonance suppressor
- a sidechain-dependent spectral shaper
- a spectral gate when used with Delta output
- a source for creating a static EQ curve via Freeze
- an impulse response exporter for convolution-based curve transfer
How It Works #
At its core, the plug-in analyzes the incoming signal in the frequency domain and applies compression or suppression to individual bins. In practice, that means it can react to energy at specific frequencies instead of turning the entire signal down.
Two broad modes are highlighted:
- Downward spectral compression/suppression: reduces frequency peaks or ducks spectral content
- Upward spectral compression: raises quieter spectral details
The interface color-codes these behaviors:
- Yellow for downward compression
- Blue for upward compression
Attack and release control how quickly the per-band gain changes respond. Very short settings produce fast, tight control; longer settings create smoother, more relaxed movement.
Sidechain Ducking #
A prominent use case is sidechain spectral ducking. Instead of ducking an entire bass or music bus whenever a drum signal hits, Polarity SC ducks only the frequencies occupied by the sidechain source.
For example, if the sidechain contains kick, snare, and hi-hats, the plug-in reduces those corresponding spectral regions in the target signal. This can create cleaner separation than conventional sidechain compression because it preserves unrelated frequencies.
Useful characteristics mentioned in this context:
- very fast response with low attack times
- short release settings for tight ducking
- precise per-frequency reduction
- relatively light CPU use
This makes it suitable for routine bus ducking tasks, especially on bass and music buses.
Resonance Suppression #
Polarity SC also works well as a resonance suppressor. With downward compression engaged, it can reduce narrow peaks in pads, synths, or full mixes.
Longer release times make the behavior smoother and more stable. Extremely long release values can make the processor act more like a slowly adapting tonal balancer. This can be useful on buses or even the master, where a less reactive response may sound more natural.
Additional Features #
Darker Interface #
One of the most visible changes is the redesigned UI. The original interface is replaced with a darker background and clearer visual presentation.
Delta Output #
The Delta button outputs what the processor removes rather than the processed signal itself. In other words, it monitors the difference between input and output.
This is useful for:
- hearing exactly which resonances are being suppressed
- evaluating the aggressiveness of the processing
- using the removed content creatively
With certain settings, Delta can also function like a spectral gate, where only selected spectral activity is heard.
Freeze #
The Freeze function captures the current gain-reduction profile and holds it in place as a static spectral curve.
Normally, the reduction changes dynamically with the input. Freeze stops that movement and turns the current state into something closer to a fixed EQ profile. This can be useful when a dynamic suppression pattern produces a tone-shaping curve worth preserving.
An important limitation is that the frozen state is not saved permanently in an internal stored array for project recall. If the plug-in or project is reloaded, the frozen curve is lost and must be created again.
Impulse Response Export #
Once a spectral curve has been frozen, it can be exported as an impulse response. That impulse response can then be loaded into a convolution plug-in to recreate the same tonal curve elsewhere.
This is particularly useful when sharing projects with users who may not have the same plug-ins installed. Instead of transferring a proprietary EQ setup, the curve can be rendered as an IR and loaded into a convolution processor.
In practice, this turns the captured spectral profile into a portable EQ-like filter that can be blended with a mix control inside the convolution host.
Match Level #
Heavy spectral reduction often lowers overall loudness, which makes fair comparison difficult. The Match function attempts to level-match the processed output to the input so tonal changes can be judged more accurately without being biased by volume differences.
Bypass #
A dedicated bypass control is included for quicker A/B comparison.
Workflow #
A practical workflow with Polarity SC can look like this:
- Insert it on a target bus such as bass, pads, or a full music bus.
- Choose whether it will act dynamically on the source alone or in sidechain mode.
- Set ratio, attack, and release depending on whether the goal is tight ducking or smoother suppression.
- Use Delta to monitor what is being removed.
- If the resulting curve is useful as a fixed tonal shape, activate Freeze.
- Optionally export that frozen shape as an impulse response for use in a convolution processor.
- Use Match to compare input and output at similar loudness.
Practical Uses #
Bass and Drum Separation #
A drum bus can be fed into the sidechain while Polarity SC sits on a bass bus. The plug-in then ducks only the bass frequencies that conflict with the drum content, including kick, snare, and hats where relevant.
Music Bus Cleanup #
Placed on a music bus with drum sidechain input, it can create room for percussion in a more transparent way than whole-bus ducking.
Pad and Synth Resonance Control #
Downward spectral compression can reduce harsh or peaky partials in pads and sustained sounds without requiring manual notch EQ work.
Master Bus Smoothing #
With slower attack and release settings, the processor can behave more gently and help control resonant build-up over time.
Static Tone Capture #
Freeze can turn a dynamic suppression state into a static EQ-like profile. Exporting that profile as an impulse response makes it transferable to systems that do not have the plug-in installed.
Limits #
Polarity SC is described as beta software, so bugs are still possible.
A few practical limitations are explicitly noted:
- the frozen spectral state does not persist after reloading the plug-in or project
- some controls may still need refinement
- the impulse-response recreation may require additional tweaking for exact level or amount matching
Availability #
Polarity SC is available as a free download from the dedicated Polarity Productions page, with builds for:
- Windows
- macOS
- Linux
It remains free permanently and is intended as a practical tool release rather than a commercial product. Feedback and bug reports are encouraged while the plug-in remains in beta.
Transcript #
This is the transcript of the video. The text was generated automatically and may contain small mistakes. The timestamps jump to the matching part of the video.
Click to expand transcript
[00:00:00] So, welcome back guys, today I want to share a new plug-in video, which is called Polarity
[00:00:05] SC, and this stands for Spectral Compressor, or Suppressor, and this is a modification of
[00:00:13] the original Spectral Compressor here by Robert van der Helm, which is open source and around
[00:00:18] for quite some time.
[00:00:19] There are a lot of videos on YouTube about this plug-in in particular here, and I also
[00:00:25] made some videos a few years ago, but I never really liked the interface of it, because
[00:00:30] it's very bright and it's very white, it's actually too white for me, okay?
[00:00:36] So I thought, hmm, this one here is open source, so why not give it a go and try to modify
[00:00:42] it, okay?
[00:00:43] So this leads me to Polarity SC, as you can see at the top.
[00:00:47] It's much darker in the background, of course, and I added some additional features.
[00:00:52] It still is free to download, and there is no subscription fee or iLog or anything like
[00:00:59] this.
[00:01:00] It works with all platforms, so it works with Linux and Mac OS and also Windows, of course.
[00:01:06] And it's still in Rust, so it's still the original code base here of the Spectral Compressor.
[00:01:12] So you can download this for free on my website called here polarityproductions/polaritysc,
[00:01:20] and the link is in the description below, and the screenshot here is a bit too small,
[00:01:24] actually.
[00:01:25] I need to exchange this.
[00:01:26] But yeah, you can read up here what's it all about, how you can use it, and there are
[00:01:31] some download buttons down here for Windows, Mac OS, and Linux, and this is again in beta,
[00:01:37] so give me feedback if you encounter some problems, let me know, okay?
[00:01:42] There's also a link here to the original one, and a few years ago when I made a video, people
[00:01:49] had problems with downloading this, because there's no direct download button here.
[00:01:54] You need to go to the automated builds, and then there's here the last one, right, and
[00:02:00] then you go down, and you can see here the binaries that you can download.
[00:02:05] And I get it, it's too complicated sometimes to do this.
[00:02:10] So now we have here a dedicated page, the link is in the description below, and you
[00:02:14] can just head over and download this and give it a try.
[00:02:17] No strings attached, as you can see here, no account, no email, no telemetry, no iLog,
[00:02:23] or platforms, VST 3, and CLAP, anyway.
[00:02:28] So we don't need this one here, because this is the old one, so maybe let's remove this.
[00:02:34] So this is here on the base, and it's in sidechain mode, as you can see here, sidechain compression,
[00:02:44] which means I have here as an input my drums.
[00:02:47] You can see it's not only the kick drum, it's also the snare and the hi-hats, which I really
[00:02:51] like, because it also ducks away all the frequencies of the snare and the hi-hats on the bass bus.
[00:02:58] And it's very quick, I do this all the time, and all of my projects, when you have the
[00:03:02] attack time here on zero, can also bring the release time down to zero, I leave a bit of
[00:03:09] room here, maybe 5ms release time, and then you pull down the ratio, and you can duck
[00:03:16] all the frequencies away.
[00:03:17] It's very precise, it's very fast, and it works very well, with not that much of CPU usage.
[00:03:27] It's very light on the CPU.
[00:03:30] So yeah, it's a spectral ducker, so you can bring in a sidechain, and you can also switch
[00:03:36] this here to pink noise, ducking, or sidechain matching, which is exactly opposite, so it
[00:03:42] just mimics all the frequencies from the sidechain on your current track.
[00:03:46] Anyway, so this is the ducker here on the bass, I also have this here on the music bus.
[00:03:53] And here it's more like a resonance suppressor, you can see there's a pad sound here in the
[00:03:59] background, ratio to zero, nothing happens, and then we bring the downwards compression
[00:04:05] here in, and it removes all the peaking frequencies.
[00:04:11] And when you bring down the attack on release time, it does this more quickly, or more laid
[00:04:17] back, you can even go up to 10,000ms, so it's very slow, and it's very nice to have this
[00:04:25] on the master.
[00:04:28] What you also can do now is there's a button called Delta, which gives you all the resonances
[00:04:35] that are suppressed as an output, so you can hear what's actually removed.
[00:04:43] So it's just an inverted signal.
[00:04:45] And I heard some people use this all the time for stuff like Botanica, which is a new genre,
[00:04:52] and you have this spectral gate, and you can use this as a spectral gate, right?
[00:04:56] So everything that's not above the threshold here, you can't hear.
[00:05:02] If you bring down here maybe the window size, you can also change the slope, the output doesn't
[00:05:21] do anything here.
[00:05:26] You can use it as a spectral gate when you use the Delta button, so that's one change.
[00:05:34] We can also do something like freeze.
[00:05:40] So let's say you have this reduction here in gain, but it does this dynamically, so it
[00:05:45] changes when the sound changes, and you can do something like a long release time, which
[00:05:50] makes it very slow, but it still reacts to the incoming signal.
[00:05:55] So then you can just hit the freeze button here and freeze the sound to some kind of
[00:06:02] static gain reduction, so it's more like a static EQ now.
[00:06:06] Only problem, I don't save this in kind of an array or buffer here, so when you reload
[00:06:12] the plug-in or when you reload the project, this is gone, so you need to freeze then again.
[00:06:17] But you can just temporarily freeze this here for a moment, and you have a static EQ, and
[00:06:23] I can show you this here also with the EQ curve analyzer.
[00:06:28] This one, right, so you can see here it's actually reducing the individual bend, so it's a static
[00:06:41] EQ.
[00:06:42] And then we can also export this curve here as an impulse response.
[00:06:48] As you can see here, I used to just test IR, hit save, overwrite this, and then you have
[00:06:55] here a test IR, and the idea was behind this to just use convolution reverb, because sometimes
[00:07:03] I share projects on my Patreon, and not everyone has all the plug-ins I use, and then sometimes
[00:07:09] I use an EQ plug-in right, and I want to have the EQ curve on this track, but I don't want
[00:07:14] to share it with the plug-in, so I thought maybe I can just use the convolution reverb
[00:07:19] for that.
[00:07:20] You can drag this in, pull this up to 0 dB here, and then you can see it gives you basically
[00:07:29] the same curve that we reduced before it.
[00:07:33] Maybe the amount is not that much, maybe you can tweak this, but yeah, you can use your
[00:07:39] mix knob also for, your face actually changed, yeah, your face has changed.
[00:07:46] So you have like an EQ that you can blend in or blend out, exactly as you want it.
[00:07:53] So this was my, this was my idea behind this freeze and IR export, and I use this all the
[00:08:01] time.
[00:08:02] It's very nice to have.
[00:08:06] There's also upwards compression still in.
[00:08:08] It's color coded now, so upwards is blue, as you can see here also the gain reduction
[00:08:12] or gain addition, and the downwards compression is in yellow.
[00:08:18] So it's a bit more color coded, by bus button is in there, there's also something like a
[00:08:23] match level thing also included when you reduce a lot of gain or individual bins here with
[00:08:31] the gain, then of course the whole signal becomes quieter, right, and it's very hard
[00:08:36] to compare, so you can hit match and it tries to match the input signal to the output signal.
[00:08:50] You can compare it quite easily what's going on, and I need the mix button here also needs
[00:08:59] to go in a different route.
[00:09:01] Anyway, so yeah, there's a by bus button and match level match delta for having the inverted
[00:09:07] signal, and we have this background is much darker, and we have this color coding, there's
[00:09:13] a spectral freeze here, and also an export impulse response, which I use all the time,
[00:09:20] and this is in beta, so there are probably some bugs all the time.
[00:09:24] I use it in my projects already, and it works for me.
[00:09:30] So when you encounter problems or bugs, let me know, yeah, if you encounter problems,
[00:09:46] let me know in the comments down below, this one is completely free, it stays free forever,
[00:09:51] I make some updates to it because I need some updates myself, I don't want to make money
[00:09:56] with this, I just put it out there because I modified this here for myself to have my
[00:10:03] own tools exactly the way I want to have my tools, okay, so this is why I do this.
[00:10:09] And some people ask me about it, and here it is, so you can download this and use it
[00:10:14] for yourself.
[00:10:15] Anyway, that's it for this Friday.
[00:10:19] Let me know what you think in the comments down below, leave a thumbs up and report all
[00:10:24] the bugs.
[00:10:25] Okay.
[00:10:26] I'll see you next time, and bye.