Dynamic Rumble Filter

About 35 years I came across an audio amplifier that had a dynamic rumble filter that reduced turntable rumble on quiet passages, but was turned off when there were load passages. It was actually quite effective.
Could such a filter be implemented with Audacity or with a VST plug-in?

If by “quiet” you mean “should be silent” then a gate will do this: when the amplitude of the audio drops below threshold it is zeroed by the gate.
(I’ve got the “GGate” VST plugin working successfully on Audacity)
You’ll need the VST enabler to use VST plugins on Audacity, (even then not all VST plugins work, but “GGate” does).

I don’t think the poster is looking for Cut To Silence during the quiet passages, I think they want a high pass filter switching in and out depending on the show volume.


I don’t think the poster is looking for Cut To Silence during the quiet passages, I think they want a high pass filter switching in and out depending on the show volume.

That’s right, it was a variable or switching high pass filter.

You can do it with my Noise Gate plug-in.
To install the plug-in, unzip it into your Audacity plug-ins folder and restart Audacity.

To use it as a rumble filter, set the “Gate frequencies below” to a fairly low frequency, say around 100Hz (this sets the “corner frequency” of the filter, so although it is a fairly steep filter, it still needs to be set a bit above the rumble frequencies that you want to remove).

There is currently no documentation for this plug-in, but I think it is not too hard to figure out.

It can also be used as a hiss filter.

I’ll be away for a couple of weeks, so if you need any help with the plug-in perhaps Koz or one of the other guys will be able to figure it out.
noisegate.ny.zip (1.19 KB)

I see some downloads - any comments? Did it work?

Hi Steve,
It seems quite promising, these are the settings I used ( see attachment ).

P.S. It might be an advantage to change " gate frequencies above 20 " to say
5HZ to remove subsonic turntable frequencies.
Rumble Filter.png

I “think” that setting “Gate Frequencies Above: 20Hz” actually disables that filter, so it is the same as “Gate Frequencies Above: 0Hz”.

Originally this plug-in was set up just for gating, and “hiss gating”, not “rumble gating” (which I added later in response to your original post).
I’m away this weekend but will check it out when I get back. Feel free to post a reminder here if you do not hear back from me soon after the weekend.

If required, the Attack and Decay settings could be independent rather than automatically the same (if that would be useful to anyone). What do you think - an extra slider, or as it is now?


Effective in which way … more ‘bassy’ /softier sound (additional loundness switch)?

Anyway, yes, I think this could be done (least) as VST implementation. Easiest way to go would maybe be to change the filter order (steepness, roll-off curve) or(/and) corner frequency “on-the-fly” by the “load” level measured from certain frequency area(s).


Effective in which way … more ‘bassy’ /softier sound (additional loundness switch)?

Anyway, yes, I think this could be done (least) as VST implementation. Easiest way to go would maybe be to change the filter order (steepness, roll-off curve) or(/and) corner frequency “on-the-fly” by the “load” level measured from certain frequency area(s).


Hi jtp_60,

Thanks. It looks good. How do we get it in VST plug-in?

Once I had nyquist “Noise Gate” plug-in made by someone else, but it was identical to above. It easily messed music up.
Especially in the sounds of the piano and reverbration, they were often turned into metarllic sound in some part.
I don’t want to review the whole track after effecting to see any part was ruined or not.

Does someone know where we can get that in VST plug-in?

That’s an 18dB per octave high-pass filter, and being a hardware device allows you to roll off sub-sonic (below 20Hz) frequencies of records while you play them. For post processing, (processing sounds that have already been recorded), you can do exactly the same thing with Audacity’s built in high-pass filter (Effects menu). In fact, with the effect in Audacity you can use an even steeper slope (up to 48dB per octave) which will remove more subsonic frequencies while still leaving frequencies above 20Hz unaffected (much steeper cut-off).

Many high quality audio amplifiers already have a low frequency cut off built in, so this hardware device is only necessary if the low frequency cut of is either at too low a frequency, or too gradual a slope to cope with the unwanted rumble.

The limitation of devices like this, and equally the standard high-pass filter in Audacity, is that it processes ALL the sound signal that passes through it. This means that if you have equipment that is capable of reproducing very low frequencies (around 20Hz or less), and wish to listen to music that has very low frequencies, then if the cut off frequency is too high it will remove the lowest frequencies from the music. On the other hand, if you are playing an old record that has noticeable rumble above the filter cut off frequency, then that rumble will not be removed. This is the limitation that davidcw is wanting to overcome.

