Skip to main content

Ninja AB Help

FAQ, manual, and tutorial videos

Videos

Ninja AB Explained

Quick Start: read the step-by-step guide

Ninja AB Short

Frequently Asked Questions

Download and run the installer from the Downloads page. Unlock the plugin upon first use with the license code you've received in your email. Need a hand? See our step-by-step unlock guide.
After purchase, you'll receive two emails: one invoice from Paddle, and one from dsp@thehim.com containing your unlock code. If you don't see it after 10 minutes, please check your spam folder. Still missing? Contact us at dsp@thehim.com.
You tag the parts of a track (intro, verse, chorus, drop, and so on). Tags are saved in a small sidecar file next to the audio, so you only ever tag a reference once; the metadata is there every time you load it. Tag your project too, turn on Sync, and the reference follows your transport: chorus to chorus, drop to drop.
Yes. Ninja AB matches references by loudness (LUFS) so a quiet reference and a loud one sit at the same level. Louder always seems better, and level matching removes that bias. You can also nudge any reference by hand.
We have a 14 day full money back guarantee on all our products. No questions asked. Just send an email to dsp@thehim.com.
Yes! The trial version is fully functional so you can test every feature before purchasing. When you buy, your trial upgrades in place, keeping your settings and activations.
Ninja AB runs on macOS (Intel and Apple Silicon) and Windows 64-bit as VST3, AU, and AAX. It has been tested on FL Studio, Cubase, Nuendo, Ableton Live, Logic Pro, Pro Tools, Bitwig, Reaper, Studio One, and Waveform Pro.
Your license is valid for 1 user. However, you can install and use Ninja AB on 2 machines simultaneously. You can remove an activation from the plugin's Main Menu to free up a slot.

macOS: Mojave 10.14 or later, Intel Core i5 or Apple Silicon M1 or later. Formats: VST3, AU, AAX.

Windows: Windows 7 or later, 64-bit. Formats: VST3, AAX.

An internet connection is required for activation.

Ninja AB Manual

1. What is Ninja AB?

Ninja AB is the ultimate tool for A/B referencing your tracks - whether you're creating, mixing, or mastering. You insert it on your master bus, load your favourite reference tracks, and switch instantly between your mix (A) and a reference (B) - level-matched, and synced to the section you're working on - so you're always comparing like with like.

What sets it apart from a plain reference switcher:

  • Live project visualization - Ninja AB continuously captures your master signal and draws a loudness/dynamics map of your whole song, so you can see your mix next to the references, not just hear it.
  • Section-synced referencing - mark up sections (intro, verse, chorus, drop…) on both your project and the references; when you move to a section in your DAW, the reference jumps to its matching section.
  • Up to 9 references held in RAM, plus your project, for instant switching.

Who it's for: Mixing and mastering engineers, producers - anyone who references against finished tracks (which you absolutely should imho). The defaults lean toward electronic music (4/4, tempo-aware features), but the core A/B and metering workflow suits any genre.

2. Installation & formats

Ninja AB installs as VST3, AU, and AAX - whichever your DAW gets along with.

Insert it on your master / stereo output bus so it sees the full mix. Ninja AB does not alter your audio when comparing - it routes either your mix or the selected reference to the output.

3. Quick start (30 seconds)

  1. Insert Ninja AB on your master bus.
  2. Load a reference - drag an audio file onto an empty reference tile, or use the file browser. (See §6.)
  3. Press play in your DAW. Ninja AB starts mapping your master signal.
  4. Click the A/B button (bottom-left) to flip between your mix and the reference.
  5. Optionally hit match so the reference plays back at the same loudness as your mix - now the comparison is fair.

That's the loop: load, play, A/B, match. Everything else just refines it - and yes, that really was about 30 seconds.

4. The interface

One big visualization, everything else tucked into drawers until you ask for it. Here's the lay of the land:

