Skip to content

Install PresTools

PresTools is a REAPER extension with one panel for stem separation, tempo mapping, chord detection, and lyrics. The chord and lyric tracks it writes are the ones Prest Server’s REAPER plugin reads.

These pages describe PresTools 0.1.0 for REAPER, the current release.

You need Details
REAPER Opened once and closed before you install, so that its settings folder exists. No other extension: not SWS, ReaImGui, or js_ReaScriptAPI.
macOS A Mac with Apple silicon (M1 or later). PresTools 0.1.0 does not install on Intel Macs.
Windows 64-bit Windows on an x64 processor, with the Microsoft Edge WebView2 Runtime. Windows on Arm is not supported.
Linux x86_64, with WebKitGTK 4.1.
An internet connection For the install, for each tool you add, and for each model the first time it is used.
Disk space About 1.5 GB for the install. Then each tool you add, 10 to 90 MB (stem separation takes 200 MB more on Apple silicon), and each model you download: Whisper’s default model alone is about 3 GB.

You don’t need administrator rights, and you don’t need to install Python or anything else first.

Every tool can run on the CPU. Where PresTools finds a GPU it can use, the tools run there instead, and anything the GPU can’t run finishes on the CPU.

Your computer What PresTools uses
Mac with Apple silicon The built-in GPU. Nothing else to install.
NVIDIA GPU CUDA, on Windows and Linux. Install NVIDIA’s driver first: the installer looks for it with nvidia-smi, then downloads the CUDA build of PyTorch, which is a larger download.
AMD GPU on Windows AMD’s PyTorch for Windows, a preview, on the GPUs AMD lists for it: Radeon RX 9070 or 9070 XT, RX 9060 XT, RX 7900 XTX, RX 7700 or 7700 XT, Radeon AI PRO R9700, and Radeon PRO W7900. It needs AMD Software 26.2.2 or later. On other AMD GPUs, the installer says so, and the tools run on the CPU.
Anything else The CPU. On Linux, you can try an AMD GPU with the --torch-backend option: see Installer options.

In the panel, Settings names the GPU it found, as Use the GPU: …. Untick it to run everything on the CPU.

PresTools is in early access: ask for the package for your system on its download page. It is PresTools-v0.1.0-macOS.zip, PresTools-v0.1.0-Windows.zip, or PresTools-v0.1.0-Linux.zip. Each unzips to a folder named PresTools. The SHA256SUMS file beside them lets you check a download.

  1. Quit REAPER.

  2. Unzip the package anywhere.

  3. Open Terminal, type cd (with a space), drag the unzipped PresTools folder onto the Terminal window, and press Return.

  4. Run:

    Terminal window
    ./install.sh
  5. Wait for Checking features. The install takes roughly 5 to 15 minutes.

The installer clears the download flag macOS puts on the files, so macOS does not block the extension.

  1. Quit REAPER.
  2. Unzip the package anywhere.
  3. Double-click install.cmd. If Windows shows Windows protected your PC, click More info, then Run anyway.
  4. Wait for Checking features. The install takes roughly 5 to 15 minutes. The window stays open at the end; press any key to close it.

The panel needs the Microsoft Edge WebView2 Runtime. If it is missing, the panel stays blank. After 15 seconds, REAPER’s console says that the web view did not start, with a link to Microsoft’s WebView2 page. Install the runtime, then reopen the panel.

  1. Install WebKitGTK 4.1 if your desktop does not already have it:

    • Debian, Ubuntu 22.04 or later: sudo apt install libwebkit2gtk-4.1-0
    • Arch: sudo pacman -S webkit2gtk-4.1
    • Fedora: sudo dnf install webkit2gtk4.1
  2. Quit REAPER.

  3. Unzip the package anywhere, open a terminal in the unzipped PresTools folder, and run:

    Terminal window
    ./install.sh
  4. Wait for Checking features. The install takes roughly 5 to 15 minutes.

If WebKitGTK is missing, the installer warns that the panel’s web view is missing libraries and names the package to install.

It downloads a private Python and PyTorch, with the libraries every tool shares, about 1.5 GB, into REAPER’s Scripts/PresTools/Scripts folder, and copies the extension into REAPER’s UserPlugins folder. It changes nothing system-wide. It ends with a check:

Checking features:
OK PresTools panel
Optional components (install them in the panel: Settings -> Components):
-- Stem separation: not installed
-- Beat detection (Tempo): not installed
-- Lyrics Recognition: not installed
-- Lyrics Alignment: not installed
-- Chord Mapper: not installed