The key word here is “dynamic rumble filter”.
This is a filter (high-pass filter - stops low frequencies and allows high frequencies) that responds to the amplitude of the signal (how loud it is).
Unwanted rumble is often at a fairly low level. The causes of the rumble may be from a vinyl record that is slightly warped, or has the centre hole slightly off centre, or from microphone recordings picking up vibrations through the ground from nearby roads, or any number of other things, but whatever the cause, the idea of a dynamic rumble filter is to remove the low level rumble without affecting the sound when the music is playing.

In some cases it may be desirable to use both a dynamic rumble filter and a conventional high-pass filter. A conventional high-pass filter can deal effectively with very low sub-sonic frequencies in the range of 20Hz to DC, while the dynamic filter handles rumble above this range.

The noise gate that I posted earlier may be used as a dynamic filter and provide the desired functionality. I don’t think that it is an ideal solution, but since it looks promising and there appears to be some interest I’ll do another version of it that is specifically designed for this purpose.

Nyquist is also capable of this, however I would expect that dynamically adjusting the frequency/slope of the filter would be less effective than dynamically adjusting the gain at a set frequency. Implementation is also a bit more complicated. If you can make/find a dynamic rumble filter that works this way we can compare their effectiveness and ease of use.

For a straight high-pass filter - just use the one that is included in Audacity.
For a VST dynamic rumble filter you could use a multi-band dynamic processor. You need one that enables you to apply downward expansion to low frequencies.

I’ll post my new dynamic rumble filter here shortly. It will probably need a bit of tweaking for optimum performance, so I hope you guys/gals will be able to give some feedback on its effectiveness.

Here’s an example of standard HP filter which can be used for to filter those rumble/subsonic frequencies. Anyone can prepare it quite quickly. It’s a VST implementation in question.

First, what you need:

  1. SynthEdit - http://www.synthedit.com/

  2. Christian Budde’s Butterworth LP & HP filter modules (up to 64th order = 384dB/Oct) and/or Chebyshev LP & HP Filter modules (up to 32th order = 192dB/Oct) made for SynthEdit - http://www.savioursofsoul.de/Christian/?page_id=442

    Here’s an example which I did once for testing purposes:

Connection diagram in SE:

When ready, just select “Save as VST” and then the plug-in is ready to use.

It’s also possible to measure these VST plug-ins using Christian Budde’s VST Analyzer - http://www.savioursofsoul.de/Christian/?page_id=106

Some measures (not rumble situation but something else):

http://jiiteepee.fortunecity.com/tests/HP/simple_HP_filter_test.html (big page)


Cool - but that’s just a HP filter isn’t it? Can you make it dynamic?

BTW, if you want a steeper slope than 48dB per octave, then with the standard Audacity HP filter, you can simply use the the effect twice (set to 48dB per octave) and achieve a 96dB per octave slope.
The same can be done using Nyquist code:

(setq freq 100)
(highpass8 (highpass8 s freq) freq)

This can be entered in the “Nyquist Prompt” box from the Effects menu.
This example has a corner frequency of 100Hz - just change the “100” to whatever frequency is required and you have a 96dB per octave high pass filter.
The above code will only work for mono tracks in Audacity 1.3.7 and earlier. In Audacity 1.3.8 and later it works for mono or stereo.

The technique exploited here is the masking of turntable rumble frequencies during loud bass passages, and only controlling the frequencies you need, to reduce audible turntable rumble during quiet bass passages.

A 10db reduction is probably all you need from a good turntable.

My tests don’t confirm this. Setting “Gate Frequencies Above: 20Hz” actually seems to leave the frequencies below 20 Hz alone!

I modified your code as follows:

;control Lofreq "Gate frequencies above" real "Hz" 1 1 200
;control Hifreq "Gate frequencies below" real "Hz" 20 1 200
;control level-red "Level reduction" real "dB" -20 -96 0
;control thresh "Gate threshold" real "dB" -35 -96 -6
;control attack "Attack/Decay" real "milliseconds" 50 10 1000

and with those default settings it seems very effective a removing vinyl/turntable rumble without affecting the music.

I have before and after screenshots of the audio waveform, and before and after spectra if people are interested.

– Bill

Before we get too throw-uppy over 96dB slope filters, I’m expecting them to actually sound terrible. The spectra analysis may look swell, but suddenly eliminating spectra like that is always fraught with problems.

Two places filters really got a workout are FM broadcasting and Music CDs. FM Stereo broadcasting has music surviving at 17 KHz, but the pilot frequency is 19KHz where the music had to be at least 40dB down. Quick, how many dB per octave is that? Too many. The early machines never worked particularly well.