Ninja AB main display
Main Toolbar Logo, view-mode and section-link selectors, preset manager, menu.
Main Display The hero visualization - waveform / RMS / multiband, with beat grid and section regions.
Meter Vertical level meter spanning the display height.
Floating Button Island Transport, section nav, zoom, and auto-range.
Indicator Bar Channel selector, transport/follow/loop, reference name, loudness, browse toggle.
A/B Button Flip between A (your mix) and B (the selected reference).
Reference Browser toggle Opens the Reference Browser Shelf - the 10 tiles (§7).
File Browser toggle Opens the File Browser Drawer for loading references (§6).
Auditioning toggle Opens the Auditioning Drawer - filters & stereo monitoring (§11).
Settings Shelf toggle Opens the Settings Shelf for the current reference or project (§10).
Figure 4.1 - Main interface (Main Display, RMS view).
  1. 1 Main Toolbar - Logo, view-mode and section-link selectors, preset manager, menu.
  2. 2 Main Display - The hero visualization - waveform / RMS / multiband, with beat grid and section regions.
  3. 3 Meter - Vertical level meter spanning the display height.
  4. 4 Floating Button Island - Transport, section nav, zoom, and auto-range.
  5. 5 Indicator Bar - Channel selector, transport/follow/loop, reference name, loudness, browse toggle.
  6. 6 A/B Button - Flip between A (your mix) and B (the selected reference).
  7. 7 Reference Browser toggle - Opens the Reference Browser Shelf - the 10 tiles (§7).
  8. 8 File Browser toggle - Opens the File Browser Drawer for loading references (§6).
  9. 9 Auditioning toggle - Opens the Auditioning Drawer - filters & stereo monitoring (§11).
  10. 10 Settings Shelf toggle - Opens the Settings Shelf for the current reference or project (§10).

4.1 Main Toolbar

Follow A/B sync - when on, switching between A and B also switches what the Main Display shows.

Project auto-follow - when on, the Main Display pages along with the playhead.

Zoom to section - zooms the view to the currently active section.

View selector - switches the Main Display between Waveform, RMS, and Multiband (see §5).

Link selector - the section link mode (Off / Section / BPM / Project, see §9).

Undo / Redo - for when you make silly mistakes like me.

Preset manager (center) - current preset name with previous/next arrows; click the name for the preset menu.

Menu / info (right) - the main menu and Settings (see §4.3), plus News / Update.

4.2 Indicator Bar

Always visible at the bottom. It contains:

Channel selector - a 2×5 grid of cells numbered 1–9 plus P (project). Click a cell to select that reference (or the project) for the Main Display and for B-mode playback.

Play / Pause - pause the reference if it's playing.

Follow - when on (default), reference playback follows your project: it starts/stops with the DAW transport.

Loop - when on (default), the reference loops within the current section's bar boundaries.

Reference name - e.g. "The Him – Coming Home (Extended)".

Loudness match - hit the arrows to match just this reference to the project's LUFS.

Loudness readout - the reference's loudness (LUFS) used for level matching (a short-term maximum).

Browse toggle - opens/closes the Reference Browser Shelf.

The channel-selector cells mirror the shelf tiles' state model (selected / display target / playing) - see §7.

4.3 Main menu & Settings

The main menu (top-right) groups everything that isn't a per-track control:

Ninja AB main menu
Figure 4.2 - Main menu.

View - Theme, GUI Scale, Show Tooltips, Settings, Show Full Paths, Show PSR Line, Enable MCP Server (Experimental), Copy agent setup prompt, OpenGL Rendering. (More on the MCP server in §16.)

References - Load References…, Sidecar Storage (Central database / Local / Both), and Relocate all missing… (shown only when references are missing).

State - Init All, Init Preset, Reset All References, Reset Captured Audio.

Folders - Open Library folder, Open Resources folder.

License - Remove license.

Help - Ninja AB FAQ (online), Copy debug info, About.

Settings opens a compact dialog for the most-used display options:

Ninja AB settings dialog
Figure 4.3 - Settings dialog.

Meter - Mode (Peak / VU / RMS / K-12 / K-14 / K-20 / M LUFS / S LUFS), Style (Blocks / Smooth), Color (Sectioned / Gradient).

