Apply Graphic EQ with FFmpeg Superequalizer
This article explains how to use the superequalizer
audio filter in FFmpeg to adjust specific frequency bands of an audio
file. You will learn the command syntax, the mapping of the 18 frequency
bands, and practical examples for boosting bass or treble to customize
your audio output.
The superequalizer is an 18-band graphic equalizer tool
implemented as an audio filter in FFmpeg. Unlike the standard
equalizer filter, which only targets one frequency at a
time, superequalizer allows you to adjust 18 fixed
frequency bands simultaneously using a single command.
The 18 Frequency Bands
Each band is represented by a parameter from 1b to
18b. The frequencies correspond to the following bands:
- 1b: 65 Hz
- 2b: 92 Hz
- 3b: 130 Hz
- 4b: 184 Hz
- 5b: 260 Hz
- 6b: 370 Hz
- 7b: 520 Hz
- 8b: 730 Hz
- 9b: 1030 Hz
- 10b: 1450 Hz
- 11b: 2050 Hz
- 12b: 2900 Hz
- 13b: 4100 Hz
- 14b: 5800 Hz
- 15b: 8200 Hz
- 16b: 11500 Hz
- 17b: 16300 Hz
- 18b: 23000 Hz
Understanding the Filter Parameters
Each band parameter accepts a float value ranging from
0.0 to 20.0. * 1.0 is the
default value, representing unity gain (no change to the audio). *
Values between 0.0 and 1.0 attenuate (cut) the
frequency. For example, 0.0 completely silences the band. *
Values greater than 1.0 amplify (boost) the frequency.
For example, 2.0 doubles the signal level of that band.
Basic Command Syntax
To apply the filter, use the -af (audio filter) flag
followed by superequalizer and your desired band values
separated by colons:
ffmpeg -i input.mp3 -af "superequalizer=1b=1.5:2b=1.5:17b=2.0:18b=2.0" output.mp3In this command, any band not explicitly defined remains at the
default value of 1.0.
Practical Examples
1. Bass Boost To boost the low-end frequencies (65 Hz to 184 Hz), increase the values of the first four bands:
ffmpeg -i input.wav -af "superequalizer=1b=2.5:2b=2.2:3b=1.8:4b=1.5" output.wav2. Treble Boost To make the audio sound brighter, boost the high-end frequencies (8200 Hz to 23000 Hz):
ffmpeg -i input.wav -af "superequalizer=15b=1.5:16b=2.0:17b=2.5:18b=2.5" output.wav3. Vocal/Mid-Range Cut To reduce mid-range frequencies (often useful to reduce harshness in vocals around 1 kHz to 2 kHz):
ffmpeg -i input.wav -af "superequalizer=9b=0.5:10b=0.5:11b=0.6" output.wav