Remove Background Noise from Audio with ffmpeg afftdn

Clean constant hiss, hum, or fan noise out of a recording using ffmpeg's FFT denoise filter, in one command.

Linuxaudionoise-reductionffmpegLow risk
Run ffmpeg -i noisy.wav -af "afftdn=nf=-25" clean.wav to denoise and re-encode the audio.

01Command

Command
$ ffmpeg -i noisy.wav -af "afftdn=nf=-25" clean.wav

02What it does

afftdn is ffmpeg's built-in FFT-based denoiser: it estimates the noise floor and suppresses the steady components below it. The nf value (in dB, around -20 to -35) sets how aggressively noise is cut — start at -25 and adjust: more negative means stronger reduction but can make voices sound underwater. It works best on constant noise (fans, hiss, mains hum), not on babble or music, and you can chain it with -af "highpass=f=80,afftdn=nf=-25" to also remove rumble.

03Risk

RiskLow risk
Requirementsffmpeg (sudo apt install ffmpeg)
!Warning: Over-aggressive denoising produces metallic, watery artifacts on speech — keep the original file and compare before committing, and never run denoising twice on the same audio.

04Undo

✓No undo needed — this command does not change persistent state.

05Sources

Last verified: 2026-09-18 · Category: Media