Range - Min dB and Max dB for the display's loudness scale (Min −96…−6 dB, default −28; Max −24…+6 dB, default +2).

Appearance - Theme and Scale (50–200%).

Scope note

Theme, GUI scale, tooltips, full-paths, PSR line, MCP enable and sidecar storage are app-wide settings shared across every instance - they are not stored per preset or per session, and "Init Preset" won't reset them.

5. The Main Display & view modes

The Main Display is the centerpiece - the part you'll end up staring at most. It draws the selected track on a dB scale with a beat grid (when BPM is known) and section regions across the top. You can zoom and scroll (controls live in the Floating Button Island).

Three views, switched from the View selector in the toolbar:

View What it shows Best for
Waveform Full-resolution sample waveform Transients, arrangement, edit points
RMS RMS energy envelope over the waveform Loudness / dynamics comparison
Multiband Three frequency bands (low / mid / high), each with its own envelope Spectral balance vs references

The Multiband view splits the signal into 3 bands, with crossover frequencies of 120 Hz and 2.5 kHz. The RMS and Multiband views can also overlay a PSR line (peak-to-short-term-loudness, a dynamics indicator) - toggle it with Show PSR Line in the menu (on by default).

Waveform view
Figure 5.1 - Waveform view.
RMS view
Figure 5.2 - RMS view (waveform + RMS envelope).
Multiband view
Figure 5.3 - Multiband view: low / mid / high bands stacked.
Multiband zoomed to a build and drop
Figure 5.4 - Multiband zoomed to a 16-bar build → drop (bars 26–42, “Coming Home”). At this zoom the per-band detail is clear: the riser building through the Build section, then the Drop at bar 34 where the low band slams in. This is the kind of close comparison the Main Display is built for - zoom into the moment that matters and read the spectral balance band by band.
Live project capture during playback
Figure 5.5 - Live project capture (RMS view). The Main Display shows your own master signal mapped across the whole song, with the playhead cursor moving in real time and the active section highlighted. This is the defining feature: your mix drawn the same way as the references, ready for a like-for-like A/B.

6. Loading references

You can load up to 9 references. Each is decoded, resampled to your host sample rate, and held in RAM for instant switching.

Ways to load:

  • Drag & drop an audio file (or several at once) onto an empty reference tile (in the shelf or channel selector). You can also drag from one Ninja AB instance to another.
  • File Browser Drawer - slides in from the left edge. It has Factory and User folders and lists the audio files inside; click a file to load it into the targeted slot.
  • Load File dialog - Load References… in the main menu opens your operating system's file picker.
Ninja AB file browser drawer
Factory / User tabs Switch between the bundled and your own reference folders.
Current folder path Where you are in the library.
File list Click a file to load it into the targeted slot.
Figure 6.1 - File Browser Drawer.
  1. 1 Factory / User tabs - Switch between the bundled and your own reference folders.
  2. 2 Current folder path - Where you are in the library.
  3. 3 File list - Click a file to load it into the targeted slot.

On load, Ninja AB analyzes the track: BPM (auto-detected), integrated LUFS (for level matching), and generates the display data. Metadata is saved next to the file as a .njinfo sidecar and in a central database, so a track keeps its BPM, sections, and offsets the next time you load it.

If you store your references in the "User" folder, inside the user library, paths are stored relative to the library. That way projects and presets from one computer can also find the refs on another machine.

Pro tip

You can also customize the User dir - it takes some real Ninja courage though. Use Open Resources folder from the main menu; there's a little .xml file in your "Ninja AB" folder that holds these settings.

7. Reference Browser Shelf & tiles

The Reference Browser Shelf slides up from the bottom (toggle: the browse button on the indicator bar). It shows 10 compact tiles in a 2×5 grid - 9 references plus the project.

Reference browser shelf
Figure 7.1 - Reference Browser Shelf open, 7 references loaded.

Each tile shows: an RMS sparkline, section markers, a playhead, the reference name, and a loudness delta vs your project.

