Skip to content

PresTools in Prest

PresTools is built into Prest. Its tools separate stems, map the tempo, find chords, recognize and time lyrics, transcribe a stem to MIDI, and correct tuning and loudness. Each tool opens in a window of its own over the timeline and writes its results into the project in front. You then see and edit them on the timeline.

There is nothing else to install. The first time a tool needs a model or a component, its window offers to download it, and says how large it is and under which license.

The toolbar has a button for each tool: Separate, Tempo, Chords, Lyrics, Transcribe, and Correct, then Workflows and Activity. Point at a button to see its name. When Prest’s window is too narrow for a button each, one menu, PresTools’ tools, holds them all.

  • Click a tool’s button to open its window, and click it again to close it. The button stays lit while its window is open. The window’s Close button closes it too.
  • The timeline keeps playing, scrolling, and selecting under the windows. Several windows can be open at once.
  • A window opens at the bottom right, over the tracks. The next one opens beside it while there is room.
  • Drag a window by its title to move it, or by any edge or corner to resize it. Prest remembers its place and size for the next time.
  • Click a window to bring it to the front.
  • Tempo, Chords, Lyrics, Transcribe, and Correct have a How this works button that explains the tool in detail.

Keys such as Space act on the timeline only when it has the focus. After you work in a tool window, click the timeline before using its keys.

A tool works on the clips you select, and its window follows the selection while it is open.

  • Click a clip to select it. ⇧-click adds more.
  • Click a track’s name to select all of its clips.
  • Drag across the timeline to pick a range. The Tempo tool reads it as the time selection.

Separate, Correct, and Workflows can also run on files that are not in the project: with no clip selected, their window offers choose files and a folder. In Separate and Workflows, tick A project per file to give each file a Prest project of its own, saved with its stems.

A tool hears a clip as it plays: trimmed, looped, at another rate or pitch, reversed, or stretched by markers. For such a clip, Prest hands the tool a WAV of what it plays, from the clip’s start; a clip that plays its whole file untouched is read as it is. The clip’s volume and fades are not part of what the tool hears.

Every change a tool makes to the project is one step for Undo (⌘Z, or Ctrl+Z on Windows and Linux).

Tool What it writes into the project What it needs to download
Separate A track for each stem under the clip’s track, and the stems’ WAV files beside the song Each model you choose, on its own
Tempo Beat markers on the Bars lane, then the tempo map Beat detection, 81 MB
Chords Chords on the Chords lane; with the chord chart, sections on the Sections lane Chord recognition, 29 MB
Lyrics Words on a Lyrics lane, each where it is sung Lyrics recognition, 3.1 GB; alignment, 24 MB
Transcribe A MIDI track under the stem’s track, named Score and the stem, such as Score Bass Transcription, 395 MB
Correct The clip’s rate, pitch, and volume, so that it plays in tune or at a loudness Nothing
Workflows Several of the above in a row, for one song or many What its steps need

Transcribe and Correct are new since PresTools 0.1.0 for REAPER. They reach REAPER users with PresTools’ next release.

  1. Select the song’s clip, or choose files.
  2. Open Separate and choose a model. Get more… opens the model library.
  3. Under Writes, tick the stems to keep, or choose All or None. Two extra tracks are optional: Also the ticked, mixed sums the ticked stems, and Also the rest, mixed is the song without them.
  4. Advanced holds the model’s own settings, if it has any.
  5. The window says what you will get, for example “You’ll get 4 tracks under the song, and their files beside it”. Choose Separate. A model that is not downloaded yet shows Get with its size and separate, and downloads first.

Expected result: each stem is a 32-bit float WAV named after the song, such as song_vocals.wav, beside the song. Each appears on a new track named after its file, under the clip’s track, starting where the clip starts. A file the project already plays is not added again.

The Models window lists the models this build can run. Search by name, architecture, or stem, filter by Category, show installed models only, and mark favorites. Double-click a model to separate with it. Before a model downloads, Prest shows the license its author gives it.

Models range from a few megabytes to several gigabytes. Models whose authors tag them non-commercial are not offered, and models with no stated license are hidden unless you ask for them. Check a model’s terms before you use it commercially.

  1. Select the song’s clip.
  2. Open Tempo and choose Detect beats.

