Beats and downbeats¶
ShotWork finds the beats in every song you add and draws them under the music lane, so a cut can land on the music rather than near it. Beats come with every song. Downbeats, the first beat of each bar, come from an optional download or from a count you set.
How it works¶
When a song is added, ShotWork analyzes it in the background. The beat lane reads Analyzing beats… until it finishes, and you can keep editing meanwhile. Every beat it finds gets a position and an energy: how loud, or how sharp, the song is at that moment.
The analysis is saved on disk by song file, not by reel. Two reels using the same song share one analysis, reopening a reel is instant, and a song imported in the Library window is analyzed before you ever drop it on a reel. If the file changes on disk, ShotWork analyzes it again.
The beat lane, under the music lane, draws the result:
- A line per beat, full height, over the song's curve, so a quiet passage is visible before you hear it. See Energy.
- Downbeats thicker and brighter than the regular beats.
- Fewer lines when zoomed out. Where lines crowd together, the lane keeps the downbeats and the loudest beats until you zoom back in.
- A glow while you drag. With snapping on, the beats nearest a dragged clip edge grow toward the clips, and the one the edge will land on brightens to the full accent green.
A selected song's settings choose what the lane draws, and what the lane draws is what edges snap to:
| Setting | Effect |
|---|---|
| Beats | Draws the regular beats. With it off, only downbeats draw, and only downbeats snap. |
| Downbeats | Marks the downbeats the downbeat engine found. With it off, they draw as regular beats. |
| Manual downbeats: every | Marks every nth beat as a downbeat instead. See Manual downbeats. |
| Curve | Which curve draws under the beat lines: loudness, attack sharpness or the waveform. See Energy. |
A muted song draws no beats, and nothing snaps to it.
Downbeats¶
Beats alone do not say which one starts a bar. There are two ways to get downbeats:
- The downbeat engine finds them. It is an optional download, installed from Settings › Downbeat Engine…; see Downbeat engine. Once it is installed, new songs start with Downbeats on.
- Manual downbeats marks them by count, with or without the engine.
If the engine cannot place a song's downbeats, that song shows beats only, and "Downbeats unavailable for this track. Showing beats only." appears under its Downbeats switch.
Manual downbeats¶
Turn on Manual downbeats: every and set how many beats make a bar, from 1 to 32; 4 is the default. Every nth beat becomes a downbeat, and while the box is on the count replaces whatever the engine found. Moving or slipping the song never changes which beats count.
The count starts on the first beat ShotWork detected, so a song that opens with a pickup beat marks the wrong beats. The engine handles those songs better.
The count is saved with the song in your music library, so the next reel that uses the song gets it too. You can also set it in the Library window: right-click the song in the Music view and choose Manual Downbeats…. There, 0 turns it off.
Energy¶
The lane always draws the song's curve under the beat lines, and Curve picks which one. Curve: loudness (RMS) is how loud each moment is, which is usually what energy means by ear. Curve: attack sharpness is how percussive it is. Curve: waveform is the signal's own peaks, the shape an audio editor shows, drawn mirrored. The beat lines are full height whichever curve is showing.
The choice sits among a song's settings, but it is one choice for every song on every reel, and ShotWork remembers it. Beat positions are the same either way; only the curve changes, and all three come from the same analysis, so switching is usually instant. In the Library window's Music view, the Beats / Energy column shows a check mark for songs analyzed in the current choice.
Beats land on frames¶
A beat is a measured time and a cut can only land on a frame, so every beat is placed on the nearest timeline frame once, where the reel takes the song in. The mark on the lane, an edge snapped to it, and a cut the assistant snaps all mean that same frame.
What this means when you…¶
- …trim a clip toward a beat: with snapping on, the edge lands on the beat exactly. Hold Shift to drag past it. See Snapping.
- …slip a song under its bar: the beats move with the song and the clips stay put, so cuts you lined up earlier are off the beat until you line them up again.
- …swap the song for another: the new song's beats replace the old ones, after Analyzing beats… if it was not analyzed yet.
- …mute a song: its beats disappear, and nothing snaps to them until you bring it back.
- …turn Beats off: only downbeats draw and snap, which makes cutting on the bar quick.
- …ask an AI assistant for a reel cut to the music: it reads the same beats, from the same saved analysis, and never listens to the song. It has real downbeats only when the engine is installed. See Asking for a reel.
How beats are found
Beat positions come from librosa's beat tracker, run on the song decoded
to mono at 22,050 Hz with ShotWork's own ffmpeg. The curve is sampled
every 23 ms. Each beat's energy is sampled from the song's RMS loudness
or onset strength and scaled to the song's own 95th percentile. With the
downbeat engine installed, beat and downbeat positions come from
beat_this instead: a beat counts as a downbeat when it lies within 10 ms
of one beat_this reports, and energy still comes from librosa, because
beat_this does not measure loudness. beat_this has an optional
post-processing step that depends on models licensed for non-commercial
use only, and ShotWork never runs it. The saved analysis is one file per
song in the beat_grids folder of ShotWork's app data, redone when the
file's size or modified time changes.
Related¶
- Music for adding songs and shaping them on the timeline.
- Downbeat engine to install, verify or remove it.
- Snapping for everything else that snaps.
- Where ShotWork keeps its files for the saved analysis.