Automation Score
Overview
Automation Score is a browser-based editor for generic breakpoint lanes. It is useful when several automation curves need to be composed together before being assigned to REAPER tracks or effect parameters.
The lane names are intentionally generic. The JSON stores normalized 0..1
values, so the same field can later target track volume, an FX parameter range,
or another mapping added in a future loader.
Section markers can be added to describe the form of the score. These are stored in the JSON and can be written as real REAPER project markers by the loader.
Export
Use the breakpoint canvas to add, move, and shape lanes. The generator panel can fill one lane or all lanes with ramps, waves, gates, random walks, mirrored pairs, and staggered shapes. Relationship tools can generate coordinated lane behavior, and derived lanes can be made from the selected lane by complement, inverse, lag, offset, smoothing, gates, or seeded variation. Export writes a JSON file containing editable breakpoints, section markers, and sampled points at the chosen point rate.
Loading In REAPER
Run Load Automation Score JSON with one or more destination tracks selected.
The loader opens an ImGui assignment window where each score lane can be mapped
to a selected track’s volume envelope, to an FX parameter envelope, or skipped.
The write mode can append the score at the chosen start time, or replace
existing envelope points inside the score range before writing.
For track volume, lane values are mapped through a dB range before REAPER
envelope points are written. The default range is -48 dB to 0 dB, which
usually gives a visible and audible envelope shape.
For FX parameters, lane values are mapped through a normalized parameter range. The assignment table lists FX and parameter names from the selected track.
The loader includes automatic assignment buttons for volume across selected tracks and sequential FX parameters, but the per-lane table can be edited before writing.
If the JSON contains section markers, the loader can also write them as REAPER project markers at the corresponding positions within the imported score range.
Max Bridge
The optional Max bridge in Scripts/s3g-mc/utilities/automation-score-max-bridge
reads the same Automation Score JSON. Open Automation Score Player.maxpat,
drop a JSON export onto the patch, then use the playback controls to output
interpolated lane values, marker hits, and timing metadata at control rate.
The default output is OSC-style token data:
/automation/lane lane-index normalized-value. The address is a single
Max symbol followed by payload atoms, so Max route objects can parse the lane
stream directly. Other modes are available for compact normalized values,
MIDI-CC-style 0..127 values, and more descriptive generic lane messages that
include the lane name and enabled state. Print gates are closed by default so
the patch can run without filling the Max console.
The Max bridge uses five outlets:
1 lanes
2 clock
3 metadata
4 markers
5 status
In the default OSC mode, marker hits use
/automation/marker marker-index marker-name time-seconds bang.
Send speed n to the player to scale running playback without changing the
stored score timing. For example, speed 0.5 plays at half speed and speed 2
plays at double speed.