Expected result: the beats and downbeats appear as beat markers on the Bars lane, and the tempo map is built from them. The bars now follow the music, and snapping and the metronome become available. The song gets a count-in bar before its first downbeat. If there is no room for it, time is inserted where the song’s audio begins, so the song and everything after it move later together.

  • Turn off Build the tempo map to stop at the markers and check them first. Then choose Apply markers.
  • First song’s count-in in bar 1 lays out the first song from the top: bar 1 is its count-in and its first downbeat is bar 2.
  • Click track renders a click on every marker, accented on downbeats, onto a track named Tempo preview, so you can hear the markers before they become the map. Remove clicks takes it away; applying the markers removes it too.
  • Map to markers reads an existing tempo map back as beat markers, to correct and apply again.

Edit markers fixes a detection at the wrong speed or meter. Each edit is one undo step, and nothing changes in the tempo map until you apply the markers.

  • Halve keeps every other marker, and Double puts a beat in every gap. Both work in the range you picked, or on the whole song without one.
  • Fill the gap spreads the number of Beats you give across the gap the playhead is in.
  • Set on the nearest marker starts a bar with the Time signature you give, such as 3/4 or 6/8, at the marker nearest the playhead.

The gear opens Detection settings: Min BPM (55) and Max BPM (215) to stop half-time or double-time, Tempo stability, Beat sharpness, and Time signatures (add 3 for a waltz). Defaults puts them back.

  1. Select the song’s clip. Map the tempo first if you want the chords on the bars.
  2. Open Chords and choose Find chords.

Expected result: the chords appear on the Chords lane, spelled for the song’s key as it moves through the song, and the window says how many it found and in which key. Find chords again replaces only the chords under that clip. Chord recognition runs on the computer’s processor and takes seconds for a song.

Turn on Snap to grid to put the chords on the bars, to the nearest sixteenth, and to edit them as a chart. Without a tempo map those bars are 120 BPM in 4/4, which has nothing to do with the song.

With Snap to grid on, the window shows the chords as text, bar by bar, for example 9: | C | G/B Am | F / G / |, where 9: is the first bar’s number. The chords in a bar split it evenly. Type / or . to hold a chord, % to repeat the bar before, and N.C. for silence. A line such as [Verse] starts a section at the next bar. Lines with mistakes are listed under the chart. Choose Apply chart to write it, or Discard edits.

  1. Select the vocal stem’s clip. Use the full vocals, backing included: a lead-only stem aligns worse, and with the band still in, recognition hears words that are not there.
  2. Open Lyrics. Leave Language on Detect language, or choose the language sung.
  3. Choose a Whisper model, then Recognize. The words appear in the editor as a draft; nothing in the project changes yet. If the editor already holds your own words, the draft waits behind Use recognized words.
  4. Correct the words. Lines stay as you break them. Labels in [square brackets] are left out, and words in (parentheses) are treated as backing vocals: they are not timed, and follow the word before them.
  5. Choose Align lyrics.

Expected result: the Lyrics lane shows each word where it is sung. Aligning again replaces the lyrics it overlaps.

The Whisper models are tiny, base, small, medium, large-v2, large-v3, and large-v3-turbo. large-v3 is the default and the most accurate, and downloads about 3 GB the first time; large-v3-turbo is faster and nearly as good. Alignment works in English and over 60 other languages. If you already have the words, type or paste them and align: recognition is not needed.

Import UltraStar .txt, at the top of the window, needs no selection. It writes each note at its pitch with its syllable, from the file’s #GAP. A duet’s second singer goes on a track named Lyrics 2.

To save timed words as a .lrc file, see Projects and files.

  1. Select a stem’s clip: one Separate wrote, or any recording of one instrument.
  2. Open Transcribe and check the Model. It is chosen from the track’s name, so song_bass starts with Bass (tsumugi), and the model you pick for a stem is remembered for it. The menu names each model after the stem it is for, with what it is built on in brackets.
  3. Choose Transcribe.

Expected result: a MIDI track right under the stem’s track, named Score and the stem, such as Score Bass, with one clip as long as the stem’s. All instruments writes a track for each instrument it hears instead. Transcribing the same clip again replaces the last run’s MIDI on those tracks, with any edits you made there.

Model For
Bass A bass stem
Drums A drum stem, written on channel 10, General MIDI’s drums
Guitar A guitar stem
Piano and keys A piano or keys stem
Vocal melody One sung line, the lead; the model a vocal stem starts with
Vocal harmony Several voices at once, for backing vocals
Other instruments What an “other” stem holds: strings, brass, synths, and more
All instruments A whole mix, or a stem whose name says none
  • Snap to grid puts each note’s start and end on the tempo map’s sixteenths, so that the score reads cleanly.
  • Velocity sets each note’s velocity from the audio. Off, all notes have one velocity.
  • Pitch bend, for Vocal melody only, writes slides and vibrato as pitch bend.
  • The gear opens the model’s settings. Defaults puts them back.