A control strip runs across the top of the shelf (a floating island): loudness / match readouts plus the repitch / timestretch selector and beat-match toggle that govern tempo conversion (see §9.1).

Tile states

A tile surfaces four independent pieces of state at once:

  1. Selected (source) - a speaker icon (top-left). This is the reference you hear in B-mode.
  2. Display target - a glowing outline + magnifier icon (top-right). This is the track driving the Main Display. Only one tile has it at a time.
  3. Playing - a pulsing glow ring around the tile.
  4. Load / missing-file status - a small badge (bottom-left).

A reference can carry all of these at once - that's the normal "I'm editing, hearing, and playing this reference" state.

Tile interactions

Click a tile - selects it as both the display target and (if playing) the audible source.

Shift-click - seek to that point and start playback.

Drag - reorder tiles.

Speaker icon - set the audible source without changing the display target.

Magnifier / edit icon - set the display target only.

Right-click a tile - opens its context menu (below).

Reference context menu
Figure 7.2 - Reference context menu (Ref 6).

Load file… (or Relocate file… if the file is missing), Show in Finder, Show sidecar in Finder. On Windows these read "Show in Explorer"; on Linux "Reveal in File Manager".

Sidecar - Write sidecar now, Reload from sidecar, and Move sidecar to local / Move sidecar to DB.

Detect BPM (overwrites the current BPM), Recompute LUFS, Reset gain.

Delete sidecar - Local / DB / Both, depending on which exist.

Remove reference.

The menu is context-sensitive: items appear or change wording based on whether the file is present and where its sidecar is stored, so your menu may differ from Figure 7.2.

8. A/B switching & level matching

A/B

The A/B Button (bottom-left) is the heart of the plugin:

A - your project audio plays through the output.

B - the selected reference plays through the output.

Switching is instant and gapless, and (with section sync on) the reference is already at the matching point in its arrangement.

Level matching

Loudness differences fool the ear - the louder track almost always "sounds better". It's the oldest trick in the book, and your ears fall for it every time. Ninja AB takes that bias off the table:

  • Per-reference gain - trim each reference manually (Settings Shelf, §10). A separate nudge is preserved across automatic matching, so your manual offset survives a re-match.
  • Automatic match - match the reference's loudness (LUFS) or peak to your mix so the A/B is fair.
  • Project reference point - matching is relative to the project's loudness. Ninja AB tracks the project's detected max LUFS, and you can lock it or set a manual target so matching stays stable while you keep mixing.
  • Visual scale match - next to the level-match button, another button aligns each reference visually too: it uses a comfortable 30 dB display range that takes the gain into account, so every reference and your project also look the same.

9. Section sync

Sections are labeled bar-ranges (intro, verse, chorus, drop…) marked on a track. You see them as colored regions across the top of the Main Display. Ninja AB matches sections by label between your project and each reference.

Create sections directly in the Main Display - double-click to add one. A popup lets you pick a name and length:

Add section popup
Figure 9.1 - Add-section popup. Name suggestions (Intro, Verse, Pre-Chorus, Chorus, Post-Chorus, Bridge, Break, Build, Drop, Outro), a Length (4 / 8 / 16 bars - an editable list), and Add / Add & Again (the latter adds the section and advances to the next, keeping the popup open).

Pro tip

The section tags and colors can be customized too - they live in your Library folder (Open Library folder in the main menu). You'll have to edit a scary little NinjaAB.xml file though. Only for super Ninjas ;)

The section link mode (toolbar Link selector) controls how reference playback follows your project:

Mode Behavior
Off No sync - reference plays freely.
Section When your project enters a section, the reference seeks to its matching section.
BPM Beat-phase snap on seek; reference then free-runs in tempo.
Project Bar-for-bar position mapping - the reference tracks your project timeline continuously.

Default is Section. Section/beat features need a BPM set on the track. Ninja AB auto-detects BPM on load; you can correct it in the Settings Shelf. Time signature is 4/4.

9.1 Tempo matching - beat-match, repitch & timestretch

