Remove Subsonic Frequencies with FFmpeg asupercut

This article explains how to use FFmpeg’s asupercut audio filter to eliminate unwanted subsonic frequencies from your audio files. You will learn the basic command syntax, key parameters like cutoff frequency and filter order, and practical examples to clean up low-frequency rumble in your audio production workflow.

The asupercut filter is a specialized high-pass filter designed to remove subsonic frequencies—typically those below the threshold of human hearing (around 20 Hz). Removing these frequencies is crucial because they can consume valuable dynamic range (headroom) and cause speaker strain without contributing to the audible quality of the audio track.

Basic Syntax

To apply the asupercut filter with its default settings, use the following basic FFmpeg command:

ffmpeg -i input.wav -af "asupercut" output.wav

By default, this command applies a steep high-pass cut at 20 Hz, effectively removing the lowest subsonic rumble.

Adjusting Parameters

The asupercut filter allows you to customize the cutoff frequency and the steepness of the filter using specific parameters:

Practical Examples

Example 1: Custom Cutoff Frequency If you want to raise the cutoff to 30 Hz to clean up vocal tracks or podcasts where low-end rumble is more prominent:

ffmpeg -i input.wav -af "asupercut=cutoff=30" output.wav

Example 2: Custom Cutoff and Steepness (Order) To apply a 25 Hz cutoff with a steeper slope (higher order) for a more precise cut, use the following configuration:

ffmpeg -i input.wav -af "asupercut=cutoff=25:order=16" output.wav

Why Use asupercut Over Standard highpass?

While FFmpeg’s standard highpass filter is highly versatile, asupercut is specifically optimized to target the subsonic spectrum with minimal phase distortion in the audible bass frequencies. It provides a quick, specialized solution for cleaning up master tracks, field recordings, and podcasts without requiring complex multi-band equalization setup.