FFAB is a free, open-source, cross-platform, complex audio batch processor, effects rack, command builder & graphical user interface for the glorious FFmpeg.
But only the sound related stuff.
FFAB is for musicians, sound engineers, media archivists, sonic artists, mental experimentalists, or anyone curious enough to collide thousands of files together into one hot mess.
FFAB will also do video pass through i.e: import video files, fix the audio, don't touch the video, and save.
←
→
DOWNLOADS
macOS 12+
Linux x86
Linux ARM
Some versions of Linux may require launching FFAB via Terminal command, to enable audio previews:GST_PLUGIN_SYSTEM_PATH=/usr/lib/$(uname -m)-linux-gnu/gstreamer-1.0 ./FFAB*.AppImage
FFAB Overview
FFAB is a GUI wrapper for FFmpeg that makes designing complex audio filter chains easily accessible to non-command-line users. Real-time preview. Drag & drop filters. Parallel processing, the works.

Native dark mode...
FFAB creates and processes complex FFmpeg filter chain commands without embedding FFmpeg code: FFAB locates & and calls the user's locally installed FFmpeg binary (version 8).

...and psyochpath mode.
FFAB also simplifies the process of installing FFmpeg and companion tools FFplay & FFprobe. The latest static version is fetched from an official distribution source, FFAB verifies the download (SHA-256 / MD5 sums), and installs to an easily accessible path.

FFAB will install FFmpeg, if you need it...

Audio analysis filters now available...
App Architecture
Visual Filter Chain Builder
Drag-and-drop filter ordering with vertical "effects rack" design
Sidechain Audio Inputs & Aux Outputs
Load sidechain files, convolution IRs, save outputs to multiple formats simultaneously
Real-time Preview
Generate fast audio previews with waveform visualization; scrubbing playhead & playback region select
Batch Processing
Process multiple File Lists with 7 different batch algorithms
Video Passthrough
Input video files – add audio-only effects – then combine the revised audio with the original quality, untouched video
Preset System
Save/load complete processing states including filter chains filter parameters, input file lists (optional), and output format settings
FFmpeg Audio Filters
Almost all standard filters, including analysis & advanced utility filters, are included in the UI
Command Line Integration
Build FFmpeg commands to process in FFAB, or copy & paste complete commands directly to the Terminal

Copy & paste FFAB's FFmpeg command output directly into the terminal
Filter Chain Overview
Clutter free UI: Filter Chain displayed on the left, currently selected filter parameters displayed on the right.

Overview of the FFAB user interface
Familiar DAW / digital mixing console style effects rack: File INPUT settings at the top, file OUTPUT settings at the bottom, drag & drop inserts & AUX sends in the middle.

Typical filter insert controls
Every filter insert shares a similar UI design... With regards the image above, from left to right:
HexID Label
Sequentially generated ID label, aids matching UI to streams within an FFmpeg Command
Move Up / Move Down Buttons
Arrange filter order via these buttons, or drag & drop
Mute / Solo Toggle Switches
Mixer style bypass / isolate switches, individually or in groups
Delete Button
Remove filter from the effects chain; ALT+click to skip delete dialogs
Custom Output Enable
Advanced: Bypass the hardcoded audio stream; for use with the Custom FFmpeg filter or similar
Audio Filters
FFmpeg ships with 120+ audio related filters and FFAB has managed to incorporate most of them. A few more esoteric filters will appear in future updates.
FFAB also groups a few filters together into logical blocks, for example: Convolution IR contains Afir (the IR reverb filter) + Apad (generates blank space to allow reverb tails) + Amix (to enable wet/dry control). Or, Asplit (create duplicate audio streams) + custom Sub-chain logic + Amix (sum multiple streams back together again) allow for parallel processing. All of these helpers can be disabled or ignored entirely.
Some of FFmpeg's default filters include...
Sidechain Input
Convolution IR (reverb), Compressor, Gate, Merge, Mix, Crossfade
Dynamics
Compressor, Limiter, Gate, De-esser, Loudness Norm, Dialogue Enhance
EQ & Filters
Channel EQ, Parametric EQ, High/Low/Band/Notch Filters, Shelving filters, Tilt EQ, 18-Band EQ
Harmonics
Soft Clipper, Bit Crusher, Psychoacoustic Clipper, Crystalizer
Modulation
Chorus, Flanger, Phaser, Tremolo, Vibrato
Stereo & Spatial
Channel Splitter, Widener, M/S & Stereo Tools, Crossfeed, SOFA Spatializer, Surround Upmix
Time & Pitch
Rubberband, Loop, Trim, Fade, Echo, Tempo, Delay
Restoration
FFT Denoise, Declick, Declip, DC Shift
Utility
Volume, Resample, Silence Remove, HDCD Decoder, Set Rate
Analysis
Waveform Image, Volume Detect, DR Meter, ReplayGain, Audio Stats, Silence Detect
FFAB Routing & I/O
Sidechain Input, Aux Output, Audio Split, Smart Aux Return
Input / Output
Input Formats
WAV, MP3, FLAC, AIFF, M4A, OGG, Opus, WMA, AAC... any audio format included with FFmpeg
Output Formats
WAV, AIFF, FLAC, MP3, AAC, OGG, Opus... any audio format included with FFmpeg
Video Passthrough
Batch process movie files, filter the audio, then re-combined with original video, no transcode or quality loss
Sample Rates
8kHz ~ 192kHz (384kHz untested)
Bit Depths
8-bit, 10-bit, 12-bit, 16-bit, 24-bit, 32-bit (64-bit untested)
Metadata Extraction
- Format (file extension)
- Duration (HH:MM:SS)
- Sample Rate (Hz)
- Bit Depth
- Channels (mono, stereo, surround)
- Bitrate (kbps)
View Log & Log File
From the Settings panel, configure the Log Level and Log File options. Logging is useful for debugging FFmpeg issues, or capturing analysis data from Astats etc.