This is separate from the section link mode above: link mode controls position (which part of the reference plays), while this controls tempo (whether and how the reference is sped up or slowed down to your project's BPM).

By default a reference plays at its own tempo. Turn on beat-match - globally, or per reference - to make it follow your project tempo. Beat-match is the gate: with it off, the reference plays at its native tempo; with it on, the reference is tempo-shifted to your project BPM.

When beat-match is on, choose how the shift is done, per reference:

  • Repitch - speed up / slow down the audio; pitch moves with tempo (like a turntable). CPU-light, transients stay natural.
  • Timestretch - hold pitch, stretch time (Signalsmith). Keeps the reference in key, at higher CPU.

The repitch / timestretch selector and the beat-match toggle live in the floating strip at the top of the Reference Browser Shelf (§7). Repitch/timestretch is always editable - it just only changes what you hear while beat-match is active.

10. Settings Shelf

The Settings Shelf tucks behind the meter on the right edge; open it from the indicator bar / settings control. Its contents are scoped to the current display target (a reference, or the project).

Settings shelf
Figure 10.1 - Settings Shelf for Ref 1.

Per-reference fields:

BPM - tempo used for the beat grid and section positioning (auto-detected, editable).

Offset - align the reference's first beat / start.

Gain - manual level trim for this reference (−100…+12 dB).

Nudge - fine gain adjustment (−12…+12 dB), preserved across automatic level matching.

The per-reference playback mode (repitch / timestretch) and beat-match controls are not in this shelf - they live in the strip at the top of the Reference Browser Shelf. See §9.1.

10.1 Project mode - start/end, gains, and PDC

Set the display target to the project (the P cell) and the Settings Shelf switches to project scope.

Project settings shelf, PDC off
Figure 10.2 - Project Settings Shelf.

bpm - your project tempo (here 128).

start / end - the project's working bar range (here bars 31–112). This bounds the live-capture map to the part of the song you care about, instead of the whole timeline.

length - duration of that range (read-only).

a / b - the A and B output gain trims (the project-vs-reference output levels).

offset - fine alignment for the capture. (Separately, a bar-number offset lets you make the grid read from your DAW's bar 1 if the capture doesn't start there.)

Scope note

Project timing (start/end, BPM, offsets, PDC, max-LUFS lock) and window state are saved with the DAW session, not inside .njab presets. Presets carry your reference set and per-reference settings (§13).

Plugin Delay Compensation (PDC)

When Ninja AB sits on the master bus behind other plugins, the master signal it captures can arrive later than the host timeline in some hosts. PDC aligns the live capture so your project map (and A/B timing) lines up correctly. It's a three-step flow:

  1. PDC off - the default (Figure 10.2). No compensation is applied.
  2. Enable PDC - the PDC button lights up and shows a red ×: it's on but not compensating yet.
PDC enabled, not yet compensated
Figure 10.3 - PDC enabled, red × (not compensating).
  1. Apply - click the swap (⇄) icon at the end of the PDC row. Ninja AB reads the host's detected latency and compensates; the marker turns to a green ✓ with the amount it's now correcting for, in milliseconds (here 18.3 ms).
PDC compensated
Figure 10.4 - PDC applied, green ✓ (compensating 18.3 ms).

At a glance

Read the marker at a glance: red × = not aligned, green ✓ = aligned. If your host doesn't report latency accurately, there's also a manual horizontal offset (0–1000 ms) to nudge the capture into alignment by hand.

It's unfortunately a limitation of certain DAWs not compensating the delay accurately. Ninja AB tries to sneakily figure out whether this is happening by detecting a little silence at the start of playback - but that method isn't foolproof, and can fail or show false positives if reverbs or delays are still decaying when playback starts. So if you know your latency isn't changing much (read: you're not adding or removing plugins), you can probably ignore it for a while. When you're down to details - or really trying to line two pieces of audio up tempo-wise - it's worth grabbing the PDC amount again.

11. Auditioning (filters & stereo monitoring)

The Auditioning Drawer opens at the bottom-left (just above the A/B button). It lets you scrutinize part of the signal without changing your mix - it affects only what you monitor, on both A and B. Think of it as a magnifying glass for your ears.

