Theory & Analysis

Chord detection, scale tools, and score analysis.

Chord chart

The Chord Chart tab in the Tools panel shows a grid of detected chord names - one per bar - across the whole score. Riffwork uses a Krumhansl-style pitch-class frequency algorithm to detect the most likely chord for each bar. (There's also a separate Chords tab that loads an external chord-progression builder at tools.gpdoom.com - not covered here.)

Capo is taken into account - the displayed chord name reflects the sounding pitch, not the fretted position.

Roman numeral analysis

When Roman numeral mode is on in the chord chart, each chord is shown relative to the detected key (I, ii, iii, IV, V, vi, vii°). Major chords use uppercase, minor use lowercase.

Key detection

Riffwork automatically detects the most likely key of the loaded score using a Krumhansl-Schmuckler key-finding algorithm. The detected key appears in the score stats bar and is used as the default root for all generators and scale tools.

You can override the key manually in the generator panel's Root + Quality controls.

Scale View

The Scale tab in the Tools panel shows a native fretboard using the score's actual string tuning. Dots show scale degrees in the selected mode.

Capo Finder

Click Capo? in the toolbar to open the Capo Finder. Given the detected key, it suggests capo positions (0–7) that put the song into guitar-friendly open-chord shapes. Click Apply to set the capo on the main staff.

Song structure view

The Structure tab in the Tools panel shows a color-block grid where each block represents one bar. Bars with similar harmonic fingerprints are shown in matching colors, revealing the song's repeating sections. A legend shows repeat groups. Click any block to jump to that bar.

Chord voicing finder

With a note selected, the chord info chip in the note editor shows the detected chord name. Click Voicings (or use the command palette) to open a panel of clickable fretboard diagrams showing different voicings for that chord. Click a voicing to stamp it at the cursor position.

Score search

Press Ctrl+F to search the score by chord name or section label text. Results highlight in the chord chart and the score jumps to the first match.

Lyrics panel

The Lyrics tab in the Tools panel extracts all beat lyrics from the active track and displays them grouped by section marker as readable paragraphs. Click any word to jump to its bar. Add lyrics via the Annotate panel (Aa).

Piano roll

The Piano Roll tab in the Tools panel shows a canvas view of pitch (Y axis) vs beat position (X axis) for all active tracks. Rows are colored by string. Bar separator lines, bar numbers, and pitch labels on the left. Orange highlight on the cursor beat. Click to jump the score cursor to that beat.

Drum Grid

The Drum Grid tab in the Tools panel is a 16-step sequencer (16th notes, 4/4) for programming a percussion part by hand - click cells to toggle each drum voice on/off per step. Rock beat fills in a basic starting pattern; Clear wipes the grid.

Apply to score → writes the pattern into a "Drums" percussion track, starting at the bar your cursor is on (creates the track if none exists, or overwrites that stretch of bars if it already does) - same starting-point convention as the other generators.