Nodes/MD Nodes/MD: Mastering EQ
ComfyUI Node

MD: Mastering EQ

Filters, shelves, and four parametric bands

By MDMAchine·Created about a year ago·Updated 3 months ago· 15
MD: Mastering EQ
  • audio
  • AUDIO
sample_rate44100
enable_lowpassfalse
lowpass_freq18000.00
lowpass_order4
enable_highpassfalse
highpass_freq20.00
highpass_order4
eq_high_shelf_gain_db0.00
eq_high_shelf_freq12000.00
enable_low_shelf_eqfalse
eq_low_shelf_gain_db0.00
eq_low_shelf_freq75.00
enable_param_eq1false
param_eq1_gain_db0.00
param_eq1_freq55.00
param_eq1_q2.00
enable_param_eq2false
param_eq2_gain_db0.00
param_eq2_freq125.00
param_eq2_q2.00
enable_param_eq3false
param_eq3_gain_db0.00
param_eq3_freq1250.00
param_eq3_q1.00
enable_param_eq4false
param_eq4_gain_db0.00
param_eq4_freq5000.00
param_eq4_q1.00

If your AI-generated audio sounds muddy, harsh, or boomy, the fastest fix is EQ - and MD_Mastering_EQ is a proper mastering EQ built as a ComfyUI node. It covers the full toolkit: a lowpass and highpass for cleaning the extremes, high and low shelves for tonal shaping, and four parametric bell filters for surgical work. It's the second stage in the MD mastering chain (after gain, before compression), and it's where you spend most of your "why does this sound bad" time.

This is one of the nodes you'll actually reach for rather than just admiring. The README positions these audio tools as making AI audio "broadcast-ready," and honestly, a simple highpass is the single highest-value fix for most AI music - these models love to dump useless sub-bass energy that eats headroom and muddies everything.

How it works

The node is a wrapper around a DSP core that processes the waveform in-place. Each filter is individually enabled, so you build a chain out of only what you need: two Butterworth-style filters (lowpass/highpass) with adjustable order for the slope, two shelves for broad tonal balance, and four parametric bands with gain, frequency, and Q. Filters are processed in order on the audio samples, and the result comes out as a new AUDIO dict with the sample rate preserved.

The inputs that matter

  • enable_highpass / highpass_freq - the big one. Cut everything below 20–40 Hz on AI music and you instantly get cleaner low end and more headroom. Order sets the slope steepness.
  • enable_lowpass / lowpass_freq - kills harshness and aliasing up top; 18 kHz is a safe de-esser for gritty AI output.
  • eq_high_shelf_gain_db / enable_low_shelf_eq - broad brightness or warmth. A gentle +1 to +2 dB high shelf is the classic "AI audio sounds dull" cure; a low shelf cut tames boominess.
  • enable_param_eq1–4 - the surgical bands. Each has gain (-24 to +24 dB), frequency, and Q. Use them for the specific resonant frequency your model loves to repeat, not for broad moves.

Each band is off by default, so an untouched node is a pass-through - safe to drop into a chain before you've dialed anything in. Output is a single AUDIO to continue the chain.

Installing

Part of MD Nodes; install once, use across the pack:

cd path/to/ComfyUI/custom_nodes
git clone https://github.com/MDMAchine/ComfyUI_MD_Nodes.git
cd ComfyUI_MD_Nodes
pip install -r requirements.txt

Or ComfyUI Manager → MD Nodes → install → restart. The EQ DSP ships in the pack's core; the requirements file's audio libraries (soundfile, librosa) back the surrounding load/save nodes.

Common issues

Two mistakes to avoid. First: don't stack broadband cuts - one good highpass plus one gentle shelf beats five bands fighting each other. Second, remember this EQ has no safety on the output; a +24 dB parametric band on something already loud is clipping waiting to happen. If you're working blind, put a limiter or LUFS check downstream (the same pack has both) rather than boosting and hoping. And if your audio is fine in the low-mids but consistently harsh, check whether your VAE decode is aliasing before you blame the mix - that's a latent-side problem, not an EQ problem.

CategoryMD_Nodes/Audio Processing

Inputs (29)

NameTypeDefaultDescription
audioAUDIOAUDIO INPUT
sample_rateINT441008000–192000SAMPLE RATE • Purpose: Fallback sample rate if not provided by audio dict.
enable_lowpassBOOLEANfalseENABLE LOWPASS
lowpass_freqFLOAT18000.0020–22000LOWPASS FREQ
lowpass_orderINT41–8LOWPASS SLOPE
enable_highpassBOOLEANfalseENABLE HIGHPASS
highpass_freqFLOAT20.0010–1000HIGHPASS FREQ
highpass_orderINT41–8HIGHPASS SLOPE
eq_high_shelf_gain_dbFLOAT0.00-24–24HIGH SHELF GAIN
eq_high_shelf_freqFLOAT12000.001000–22000HIGH SHELF FREQ
enable_low_shelf_eqBOOLEANfalseENABLE LOW SHELF
eq_low_shelf_gain_dbFLOAT0.00-24–24LOW SHELF GAIN
eq_low_shelf_freqFLOAT75.0020–1000LOW SHELF FREQ
enable_param_eq1BOOLEANfalseENABLE BAND 1
param_eq1_gain_dbFLOAT0.00-24–24
param_eq1_freqFLOAT55.0020–22000
param_eq1_qFLOAT2.000.1–10
enable_param_eq2BOOLEANfalseENABLE BAND 2
param_eq2_gain_dbFLOAT0.00-24–24
param_eq2_freqFLOAT125.0020–22000
param_eq2_qFLOAT2.000.1–10
enable_param_eq3BOOLEANfalseENABLE BAND 3
param_eq3_gain_dbFLOAT0.00-24–24
param_eq3_freqFLOAT1250.0020–22000
param_eq3_qFLOAT1.000.1–10
enable_param_eq4BOOLEANfalseENABLE BAND 4
param_eq4_gain_dbFLOAT0.00-24–24
param_eq4_freqFLOAT5000.0020–22000
param_eq4_qFLOAT1.000.1–10

Outputs (1)

NameTypeDescription
AUDIOAUDIO