Closer to home is the nyquist value of 2.6 which on a Music CD with a sampling of 44100, means the highest musical tone you can ever get without extensive tricks is 17KHz. Not 20 KHz. To simulate audio response to 20 KHz, many filters and tricks were used, leading to many people claiming they could hear problems. That’s because there were problems.

Classically, the Chebyshev filter could achieve quite nice steep slopes and deep troughs, but was never flat. It always had lumps and bumps in the passband and the reject band as well. It didn’t sound particularly good, but it worked for eliminating certain frequencies if you weren’t too particular about the rest of the performance.

Butterworth had the nice smooth curves that tended to sound really good, but you couldn’t get the sharp curves and slopes. The concept exercise is what happens if there is no limit to the number of poles…

There is a third family of filters which includes phase compensation. Complex filters don’t just attenuate certain signals, it makes them late, too. If you look at high-end audio specifications, they include phase numbers as well as frequency. A Crown D75 amplifier produces 20 KHz some 13 degrees later than it went in compared to 1000Hz.

Differences between violins doesn’t always show up on a spectrum display, certain overtones are earlier and later, but they don’t change size.

I wonder where the energy goes when you chop off the low end like that. All this is assuming that the rumble is a sine wave, too. Anybody do a blank track analysis?


Sorry guys, although I’m not concern with this issue…

From mastering points of view, rarely use too steep filters for music. With gate is not all the more. It’ll alter the tone in the rest of sound.
Original filter of the amp must have analog 1 or 2 pole’s one and be used as the “insertion” to keep turntable from resonance, not an effector for recorded track. This is quite different.

I looked at that plugin’s code, it might use 8 pole and unusual envelope of naked command. Theoretically you can built any effector. But practical and adjusted one is other problem. If you want just remove noise or massive bass on recorded tracks (of course not as insertion, I’m sure you didn’t do that), decent filtering or equalizing on whole track or gate compressor maybe be better choice for the musical track, because cutting particular frequencies is not simple add and reduce math (if you interested see Gale Andrews’ post on FFT in this section).

Sorry but I’m totally lost in the output sound image you all intended to. Without the image I couldn’t implement or create effectors, I mean sound not visual of spectrum… (If you intend that to talking or podcast my post is totally irrelevant).

A bit slow on the ball (been busy with another little project), but looks like the discussion here has been warming up nicely :smiley:

Koz can always be relied upon for the picturesque turn of phrase to brighten up the day :smiley:
The 96dB filter was more of a joke really, but surprisingly it doesn’t sound at all bad so long as there are no pops near the cut off frequency. The nice thing about digital filters is that you can have as many poles as you like, though cascading filters is not ideal as they tend to go a bit wobbly in the pass band. The major problems (and I’d be very interested to know if there are any ways to avoid these) are, resonance near the corner frequency, and as Koz pointed out, phase shift.

40dB over - what is that, about 2 semitones? No I’m not surprised the early machines didn’t work terribly well.

Which assumes that you can get resistors and capacitors with fantastically tight tolerances.

As you say, the plug-in is not ideal for this application, but it wasn’t originally designed for such. Although it has a theoretically very steep slope (48dB/octave), when used to drop the level by a few dB it never gets anywhere near 48dB/octave and the phase shift remains relatively small. As a noise gate (which is what it was designed for) it works rather well and in my tests has produced considerably more “musical” results than many noise gates.

I was hoping to have an effective dynamic rumble filter knocked up quite quickly, but I’d overlooked the effect that any low frequency thumps might have. On the other hand, just a simple high-pass filter should be reasonably effective, and Audacity already has that.

If you honestly believe you need 8pole, i.e. 48dB/oct, you can adjust “release” much more than decay. Good luck.

I tried the other type of “dynamic” implementation, which I suggested (change filter corner frequency ‘on-the-fly’). It was just a quick try-out solution checked in my RIAA EQ filter software done using Max/MSP so, not the best possible implementation you could do inside Max/MSP.

How I did it …

  • prepared six 6dB/oct@30Hz HP filters/channel and, put them in series (cascaded)
  • the master output levels (in dB range) is copied and divided by six (min=1, max=6) to get multiplier for a pre set frequency (5Hz, which also is the abs minimum: levels 0dB - -10dB = 1 → 5Hz, -15dB = 2 → 10Hz, …, -40dB = 6 → 30Hz) … . Q was set to 0.707 and filter gain is always 1.0.

Tried also the other method I suggested (change of filter order ‘on-the-fly’) … it worked as well but, Max/MSP wasn’t very stabile with it running.

Max/MSP has a peek() function which could be used for to look if there are passages on certain low frequancy area … I just didn’t went that far because of, I don’t see the point why rumble filter should be dynamic …

The effect of this implementation I tested can be seen on these pictures (music sample):