Auditioning drawer
Figure 11.1 - Auditioning Drawer.

Stereo monitoring - Stereo, Left, Right, Mid, Sides, Side (M) ("side, mono-summed"). Solo the mid or sides to check width and mono compatibility against a reference.

Filters - a master on/off, a band selector (Off / Low / Mid / High) that recalls stored HP+LP pairs for each band, and a slope of 12 / 24 / 48 dB. Pick a band - or sweep the HP/LP frequencies freely - to focus on (e.g.) the low end and compare it across A/B.

12. Metering

The Meter on the right edge spans the display height. It has eight modes:

  • Peak · VU · RMS
  • K-12 / K-14 / K-20 (K-system)
  • M LUFS (momentary) · S LUFS (short-term)

That's a lot of terms, and you really don't need them all. So I always say: "if these options stress you out, stick to RMS." It's what I like to use.

13. Presets

Presets (.njab) store your reference set and settings. Use the preset manager in the toolbar - the current name with previous/next arrows, and a browser (click the name) to load, save, and organize.

Preset browser
Figure 13.1 - Preset browser. Factory and User folders on the left, presets on the right (e.g. init, ninja, welcome); the path bar and folder/home controls sit across the top. Factory presets ship read-only; your own save to User.

14. Themes

Ninja AB ships multiple themes (Dark, Nebula, Graphite, Midnight, Tha Ninja, Monster, Light, Light Dessert). This manual uses Dark (the rest are there for when Dark doesn't match your studio's mood lighting). Change theme from the main menu (§4.3) or the Settings dialog (Figure 4.3).

15. Reference metadata & storage

Every reference keeps its analysis and your edits in:

  • a .njinfo sidecar XML next to the audio file, and
  • a central database at ~/Documents/The Him DSP/Ninja AB/Database/.

Stored per reference: BPM, sections, offsets, LUFS. So a track you've set up once comes back ready. Storage location is configurable in the menu under Sidecar Storage - Central database, Local (next to audio), or Both.

16. MCP server (experimental)

Ninja AB ships with a pretty fully functional MCP server, which I highly recommend you try out if you're into that kind of thing - you can add sections, change settings, read the display… it's genuinely fun. Turn it on with Enable MCP Server (Experimental) in the menu (§4.3), then use Copy agent setup prompt to wire up your client.

It only works locally, and support per client varies (it depends on them supporting local MCP / STDIO communication). Claude Desktop, Claude Code, Cursor, VS Code (Copilot), Windsurf, Codex CLI and some more should most likely work.

But your mileage may vary! It's a dev tool I wanted to make available for geeks like myself. If you leave it off in the settings (the default), it doesn't load anything.

Uninstallation

To uninstall Ninja AB, simply remove the plugin files from the following locations:

macOS

AU /Library/Audio/Plug-Ins/Components/Ninja AB.component
VST3 /Library/Audio/Plug-Ins/VST3/The Him DSP/Ninja AB.vst3
AAX /Library/Application Support/Avid/Audio/Plug-Ins/Ninja AB.aaxplugin
Resources /Users/Shared/The Him DSP/Ninja AB

Windows

VST3 C:\Program Files\Common Files\VST3\The Him DSP\Ninja AB.vst3
AAX C:\Program Files\Common Files\Avid\Audio\Plug-Ins\Ninja AB.aaxplugin
Resources C:\Users\Public\Documents\The Him DSP\Ninja AB

Troubleshooting

1. Make sure you have the latest version installed from the Downloads page.
2. Verify the plugin files are in the correct locations listed in the Uninstallation section above.
3. Restart your DAW and rescan plugins.
4. If the issue persists, contact us at dsp@thehim.com.
Ninja AB stores section tags in a small sidecar file next to the reference audio. Keep that file alongside the track. If you move or rename the audio, move the sidecar with it. References themselves are remembered per project.
Send us an email at dsp@thehim.com and we'll usually respond within 48 hours.

We use cookies. Choose which ones to allow — read our cookie policy.