Expected result: PresTools panel says OK. A tool you have not added yet says not installed. That is normal: you add the tools from the panel. A line that says FAIL needs fixing: see Troubleshoot.

  1. Start REAPER. If it was open while you installed, restart it.
  2. Run the action PresTools: Show panel. Add it to a toolbar if you like: the button is lit while the panel is open.

Expected result: the PresTools panel opens. It shows Starting… until it is ready.

  • The pages are tabs along the bottom: Separate, Tempo, Chords, Lyrics, and Settings. The Models and Workflows pages open from Separate.
  • The line at the top shows the latest message, or what the control under the pointer does. Click it to see recent messages.
  • How this works (the ? button on a tool’s page) opens that tool’s manual.
  • Right-click the panel for Dock window and Close window.
  • If the panel is open when you quit REAPER, it opens again the next time.
  • REAPER’s shortcuts keep working while the panel has the focus, except while you type in a text field.

A fresh install has the panel and the libraries every tool shares. You add each tool, called a component, from its own page the first time you open it (Install), or from Settings → Components:

Component Enables Size
Stem separation The Separate, Models, and Workflows pages About 10 MB, and 200 MB more on Apple silicon, plus each model you download
Beat detection Detecting beats on the Tempo page About 60 MB
Chord recognition The Chords page About 90 MB
Lyrics recognition Recognize on the Lyrics page About 30 MB, plus the Whisper model the first time you use it
Lyrics alignment Align lyrics on the Lyrics page About 80 MB

Importing an UltraStar file on the Lyrics page needs no component.

Settings → Components shows each component’s size, and Licenses lists the license of every part it installs. On a tool’s page, hover over Install to see the main part, its size, and its license in the line at the top. An install runs while you keep working, with its progress at the bottom of the page, and needs no restart.

Remove asks Remove …?, then deletes the component’s packages and the models it downloaded. What other components share stays. You can add it again later.

The panel itself never goes online, your audio stays on your computer, and PresTools has no telemetry. These are its downloads:

What When From
Python, PyTorch, shared libraries During the install GitHub (the uv installer), the Python Package Index, PyTorch’s own builds, and AMD for its Windows build
A component’s packages When you add the component The Python Package Index; Beat This!’s and the lyrics aligner’s source, and an English dictionary, from GitHub
Separation models When you download one, or first use it Each model’s own source, as the model catalog lists it
Beat detection’s weights The first beat detection The Beat This! authors
Whisper models The first recognition with each model Hugging Face on Apple silicon with the GPU on; OpenAI otherwise

PresTools keeps its files in REAPER’s Scripts/PresTools/Scripts folder: models in models, and your settings and saved workflows in app/data.

Run these from the unzipped package folder, as for the install:

Check macOS and Linux Windows
Whether each feature can run ./install.sh --check install.cmd --check
Run every added tool once on a ten-second test clip ./install.sh --smoke install.cmd --smoke
Rebuild the Python environment from scratch ./install.sh --force-venvs install.cmd --force-venvs

Add --verbose to --check or --smoke for full error details.

The smoke test reports your system, PyTorch, and the GPU it sees, then each tool’s result, the device it used, and how long it took. Tools you have not added say SKIP. It downloads Whisper’s smallest model, and a small separation model if you have none, unless you add --no-download. It saves a report as logs/smoke-report.json in the Scripts/PresTools/Scripts folder.

--force-venvs puts back the components you had.

Option Does
--reaper-resource PATH Installs into the REAPER resource folder at PATH, such as a portable REAPER’s. The REAPER_RESOURCE environment variable does the same.
--torch-backend NAME Chooses the PyTorch build: cpu, auto, a CUDA build such as cu128, or rocm for AMD’s Windows build. On Linux, a ROCm build such as rocm6.4 tries an AMD GPU.
  • Update: quit REAPER, then run the installer from the new package. Your settings, saved workflows, downloaded models, and added components are kept.
  • Remove: quit REAPER, then delete the extension from REAPER’s UserPlugins folder (reaper_prestools.dylib on macOS, reaper_prestools.dll on Windows, reaper_prestools.so and prestools-webview on Linux) and the Scripts/PresTools folder beside it. That folder holds your downloaded models and saved workflows, so move out anything you want to keep first.

REAPER’s resource folder is ~/Library/Application Support/REAPER on macOS, %APPDATA%\REAPER on Windows, and ~/.config/REAPER on Linux. In REAPER, Options → Show REAPER resource path in explorer/finder opens it.

Older versions are on the PresTools releases page.

Next: Use the tools.