Skip to main content

PerformFX

PerformFX is Meiji Sampler’s dedicated live-effects surface. It gives each bank ten fixed keyboard slots, an FX Library, and an optional inspector so throws, mutes, tape moves, sirens, and transitions happen as performance gestures instead of mixer edits.

Where it lives

Open the Perform tab by pressing [TAB] from the Create screen.

What it does

PerformFX has Bank A and Bank B. Both banks are visible as stacked ten-slot rows mapped to [1] through [9] and [0]; the active bank row is highlighted and receives trigger keys. The active bank label shows [b] to switch banks, and its right-aligned Quantize Bank setting shows [q] after the current value. A slot stores the preset reference, Grid division, quantize mode, engagement mode, attack/release sync, Tail mode for tail-capable effects, Throw mode for echoes, PreGain, target, and optional wet override. The top of the Perform tab shares the same audio waveform overview row as Create, so you can keep an eye on the master output while choosing or triggering effects. The FX Library lists built-in presets, custom presets, and visible CLAP candidate entries in grouped boxes for faster scanning. The library groups are Vintage, DJ FX, SP Series, Time, Space, RMX Series, Utility, Custom when present, and CLAP at the bottom. Move focus with [←/→], [↑/↓], or h/j/k/l. Press [i] when you want the inspector. It follows the focused slot or library preset and shows bank, lane, quantize mode, assignment state, live status, and debug notes. The built-in library starts with sampler-heritage effects: SP1200, S950 LPF, S950 HPF, and ASR10 Boost. It also includes SP-404MKII and RMX-1000 hardware-port presets with the original effect names, Airwindows-powered effects, and Meiji Sampler’s internal beat, gate, tape-stop, siren, ducking, and utility processors. Meiji Sampler still does not load arbitrary plugins; Airwindows DSP is compiled into the app as selected MIT-licensed source. The A/B audition lane is for testing the permissive CLAP candidate map against the current PerformFX implementation. Lane A plays the current built-in PerformFX path. Lane B targets the official permissive CLAP candidate for the same preset when it is installed and falls back to the current path while candidate hosting is unavailable.

Core controls

  • [1] through [9], [0] trigger the fixed slots in the active bank
  • When FX Library focus is on a preset, the shown number keys preview that preset and [A] opens the Assign dialog where pad keys [1][0] place it on bank pads
  • [ENTER] opens FX Params for the focused slot or FX Library preset
  • [DELETE] or [BACKSPACE] clears the focused assigned slot after confirmation
  • [b] toggles bank
  • [q] cycles the active bank’s Quantize Bank setting: Default → Current Grid → Next Grid → Next Bar → Next 2 Bars
  • [i] shows or hides the inspector
  • [-] and [+] step the focused slot’s Grid value down or up
  • [SHIFT+K] kills all active effects

A/B candidate audition

Use A/B audition when you want to compare the current PerformFX sound against the official permissive CLAP candidate for the same preset.
  • [SHIFT+A] selects lane A: current PerformFX
  • [SHIFT+B] selects lane B: permissive CLAP candidate
  • [SHIFT+N] starts a note for the last triggered preset/lane
  • [ENTER] saves the note, [ESC] cancels it, and [BACKSPACE] edits it
  • [SHIFT+S] exports the local feedback JSON
The export is written under Meiji Sampler’s app data directory at PerformFX/feedback/performfx-ab-feedback-*.json. Exported feedback is local until you choose to share it. Official Meiji-distributed PerformFX packs are permissive-only: MIT, ISC, BSD, Apache, or equivalent licenses. Proprietary, GPL, LGPL, unknown, or ambiguous plugin licenses stay out of official packs. Commercial plugins can still be useful references, but they are not bundled or required by Meiji Sampler.

FX Params

