BUFFR beta · free through August 9 Try it

BUFFR Manual

Setup, capture, export, and Linux Global Controller routing without the guesswork.

Quick start

  1. Download BUFFR for your operating system and install the CLAP or VST3 bundle.
  2. Restart your DAW, rescan plug-ins, and add BUFFR to a track, bus, or the master.
  3. Open License inside BUFFR, paste your Polar key, and select Activate.
  4. Leave MIDI Source on Host + Global unless you only want one input path.
  5. Play. BUFFR keeps a rolling history so you can select and drag out audio or MIDI after the moment has passed.

Install

macOS and Windows: extract the download, install the included CLAP or VST3 bundle in your normal user or system plug-in folder, then restart and rescan your DAW.

Linux: extract the zip and run ./install.sh. It installs BUFFR to ~/.clap/BUFFR.clap and ~/.vst3/BUFFR.vst3, plus the optional Global Controller helper. Use ./install.sh --system only if you deliberately want a system-wide install.

CLAP is the first choice when your host supports it. VST3 is included for hosts that do not.

Activation

The normal path happens inside the plug-in: open License, paste the key from Polar, and select Activate. You do not need to paste a machine request into the website when BUFFR can reach the activation service.

For an offline machine, create and copy the request in BUFFR, open the offline activation page on a connected device, paste the request and key, download the .dgmlic file, then import that file in BUFFR.

Host, Global Controller, or both?

Host records only MIDI delivered through the plug-in by your DAW. It follows the host timeline and is the sample-accurate choice when BUFFR sits on the instrument track receiving the MIDI.

Global Controller listens to the selected OS MIDI input independently of the track. Use it when BUFFR sits on a bus or master and you still want it to remember your keyboard performance. Global timing preserves the performance spacing but is approximate rather than host sample-accurate.

Host + Global records both paths. This is the default and works well when BUFFR is on the master. If the same keyboard reaches BUFFR through both paths, use Host or Global alone to avoid duplicate notes.

Linux Global Controller setup

Many Linux DAWs can share a physical controller with BUFFR through ALSA Sequencer and need no Virtual MIDI route or BUFFR background service. REAPER works this way in our tested native Linux setup. Some hosts, including Bitwig in its raw-device path, open the controller through ALSA RawMIDI instead. A physical RawMIDI input normally has one reader: once the DAW owns it, BUFFR cannot also open it.

  1. Install BUFFR with the included ./install.sh. This also installs the optional per-user BUFFR MIDI Route helper and service file.
  2. In BUFFR, open Settings → MIDI source and choose your physical controller. If BUFFR can open it alongside the DAW, setup is complete.
  3. For Bitwig or another raw-only host, run BUFFR’s one-time Virtual MIDI setup. It asks for administrator permission to load Linux’s built-in Virtual Raw MIDI driver now and after reboot.
  4. Switch the DAW from the physical controller to Virtual Raw MIDI, then return to BUFFR and check the route again.
  5. Select Start MIDI route. BUFFR saves the physical controller and starts the optional route supervisor for your user account.

BUFFR now reads the controller directly through ALSA Sequencer while the DAW reads Virtual Raw MIDI. You normally perform the driver setup and DAW input switch once per Linux installation.

Check whether your DAW needs the route

Do this once for each DAW. A working route left over from another host can make an incompatible DAW appear to work directly, so start with the compatibility service disabled.

  1. Open Settings → MIDI source → Set up routing in BUFFR.
  2. Select Disable under Compatibility service. BUFFR stops the service and removes its managed ALSA route.
  3. In your DAW, select the physical MIDI controller rather than Virtual Raw MIDI.
  4. Select that same physical controller in BUFFR and play. If the DAW and BUFFR both receive MIDI, your DAW needs no compatibility service.
  5. If either side cannot open the controller, select Enable in BUFFR, switch the DAW to Virtual Raw MIDI, and use Restart if the route needs to be rebuilt.

Confirmed so far: REAPER can share the physical controller directly in our tested native Linux configuration. Bitwig’s RawMIDI path needs the compatibility route. Other DAWs and sandboxed packages should be checked with the steps above because their MIDI backend can vary by build and configuration.

What the BUFFR MIDI Route service does

It is an optional service for your Linux user account. It asks ALSA to connect your physical controller directly to Virtual Raw MIDI, then restores that kernel route after login, sleep, or reconnecting the controller.

It does not open RawMIDI directly or relay individual MIDI messages in userspace. The ALSA route keeps the physical controller active, BUFFR subscribes to that same Sequencer source, and the DAW reads the virtual RawMIDI input. The service never routes audio, changes your DAW project, or uses the network. Host MIDI capture works without it.

Audio and MIDI capture

BUFFR records up to 16 audio channels and all 16 MIDI channels. Place separate instances where you need separate audio histories, or put one instance on a bus or master for a wider retrospective view.