Real-time preview of FFmpeg log data

Choose the amount of logging you need...

... and where to save the log data
Audio Previews
Instant audio preview of FFmpeg filter chains, plus a helpful waveform image and scrub playhead. Highlight any audio file in the Main File List, click [Generate Preview] in either the main app window or from within the larger pop-out Audio Preview window, then press [Play].
Or, lean into the key command combo of [↑/↓] in the File List, [←] to generate preview files then [→] to play audio.

The Generate Preview widget
The pop-out Audio Preview window is resizable and provides precise tools to highlight a specific audio region – say, a more representative section of the audio to be auditioned. This is helpful when handling long duration files (podcast dialog, archive recordings etc).

The resizable Audio Preview pop-out
- Waveform visualization: Visual representation of audio
- Click-to-seek: Click waveform to jump to position
- Drag-to-scrub: Drag playhead for precise positioning
- Audio Preview Window: Expanded view for detailed scrubbing
- Region selection: ALT+drag to select region for focused playback
- Region move: SHIFT+drag to reposition region
- Time display: Current position and total duration
Batch Processing Modes
The underlying concept of FFAB is fast and painless audio batch processing, either for utility or purely creative reasons.
Before explaining FFAB's batch algorithms, be aware that FFAB can also be configured to launch as many instances of FFmpeg that your CPU will handle!

Launch 100x FFmpeg instances? Sure!
#1 Sequential
Apply chain to every file: N → N

Batch Algorithm #1: Sequential
Use Cases:
- Convert a folder of 24/96k AIFF → FLAC & MP3 & 16/44k WAV all in one pass
- Normalize dialog on 100+ raw video files without transcoding video
- Apply EQ, Compression, DC Offset, noise reduction on 1000+ audio files
#2 Iterate
Feedback R times with gain reduction: N × R

Batch Algorithm #2: Iterate / Photocopy
Use Cases:
- Photocopy of a photocopy of a photocopy...
- Sound design, digital degredation analysis, feedback loops
- Get creative!
#3 Zip
1:1 pairing of main + aux files: min(M,A)

Batch Algorithm #3: Zip / Pairing
Use Cases:
- Input two folders: 001-mono-L.wav + 001-mono-R.wav → 001-stereo.wav
- Insert custom audio soundbites on a per-file basis
- Complex 5.1 or multichannel audio tasks
#4 Broadcast Fixed
Single aux applied to all main files: N

Batch Algorithm #4: Broadcast Fixed
Use Cases:
- Watermark a folder of audio files with one ident
- Demo one IR reverb against many audio files
- Duck one background music file below numerous dialog files
#5 Broadcast Random
Random aux per main file: N

Batch Algorithm #5: Broadcast Random
Use Cases:
- Combine random background foley
- Sound design, inspiration generator
- Embrace chaos...
#6 Cartesian
Every main × every aux combination: N × M

Batch Algorithm #6: Cartesian / one to many
Use Cases:
- Test 100+ IR Impulse Response files against one test signal
- Generative music: Create random generative algos
- Sound design: Mash up your sample library
#7 Cartesian Triple
Three-way product: N × M × P

