(⊙෴☉)
The Infinite Album
EPK EMAIL
FFAB
FFmpeg Audio Batch
Current Version: 1.0.3 | 2026-02-25

FFAB is a 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.

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
NEWS

FFAB should no longer be affected by macOS Gatekeeper issues, the app is now notarized by Apple, so it should run without any warning messages or errors.

And FFAB is no longer public beta! Thanks to everyone who helped troubleshoot issues. Stable version 1.0 available now.

Version 1.0 now available...

FFAB's audio routing logic has been completely redone for v1.0... what began a few months ago as 'conditional soup' is now a fully structured DAG aka Directed Acyclic Graph. Which means some pretty cool UI features are possible.

User presets created in the beta version should load OK into v1.0 in almost all cases. Follow the Installation Info commands linked below, and delete your plist / preferences file before running the new version.

Significant v1.0 Changes

  • completely new audio stream routing logic -> Directed Acyclic Graph
  • rescan audio metadata -> faster, no UI lag, no errors
  • automatic update check -> check github repo weekly
  • new filters added -> audio to waveform PNG & audio to spectrogram PNG
  • real-time FFmpeg log window -> during process, batch & preview
  • save complete FFmpeg logs to TXT file
  • logic bugs fixed –> mainly ASPLIT / sub-chain / sidechain related
  • UI bugs fixed –> swapping unicode for SVGs
  • AFIR / Convolution IR is back -> oops, I broke it by mistake
Audio analysis filters now available...

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...

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