How to Boost Sub-Bass in FFmpeg with asubboost
The asubboost filter in FFmpeg allows you to isolate,
synthesize, and enhance deep low-end frequencies in an audio track. This
guide explains how to use the filter to amplify sub-bass, details its
core configuration parameters—such as cutoff frequency, wet/dry mix, and
feedback—and provides command-line examples to achieve clean, punchy low
frequencies without audio clipping.
Understanding the asubboost Filter
The asubboost filter operates by filtering out low-end
audio below a specified frequency, processing that isolated signal to
add resonance, sustain, or volume, and then blending it back with the
original audio.
The filter accepts several key parameters:
cutoff: Sets the cutoff frequency in Hertz (Hz) below which the bass will be boosted. The valid range is 2 to 300 Hz (default is100).wet: Sets the volume factor for the boosted sub-bass signal. The range is 0 to 1 (default is1).dry: Sets the volume factor for the original, unprocessed signal. The range is 0 to 1 (default is1).decay: Controls the decay rate of the boosted signal, determining how long the sub-bass sustains. The range is 0 to 1 (default is0).feedback: Controls the resonance or amount of signal fed back into the filter. The range is 0 to 1 (default is0.9).delay: Sets the delay time in milliseconds for the resonance effect. The range is 1 to 100 ms (default is20).slope: Sets the filter slope steepness. The range is 0.0001 to 1 (default is0.5).
Basic Usage Example
To apply the filter with default settings to an audio file:
ffmpeg -i input.mp3 -af "asubboost" -c:a libmp3lame -q:a 2 output.mp3Customizing Sub-Bass Parameters
In many cases, the default settings may sound too boomy or cause distortion. You can customize the parameters by chaining key-value pairs separated by colons.
For example, to focus strictly on sub-bass below 80 Hz, lower the feedback to prevent excessive ringing, and balance the wet signal:
ffmpeg -i input.wav -af "asubboost=cutoff=80:feedback=0.5:wet=0.7:dry=1.0" output.wavPreventing Clipping and Distortion
Boosting sub-bass frequencies increases overall signal amplitude,
often leading to digital clipping. To maintain clear sound, pair
asubboost with a limiter like alimiter or
slightly reduce the input volume:
ffmpeg -i input.wav -af "asubboost=cutoff=60:wet=0.8,alimiter=limit=0.95" output.wavIn this command:
asubboostisolates and enhances frequencies below 60 Hz.alimitercatches any peaks exceeding -0.45 dB (0.95), preventing distortion on playback systems.