FFmpeg Subharmonic Synthesizer to Boost Low Bass

This article explains how to use FFmpeg’s built-in sub-harmonic generator filter (asubgenerator) to synthesize low-frequency harmonics and boost the low-end bass of any audio track. You will learn the exact command-line syntax and how to adjust the filter’s parameters—such as cutoff frequency, wet/dry mix, and decay—to achieve a deep, clean bass response without distorting your audio.

The FFmpeg Subharmonic Filter

To generate artificial subharmonics in FFmpeg, you use the asubgenerator audio filter. Unlike a standard equalizer (EQ) that simply boosts existing frequencies, a sub-harmonic synthesizer analyzes the lower range of your audio and generates new frequencies an octave lower, adding weight and depth to tracks that lack low-end presence.

Basic Command

The simplest way to apply the subharmonic generator with default settings is by using the following command:

ffmpeg -i input.mp3 -af asubgenerator output.mp3

Advanced Parameter Tuning

To customize how the bass is synthesized, you can pass specific parameters to the asubgenerator filter using the format asubgenerator=parameter1=value1:parameter2=value2.

Here are the key parameters you can adjust:

Practical Example

To target frequencies below 70 Hz, heavily boost the synthesized subharmonics, and keep the original signal intact, run this command:

ffmpeg -i input.wav -af "asubgenerator=frequency=70:bass=1.8:wet=1.5:dry=1.0" output.wav

Preventing Audio Clipping

Synthesizing deep bass increases the overall volume of your track, which can lead to digital clipping (distortion). To prevent this, it is recommended to chain the volume filter or a limiter after the subharmonic generator to lower the overall output level safely:

ffmpeg -i input.wav -af "asubgenerator=frequency=65:bass=1.5,volume=-3dB" output.wav