Choose rolling, record, or on-detect capture and set the retained history from 1 to 120 minutes. The Keep in memory setting controls the recent audio kept in RAM; older captured audio can archive in the background so a long maximum does not require one huge allocation.

MIDI capture includes notes, velocity, control changes, pitch bend, channel and poly pressure, MPE, and host note expression. Selected notes keep their associated expression by default when exported. Turn off Expressions for a plain note-only export.

Select, preview, and export

  • Drag across the audio or MIDI lane to select a time range. Drag the edges to resize it.
  • Drag from the selected region into your DAW or file manager to export it.
  • Audio drag-out defaults to 24-bit FLAC. Choose 24-bit WAV or a lossy format in Settings; lossy encoding requires FFmpeg.
  • MIDI drag-out creates a Standard MIDI File. Audio and MIDI selections, playheads, and zoom are independent.
  • Linux, macOS, and Windows drag-out uses Matari Audio’s open-source audio plug-in drag-and-drop protocol, including the thumbnail shown under your pointer.
  • Space previews the lane under the pointer. Hold Space to loop; use Ctrl-Space to stop and Esc to clear selections.
  • Press B, or the configured MIDI CC, to add a jam marker while capturing.

Troubleshooting

BUFFR is missing: confirm the bundle is in a standard CLAP or VST3 folder, restart the DAW, and force a plug-in rescan. On Linux, copy the complete bundle directory rather than symlinking it if your host ignores symlinked plug-in folders.

No Host MIDI: make sure the DAW routes MIDI to the track containing BUFFR and that MIDI Source includes Host.

No Global MIDI: select the controller in BUFFR, confirm MIDI Source includes Global, and close other apps that may own the device. On Linux, check that the BUFFR MIDI Route service is enabled and running.

Bitwig says the controller is busy, or BUFFR cannot open it: switch Bitwig away from the physical controller and onto Virtual Raw MIDI, then check the route again.

Duplicate notes: the controller is reaching BUFFR through Host and Global. Select only the path you want.

Drag-out fails: try the other plug-in format, use an X11/XWayland session on Linux, or export to a normal file-manager target. Some DAW-internal clip targets do not expose a file path the plug-in can use.

Flatpak and NixOS

Flatpak: a sandboxed DAW may not see your normal plug-in folders, physical MIDI devices, or the user service outside the sandbox. Grant the DAW access to the BUFFR bundle locations and MIDI devices, or use the DAW’s native package when Global Controller access is required. The BUFFR service itself runs in your normal user session, not inside the Flatpak.

NixOS: the release zip is a normal Linux bundle and may need repackaging. Patch the runtime library path for both BUFFR.clap/Contents/x86_64-linux/BUFFR.so and BUFFR.vst3/Contents/x86_64-linux/BUFFR.so. Required runtime libraries include libgcc, libX11, and ALSA. Virtual Raw MIDI also requires the snd-virmidi kernel module to be available in the system configuration.

Disable or uninstall

To stop Linux global routing without removing BUFFR, disable it in the MIDI source panel or run systemctl --user disable --now buffr-midi-agent.service. Host MIDI and audio capture remain available.

On Linux, run the included ./uninstall.sh to remove the user plug-in bundles, helper, and service. Add --reset-prefs only if you also want to delete BUFFR settings. On macOS or Windows, remove the BUFFR CLAP and VST3 bundles from the folders where you installed them, then restart and rescan the DAW.

If you enabled Virtual MIDI and no longer need it for another application, remove /etc/modprobe.d/buffr-midi.conf and /etc/modules-load.d/buffr-midi.conf as an administrator, then reboot. BUFFR leaves this system driver configuration in place by default so uninstalling the plug-in cannot unexpectedly break another MIDI route.

Privacy

Audio and MIDI capture, preview, routing, and export happen on your computer. The Linux route service handles local MIDI only and does not send it over the internet. Network access is used for activation and product services; see the Privacy Policy for the account and activation data involved.

FAQ

Do I need the Linux route service? No. BUFFR can capture a shareable ALSA Sequencer controller directly. Use the service only when a raw-device DAW and BUFFR must share one physical controller through Virtual Raw MIDI.

How do I know whether my DAW supports direct Global Controller capture? Disable the Compatibility service inside BUFFR, choose the physical controller in both applications, and play. If both receive MIDI, leave the service disabled. REAPER passed this check in our tested native Linux setup; Bitwig’s RawMIDI path did not.

Do I need Virtual Raw MIDI? Only when your DAW insists on owning the physical RawMIDI device and prevents BUFFR from opening the controller alongside it.

Can BUFFR recover sound from before I inserted it? No. It can only retain audio and MIDI received while that plug-in instance is loaded and capture is active.

Does a 120-minute buffer mean 120 minutes are always in RAM? No. The recent-memory window and background archive keep long histories practical.

Where can I get help? Email support@matari-audio.com with your OS, DAW, plug-in format, BUFFR version, and concise steps to reproduce the problem. Do not send your full private license key.