Configure FFmpeg Highpass Cutoff Frequency and Poles
This article explains how to configure the cutoff frequency and
filter poles in the FFmpeg highpass audio filter. You will
learn the correct command-line syntax, parameter options, and practical
examples to successfully roll off low-frequency noise from your audio
files.
The FFmpeg highpass filter is used to attenuate
low-frequency audio signals below a specified threshold while letting
higher frequencies pass through. To configure this filter, you modify
two primary parameters: frequency (or f) and
poles (or p).
The Highpass Parameters
- frequency (f): Sets the cutoff frequency in Hertz
(Hz). Audio frequencies below this value are attenuated. The default
value is
3000Hz. - poles (p): Sets the number of filter poles, which
dictates the steepness of the attenuation slope (roll-off). FFmpeg
supports either
1or2poles. The default value is2.- 1 Pole: Creates a gentler slope (6 dB per octave).
- 2 Poles: Creates a steeper slope (12 dB per octave), providing more aggressive attenuation of frequencies below the cutoff.
Command Syntax
The basic structure for applying the filter in your command line is:
ffmpeg -i input.mp3 -af "highpass=f=cutoff_value:p=pole_value" output.mp3Practical Examples
1. Set a standard cutoff frequency To cut out rumbling bass or low-end hum below 150 Hz using the default 2-pole setting:
ffmpeg -i input.wav -af "highpass=f=150" output.wav2. Configure a gentle roll-off To apply a gentler
roll-off at 200 Hz, configure the filter to use a single pole
(p=1):
ffmpeg -i input.wav -af "highpass=f=200:p=1" output.wav3. Configure a steep roll-off for vocal clarity To
apply a steep, aggressive cut at 80 Hz to clean up a voice recording,
use two poles (p=2):
ffmpeg -i input.wav -af "highpass=f=80:p=2" output.wav