Batch Algorithm #7: Cartesian / many to many (too many!)...

... fills up disk storage in no time
Use Cases:
- Combine a few source files → new unique library
- Inspiration, generative audio, sound design
- Combine drums hits with timing & trim to generate new loops
- We do it because we can, not because we know why
Batch Processing Features
- Pause/Resume functionality
- Cancel with cleanup
- Per-file & intra-file progress bars
- Process time elapsed / remaining
- Success / failure counts
- Total batch disk size estimation vs. disk space available
- Multiple confirmation dialogs for mathematically large batches
Special Filters
Audio Input / Sidechain Filter

The Audio Input filter mimics the Main INPUT File List
- Dedicated file list per instance
- Add File(s) / Add Folder / Clear List
- Metadata scanning toggle or Rescan after import
- Run multiple instances for complex setups
Audio Split (asplit)

Parallel audio streams, Thru + 7 (8 in total), with auto-summing back into the main audio stream

Parallel filter Sub-chains are almost identical to the Main Filter Chain
- Up to 8 parallel streams
- Sub-chain support for each stream
- Separate mute/solo per stream
- Aux output per stream
- Advanced: Nested Asplit possible
Aux Output Filter

Output as many concurrent file formats as FFmpeg & your storage disk can handle

Uncompressed, Lossless, Compressed, plus Advanced via custom "-c:a" strings
- Branch audio to separate output file
- Automatic naming for batch processing
- Continue main chain after branch
Smart Aux Return

FFAB's auto-amix gathers up all loose ends
- Automatic summing of unconnected filter outputs
- Position-based stream detection
- "Funnel all from above" capture logic
Custom FFmpeg Filter

Feeling keen? Miss the terminal? Type away...
- Raw FFmpeg command entry
- For advanced/experimental filters
- Rapid filter chain prototyping
- Use hardcoded audio routing or breakout to custom streams
UI Overview
Main Window Layout
- Left Panel: Filter chain with effects rack design
- Right Panel: Context-sensitive settings (input/filter/output)
- Bottom: Waveform preview with transport controls
Additional Windows
- View Command: Raw FFmpeg command string, optional syntax highlighting
- View Log: FFmpeg and analysis / stderr output window and also save file
- Audio Preview: Pop-out & extended version of the Generate Preview player
- Batch Settings: Comprehensive process controls & output verification
Visual Indicators
- Color-coded Filter IDs: Unique HSL colors & hexidecimal labels per filter
- FFmpeg Status LED: Green when available, red when missing
- Progress bars: Per-file progress, intra-file progress; depending on process
- Orange playhead: Current position on waveform
Theme Support
- Automatic light/dark mode detection
- Theme-aware waveform and UI elements
Preset System
Save Options
- Save (Cmd+S) - Quick save to current preset
- Save As (Cmd+Shift+S) - Save with new name
- Save File Lists checkbox - Optionally include input file paths
Load Features
- Restore complete state (filters, parameters, settings)
- Mute/Solo state restoration
- Missing files detection and report generation
- Default preset location: ~/Documents/FFAB/Presets
Keyboard Shortcuts
[`] or [A]
Add Filter menu
[↑/↓]
File List navigate
[←]
Generate preview
[Space] or [→]
Play/stop preview
Cmd+[N]
New document
Cmd+[O]
Open preset
Cmd+[S]
Save preset
Cmd+Shift+[S]
Save As
[\]
Toggle formatting
Audio Preview Shortcuts
ALT+Click+Drag
Select region
ALT+Click
Clear region
SHIFT+Drag
Move region
Click
Seek and play
Installation Info
macOS
Universal / Monterey+
Linux
x86 & ARM / Ubuntu 24
Windows
10+
Contact me (email below) if you are willing to build & test for the Windows community. Must have prior Qt 6.7.3 / windeployqt experience.
DOWNLOADS
macOS 12+
Linux x86
Linux ARM
FFAB.app is now notarized by Apple, Gatekeeper should no longer be an issue. Workaround pasted below just in case: Right-click FFAB.app → Open, then confirm; or run the following Terminal command to bypass macOS Gatekeeper:xattr -cr /Applications/FFAB.app
Some versions of Linux may require launching FFAB via Terminal command, to enable audio previews:GST_PLUGIN_SYSTEM_PATH=/usr/lib/$(uname -m)-linux-gnu/gstreamer-1.0 ./FFAB*.AppImage