Describe the level meters and the limiter at the output (#359)

- Songs has a new section Levels and clipping: what the meters of the
  tracks and Out show, where they measure, the clip lamp, grey meters
  and the measured values from e2e 65.
- The heads and the ruler in the Song tab name the meters.
- Sounds tells of the fixed limiter after the master, its 5 ms delay
  and that it waits for the FX worklet.
- Development counts 1901 editor checks.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
adminandClaude Opus 5.5 committed 2026-10-08 22:08:52 +02:00
1 parent 1cc084d415
commit 4cace5520b
3 files changed
+38 -3

No files matched your search

+1 -1
@@ -19,7 +19,7 @@ php tests/php/accounts.test.php # the API's accoun
php tests/php/snapshots.test.php # the snapshot store (#231), the same way
php tests/php/releases.test.php # the release store (#266), the same way
php tests/php/files.test.php # uploaded files in a folder per account (#344), the same way
node tools/seed-e2e.mjs && node tools/e2e.mjs # 1898 editor checks, screenshots in /tmp/gm-e2e-*.png
node tools/seed-e2e.mjs && node tools/e2e.mjs # 1901 editor checks, screenshots in /tmp/gm-e2e-*.png
GM_STEPS=20 node tools/e2e.mjs # or 1-12, or 6,20 — a subset while working on one step
./e2e.sh start [GM_STEPS] # the same run detached, see below
./e2e.sh status # live progress, or the last run's result
+29 -2
@@ -56,8 +56,8 @@ the right: it starts that far before the end of a round.
Down the left are the **heads** of the tracks: the name, **FX** (the track's sound FX, blue when it
has one; its menu can also make [one of its own](#a-sound-fx-of-its-own)), **M** (mute, orange when on) and **S** (solo, yellow when on), below them the volume (the line marks 0 dB) and the pan (the line marks the
middle). A track is added from the right-click menu of a head, above or below it. Along the top is the **ruler**, as in the
Pattern tab. Between them are the **lanes** with the items: a pattern blue with its notes drawn
middle), and up the right edge the track's [level meter](#levels-and-clipping). A track is added from the right-click menu of a head, above or below it. Along the top is the **ruler**, as in the
Pattern tab. Left of it, above the heads, is **Out**, the meter of the whole song. Between them are the **lanes** with the items: a pattern blue with its notes drawn
small, every round it plays; a sound green with its waveform, from where it starts in it, every
round drawn alike (each column shows the loudest part of what it covers). An item
longer than what it plays has a white line with a small notch where it starts over, one for every
@@ -190,6 +190,33 @@ pattern at bar 3 on the third, at 120 BPM, were planned 4 s apart, the pattern's
each on the bus of its track; a track turned down to -6 dB was set to 0.501 on its bus, and muting a
track while the song played closed its send to 0 (since #350; its own level stayed at 1).
## Levels and clipping
While the song plays, every track has a **level meter** up the right edge of its head, and **Out**
above the heads shows the whole song (#359).
- **What they show:** the loudest sample on the left and on the right side, as a bar each, from
-48 to +6 dBFS. Green, yellow from -6 dB, red past 0 dB. A line marks the loudest peak, it holds
for 1.5 s and then falls.
- **Where they measure:** a track after its sound FX, volume and pan, before its links. Out after
the song's own sound FX, before the bus of the song and the master. Both measure before the
[limiter at the output](Sounds#buses-and-the-master), so they show what the mix would be without
it.
- **Clip lamp:** once a sample was past 0 dBFS, the far end of the meter stays red, through Stop
as well. Out also writes the loudest peak since Play in dB, red past 0. The next Play or a click
on the meter puts the lamp out. A red lamp means the limiter is at work there: turn something
down.
- **Grey** is the meter of a track that mute or solo keeps from being heard. It runs on with what
the track would give, as long as its own items are heard. A track that solo silences shows
nothing, because solo shuts off its items before the track.
- The meters only run while the song plays and its tab is shown. They sit beside the sound, not in
its way, and add no delay.
Measured (2026-10-08, e2e 65 on the CI's Windows machine): with every track and the sound item at
+12 dB, Out wrote +16.6 dB and both meters lit their clip lamps. Behind the limiter the loudest
sample over 6 s was 0.8913, which is -1.0 dBFS. After Stop no bus was tapped any more, the lamps
stayed lit, and a click on each meter put its lamp out.
## Recording
**Record** records from a microphone or another input while the song plays (#342). The first time
+8
@@ -253,6 +253,14 @@ for everything on it.
*Master*, so every project has exactly one. A new project has only the master; buses are made as
needed.
**After the master** comes a fixed **limiter** before the speakers (#359), in the editor and in the
game. It lets no sample past -1 dBFS, so a mix that is too loud is squeezed instead of clipping
hard. It cannot be set or turned off, and it is no excuse for a mix that is too loud: the level
meters of the [Song tab](Songs#levels-and-clipping) show where it is at work. It looks 5 ms ahead,
so everything is heard 5 ms later. Playing a song or pattern, the playhead and a recorded take
count that in. It needs the FX worklet. Until that is loaded, a moment after the first sound, the
master goes straight out.
**No loops.** *Into* never offers the bus itself, nor a bus that already goes into it. Should a
project still hold a loop (written by hand, say), the buses on it go into the master instead.