A Score track can be shown in Prest’s score view: see Scores.

  1. Select the clips, or add files with the window’s Add files or Add a folder buttons.
  2. Open Correct and tick what to correct:
    • Tuning: the pitch A is tuned to, in Hz (440 unless you change it), by Varispeed (pitch and tempo together, as a tape running off speed) or Pitch only (the tempo stays).
    • Transpose: the semitones to shift by, from −24 to 24. Preserve formants keeps a voice’s character as its pitch shifts.
    • Loudness: the integrated loudness to reach, in LUFS (−23 unless you change it).
  3. Choose Measure to see each clip’s tuning in cents and its loudness in LUFS first, or go straight to Apply.

Expected result: each clip plays corrected, from its own measurement: Prest sets its rate, pitch, and volume. Nothing is rendered and the file is left as it is; Undo takes it back. Files added by hand are written corrected beside themselves, as name_corrected.wav; with only such files, the button says Write files.

Tuning reaches half a semitone either way: a song 60 cents sharp reads as 40 cents flat of the next note, and a measurement near ±50 cents is marked. Loudness is a gain only: nothing is limited, and a true peak that would pass 0 dBTP is marked.

Workflows opens in a large window of its own. A workflow runs several steps in a row on each song: separation steps, then any of Tempo map, Detect chords, Recognize lyrics, Align lyrics, Transcribe, and Correction. For example: split the song, clean up its vocal stem, then map the tempo, find the chords, and time the lyrics.

  1. Choose New workflow, open a saved one, or Import a workflow file.
  2. Build the rack. Add steps with Add a step or a node, and drag a stem from one step into the next. Drag a stem to Output to write it beside the song. Wildcards lists what a file name can hold, such as %filename% and %stem%.
  3. Give it a Name, and save it.
  4. Under Run on, select clips on the timeline, or choose files or a folder. Writes lists the files it will write.
  5. Choose Run.

Workflows are saved in PresTools’ shared folder, where PresTools for REAPER sees them from its next release (0.1.0 keeps its own). Import a workflow file takes a workflow in pymss’s format (.yaml or .yml) written elsewhere. Closing the window with unsaved edits asks first.

Activity (⌘B, or Ctrl+B on Windows and Linux) lists what the tools run: running and queued runs first, then finished ones, newest first. A run shows its progress while it runs, with Cancel. A failed run keeps its reason in the list. What the tools report also shows on the status line at the top of Prest’s window.

The gear on the toolbar opens Settings. Its PresTools page has:

  • Runs on: Use the GPU, named after the GPU PresTools found. Turned off, everything runs on the processor. Whatever the GPU cannot run finishes on the processor anyway.
  • Models: how many separation models are installed and their size on disk, the folder they are in, and the model held in memory, with Release to free the memory.
  • Components: each tool’s component, with Install and its download size, Remove, and Licenses. Removing one deletes it and the models it downloaded; you can install it again.
  • This machine: the system, and the folder of PresTools’ settings and logs.
Component Enables Download
Stem separation Separate, Models, Workflows Each model you download
Beat detection Tempo 81 MB
Chord recognition Chords 29 MB
Transcription Transcribe 395 MB
Lyrics recognition Recognize, in Lyrics 3.1 GB for large-v3; other sizes when first used
Lyrics alignment Align lyrics, in Lyrics 24 MB

PresTools runs inside Prest: there is no separate program. It starts with Prest and ends when Prest quits.

  • Mac with Apple silicon: the models run on the GPU.
  • Intel Mac: the models run on the processor, more slowly.
  • Windows and Linux: the models run on an NVIDIA GPU (compute capability 7.5 or later) when its driver is 535 or later and CUDA 12’s cuBLAS and cuRAND are installed; otherwise on the processor. Nothing of NVIDIA’s ships with Prest.

Chord recognition and lyrics alignment always run on the processor; they are small. If the GPU fails during a run, the run finishes on the processor.

Shared. Components, models, settings, and saved workflows are installed once per computer, in PresTools’ shared folder, for every app on the computer that runs PresTools: Prest, and PresTools for REAPER from its next release.

Prest’s own. PresTools’ task history, logs, and temporary files for Prest are in Prest’s own folder, apart from REAPER’s.

Settings → Folders shows both. Where Prest keeps things lists them for each system.

Next: Stage screens.