Open FX Params with [ENTER] from the focused slot or FX Library preset.
  • Focused assigned slot: FX Params opens with that slot’s current preset and parameters.
  • Focused empty slot: FX Params uses the selected library preset and targets that slot.
  • Focused library preset: FX Params targets the last focused fixed slot, so you can choose a slot, move into the library, press [ENTER], and replace that slot.
  • Focused library preset plus the shown preview keys: previews the selected preset. Most presets show [1-4]. Vintage presets use those four keys for quick A/B/C/D auditions: SP1200 steps through channels 1 & 2, 3 & 4, 5 & 6, and 7 & 8 with 45RPM on; S950 LPF steps through 435 Hz, 848 Hz, 1242 Hz, and 2419 Hz; S950 HPF steps through 501 Hz, 848 Hz, 1242 Hz, and 2419 Hz; ASR10 Boost steps through Low, Med, High, and Off. DJFX Looper shows [1-6] and previews 1/2, 1/4, 1/8, 1/16, 1/32, and 1/64 grid captures. Other presets keep their default library settings until variant slots are defined for them.
  • After a preview starts, the library tile replaces [1-4] to play or [1-6] to play with the played variant, such as [2] Chan 3&4 or [5] 1/32, and keeps showing that active state when focus moves away. The key is highlighted only while the tile is focused; unfocused active previews dim the key because the number keys now target the focused tile.
  • Pressing a different preview key for the same focused preset switches variants immediately and stays active. Pressing the currently shown preview key again releases that preset. Pressing the same number on a different focused preset starts that preset separately instead of releasing the original.
  • Focused library preset plus [A]: opens the Assign dialog instead of opening FX Params. The dialog is the only assign flow: pick an effect, variant, and FX slot bank, then press a pad key [1][0] to place it. See the Assign dialog section below.

Assign dialog

Press [A] on a focused FX Library preset to open the Assign dialog. It is a centered modal with three selectors and an informational pad list:
  • Effect — a single-line [←/→] selector cycling assignable FX Library effects. The dialog opens on the active pad’s assigned effect when that pad already has one; otherwise it starts on the focused library preset.
  • Preset — a single-line [←/→] selector cycling the selected effect’s preview variants, using the same labels as the [1][6] preview buttons (for example King Tubby or 1/32). Presets without variants show a single Default option. The selector defaults to the variant saved on the active pad when available, then to the variant you last previewed for this effect; if neither exists, it starts on the first variant.
  • FX Slot — a matching [←/→] selector between Bank A and Bank B. The active bank is pre-selected.
  • Pad — pads 10 of the selected bank. The first pad appears on the same row as the Pad label. An empty pad shows its assignment hotkey, such as [3] - Empty; an already-assigned pad keeps its dimmed key visible, such as [1] SP1200: Chan1&2 or [1] SP1200: Custom, so occupied pads stay aligned and read-only.
Changing Effect updates the Preset choices for that effect. Changing FX Slot re-computes the pad rows for that bank. Controls: [↑/↓] (and unshifted j/k) move focus between Effect, Preset, FX Slot, and Pad; [←/→] change the focused selector and are a no-op when Pad is focused. Pad keys [1][0] assign immediately to that pad of the selected bank. Pressing the key for an empty pad builds the same binding the preview [1][6] keys play, persists it to that bank pad, and shows a status line such as Assigned "King Tubby" to Bank A pad 3; the pad then keeps its key visible and shows the assignment label. The dialog stays open so you can place several variants in one visit. Pressing the key for an already-assigned pad does nothing. [ENTER] and [ESC] both close the dialog without assigning. CLAP candidates stay unassignable and show Install CLAP pack to assign this candidate instead of opening the dialog. FX Params has three columns: FX, Grid, and Params. Use [←/→] to move between columns and [↑/↓] to select a row. In the Grid column, press [-] or [+] to step the selected division down or up without leaving row selection. Press [1] through [9] or [0] inside FX Params to choose the target slot directly. Press [ENTER] to save, or press [ENTER] on editable Params rows to change values. Press [R] to reset the current target slot editor to the selected preset defaults. While a value is active, use [←/→] or [↑/↓] to change it, then press [ESC] or [ENTER] to return to row selection. From row selection, [ESC] cancels when nothing changed; after edits or reset, [ESC] saves the target slot and closes. The Params column includes both shared slot settings and preset-specific controls in this order: Engage, Quantize Start, Quantize End, Sync, Attack, Release, One Shot, Length when One Shot is On, PreGain, Wet, effect-specific parameters, and Target. Engage offers Smart Hold, Hold, Toggle, and Always On; Always On starts the assigned slot automatically, ignores trigger and release presses, ignores One Shot auto-release, and stays active while the slot remains assigned. Quantize End is hidden when One Shot is On, because Length determines the automatic end time. Sync chooses how Attack, Release, and one-shot Length are interpreted: Time (ms) keeps explicit millisecond values, with one-shot Length available up to 20,000 ms, while Tempo (beats) lets Length use beat values from 1/64 through 4 Bars, including 1/16T, 1/8T, 1/4T, and 1/2T, against the effective project tempo. In Tempo (beats), Attack and Release can use the same fixed beat values or Grid, which follows the slot’s current Grid division, including changes made with [-] and [+] on the focused slot. Most presets open with Time (ms); Filter Sweep Up and Filter Sweep Down open with Tempo (beats), Attack set to Grid, and Release set to 1/4; Cap Sweep opens with Tempo (beats) and a 1 Bar Attack/Release sweep. One Shot defaults to Off; when set to On, Length controls the total engaged duration before the slot automatically releases, including the Attack and Release portions. Active one-shot slots show the remaining Length as ACTIVE: 1234ms for Time (ms) sync or as a remaining beat count for Tempo (beats) sync. Tail appears only for tail-capable echo, delay, throw, and reverb presets. It chooses what happens when transport stops: Cut uses the normal fast kill fade, while Ring Out releases the effect and lets tail-bearing echoes and reverbs keep decaying; echo tails retire once they become sensibly inaudible. Echo, delay, throw, and reverb presets default to Ring Out; gates, filters, repeats, brakes, ducking, and utility gestures hide Tail and use the Cut behavior. Echo and delay presets also expose Throw: Off keeps feeding live input normally, while 1/64 through 4 Bars feeds only that tempo window into the delay, then mutes the live dry path for wet-only repeats. PreGain trims or boosts the signal before the selected PerformFX processor; most presets default to 0 dB, loud/bit/smash presets default to -6 dB, and color/saturation presets default to -3 dB to leave headroom before character processing. Wet sets the slot’s dry/wet ceiling in 5% steps; when it shows Default, the engine uses the selected preset’s default wet amount. S950 LPF and S950 HPF expose Cutoff and Resonance, SP1200 exposes Channel and 45RPM, ASR10 Boost exposes Level, Lofi Repeat exposes Feedback LPF, Dusty Vinyl exposes Crackle, Vinyl Sim exposes Amount, Noise, Flutter, and Drive, Halftime exposes Speed and Resync, dub echo presets expose Feedback, reverb presets expose Size, Decay, and Pre-delay, gate presets expose Duty and Depth, flanger/chorus/ensemble presets expose Rate, Depth, and Feedback, AutoPan exposes Rate and Depth, dub siren presets expose Freq, Wave (Sine, Triangle, Square, Saw), LFO Shape (Sine, Square, Ramp Up, Ramp Down, Stepped, Sine+Oct), LFO Rate, LFO Depth, Sweep, and Sweep Time, and duck/utility presets expose their Duck or Target level. SP-404MKII and RMX-1000 hardware-port presets expose hardware-style custom controls such as Ctrl 1-6, Scene FX, Sub Param 1/2, Low/Mid/Hi, Release Lever, Range, Repeat Rate, Level, and Pitch. Saved slots and custom presets keep these values, so two slots can use the same preset with different effect settings. Press [R] to reset the target slot editor to preset defaults, [S] to save the current settings as a custom preset, or [DELETE]/[BACKSPACE] to clear the selected slot after confirmation. Stopping transport clears active PerformFX engagement, but tail-capable slots expose a Tail setting that controls what happens sonically. Tail: Cut stops the effect with the normal fast fade. Tail: Ring Out stops feeding new audio and lets tail-bearing echo, delay, and reverb gestures decay naturally after playback stops; echo tails are considered done once a full delay cycle falls below the inaudible threshold.

Quantize modes

PerformFX start quantize can be set per slot in FX Params or overridden per bank with [q]. Each bank row shows Quantize Bank: Default when it is using each slot’s saved Quantize Start value, or the forced bank mode when one is active. Quantize End can be set per slot and queues manual disengagement to the selected grid or bar boundary when One Shot is Off; while that release is waiting, the slot stays engaged and shows ACTIVE: 1000ms with a live countdown until the release boundary. Slot Grid divisions run from 1/64 through 4 Bars and include triplets from 1/16T through 1/2T.
  • Off starts the effect immediately.
  • Current Grid starts immediately inside the active slot division and locks phase-aware effects to that cell. Build Gate, Half Gate, Gate Filter, and Digital Gate start at the active gate phase, while loop effects complete the cell before looping from the grid start.
  • Next Grid queues the effect for the next boundary of the active slot division.
  • Next Bar and Next 2 Bars queue the effect for larger musical boundaries.
PerformFX slots flash with an inverted tile color when a quantized trigger becomes active, retriggers, or advances into a new loop cycle. Queued quantized slots show a millisecond countdown until activation, for example QUEUED: 1000ms; queued quantized releases keep the slot labelled active and show the same countdown style, for example ACTIVE: 1000ms. DJFX Looper is marked with in PerformFX because it is the recommended loop-repeat path, and it defaults to Current Grid. Triggering DJFX Looper mid-cell plays the remaining part of the current grid cell live, fills the missing tail, and then loops the completed cell from its grid start. Build Gate, Half Gate, Gate Filter, and Digital Gate also default to Current Grid. Triggering a gate mid-cell starts the gate at the current phase of that cell instead of restarting the gate cycle at the press point. Gate presets include an Offset parameter for shifting that grid-locked phase. Next Grid keeps the queued behavior when you want the repeat or gate to begin on the next cell.

Inspector and debug notes

Press [i] to show or hide the inspector. When visible, it shows the focused slot or FX Library entry. For assigned or live slots, it includes timing, mode, quantize, envelope, live or queued status, and Debug Notes. These notes expose implementation details such as engine, family, algorithm type, parameter summary, wet amount, envelope defaults, timing, quantize mode, and engagement mode. Use the notes while A/B testing to understand whether you are hearing an internal algorithm, an Airwindows-backed patch, a hybrid gesture, or a CLAP candidate lane.

Preset categories

The built-in preset library is organized into categories such as:
  • Vintage
  • SP Series
  • DJ FX
  • Time
  • Space
  • RMX Series
  • Utility
  • CLAP

Example preset types

The built-in library includes effects such as:
  • Vintage SP1200 with a channel-style filter selector and 45RPM mode enabled by default
  • Vintage S950 LPF and S950 HPF using the same 6th-order Butterworth filter ranges as the mixer: LPF 200-20000 Hz, HPF 20-2000 Hz
  • Vintage ASR10 Boost with Lo, Mid, and Hi intensity levels, plus a -6 dB PreGain default
  • DJFX Looper’s post-trigger capture loop and Lofi Repeat’s lookback beat repeat
  • SP-404MKII-named ports such as Filter+Drive, Resonator, Sync Delay, Isolator, Scatter, VinylSim variants, TimeCtrlDly, SX Reverb, SX Delay, Cloud Delay, Back Spin, DJFX Delay, Auto Pitch, Vocoder, Harmony, and Gt Amp Sim
  • RMX-1000-named ports such as BPF Echo, Spiral Up, Reverb Up, HPF Echo, LPF Echo, Crush Echo, Spiral Down, Reverb Down, Cut/Add, Trans/Roll, Gate/Drive, Roll, Sampler, and Release FX-style Vinyl Brake, Release Echo, and Release Back Spin
  • rhythmic gate
  • HPF / LPF sweeps
  • dub siren tone generators modeled on classic siren hardware — Classic Dub Siren, Air Raid, Robot Beep, Bomb Drop, Laser Zap, Two-Tone Horn, and Steppers Siren — with selectable oscillator waveforms, six LFO shapes, and one-shot pitch sweeps that retrigger on every fire
  • tape echo, dub echo, pitch echo, four-tap echo, and double delay
  • chorus, ensemble, autopan, tremolo, and flanger-style modulation
  • halftime
  • hype button
  • motor kill
  • room, hall, plate, retro, bright, and infinite reverb throws, with Room Verb tuned as the subtler short-room option, Bright Room using the controlled internal room engine, and Infinite Space using a lower-gain large internal wash
  • tape stop
  • vinyl, tape, sampler, bit, and crunchy lo-fi color
  • DJ isolator, capacitor sweep, gate filter, surge, limiter, and digital blackout
  • glitch shift and nasty pitch
  • volume duck
Talkover Duck and Motor Kill are designed as audible volume drops, not hard mutes. Their built-in targets bring the master down to about 40% volume so the groove stays present while you speak over it or create a transition. Digital Blackout is the hard-mute gesture when you want the master to drop fully out. DJFX Looper uses Current Grid by default, so it can finish the currently active grid cell live and then loop the completed cell from its grid start. Build Gate, Half Gate, Gate Filter, and Digital Gate use Current Grid by default too, so their gate cycles stay locked to the active grid rather than the trigger point; adjust Offset when you want the gate pattern shifted ahead within the cell. Gate Filter is the smoother, partially open gate, while Digital Gate is the harder staccato chop. Digital Blackout is an immediate full mute with a short release. Lofi Repeat keeps the looser lookback repeat behavior, grabbing audio that was already playing at the trigger point, and adds a Feedback LPF control to smooth repeated edges with a tape-echo-style damping path. The HPF and LPF sweep effects, including Cap Sweep, keep the same 6th-order Butterworth biquad engine as the mixer channel filters, with optional resonance that adds a musical peak at the cutoff frequency. Airwindows adds separate creative PerformFX presets; it does not replace the exact HPF and LPF controls. DP4 Lush, Daft Flanger, Stereo Chorus, and Ensemble Wash use the internal stereo modulation engine so their sweeps are smooth, phase-offset, and less volume-destructive than a plain short-delay insert. AutoPan uses an internal equal-power stereo pan law, so it moves clearly across the field without dropping the dry level. Tape Stop and Vinyl Brake both brake the audio to a full stop — the playback rate reaches exactly zero — and pick up seamlessly from the moment you trigger them instead of replaying older history. The pitch dives faster near the end (an accelerating fall into the stop), highs roll off naturally as the speed drops so it sounds like analog tape or vinyl rather than digital aliasing, and the final stop fades to silence with no click. Tape Stop uses an eased reel spin-down and a longer release so the running track eases back in afterward. Vinyl Brake defaults to 1/4, uses a constant-torque brake curve that dives more sharply into the stop, and keeps the more sudden release behavior for release-FX-style cuts. Halftime captures the active timing division when it is triggered, replays that phrase at the saved Speed, and crossfades the phrase wrap so the half-speed loop stays musical instead of dropping into stale history or clicking at the boundary. The SP1200 PerformFX preset applies SP-style anti-aliasing, saturation, 12-bit quantization, sample-and-hold character, and the selected output filter style as a live gesture. The default preset uses the unfiltered 7 & 8 style with 45RPM character enabled. ASR10 Boost applies the same Lo/Mid/Hi vintage saturation and limiting levels used by the mixer control, with Low as the default preset level and -6 dB PreGain to keep the boosted path controlled. Master bounces and visualizer video audio include live PerformFX gestures. Channel stem exports remain pre-master-FX so you can keep clean stems for later mixing.

Why use PerformFX instead of manual mixing

PerformFX is for momentary performance gestures. The mixer is for stable mix decisions.