pytheory for Ableton Live

Music theory inside Live: detect keys and chords, generate progressions, melodies and drums, harmonize, arpeggiate, print notation. Offline.

Download ↗ Website ↗ · Source code ↗

Sign in to rate and comment.

pytheory for Ableton Live — screenshot

About pytheory for Ableton Live

pytheory for Ableton Live puts the pytheory Python package ("Music Theory for Humans") inside Live. Detect keys and chords, generate progressions and melodies, harmonize, arpeggiate, re-voice, print sheet music, and more, all one right-click away. The real Python package runs inside the extension via Pyodide (CPython compiled to WebAssembly): no plugins, no system Python, no network, fully offline.

Analyze (right-click any MIDI clip):
- Detect Key: key detection over the clip's notes, with the top scale candidates ranked by fitness.
- Detect Chords: names each chord, its lead-sheet symbol and Roman numeral function in the detected key, and labels cadences.
- Analyze Melody: every note's scale degree, range, how diatonic the line is, and the role of each chromatic note.
- Suggest Next Chord: ranks likely continuations using transition statistics from pytheory's progression corpus.
- Chord Substitutions: relative/parallel swaps, tritone substitutions and secondary dominants.
- Guitar Tabs: fingering charts and a fretboard map of the detected scale, on guitar, ukulele, bass, mandolin or banjo.
- Show Notation: engraved sheet music rendered in the dialog, plus the LilyPond source saved as a .ly file.

Transform:
- Harmonize, Arpeggiate, Conform to Scale, Transpose to Key (scale-degree aware), Smooth Voicings, Invert Melody / Retrograde, Negative Harmony.
- Generate Bassline: follows the clip's chords onto a new MIDI track (roots, root–fifth, arpeggiated or walking).
- Render to Audio: renders the clip with pytheory's synth engine (46 instruments) onto a new audio track.

Generate (right-click an empty clip slot):
- Generate Progression: 14 built-in progressions, your own Roman numerals or chord symbols, or a random walk through the corpus.
- Generate Melody, Generate Scale, Generate Drum Pattern (100 preset patterns with 37 optional fills, General MIDI drum map).

Right-click a scene: Generate Song Sketch (chords, bassline, melody and drums as four new tracks in your key) and Detect Scene Key.

Audio and samples: Detect Key & Chords on audio clips (key, estimated tempo and chord progression), Convert to MIDI (pitch tracking onto new MIDI tracks, optional bass/melody split), and Tune to Set Key for samples and Simpler devices.

Install: download pytheory-<version>.ablx from the Releases page (about 25 MB, it bundles the Pyodide runtime with numpy and scipy wheels) and drop it onto Live's Settings → Extensions page. Requires an Ableton Live build with Extensions support (Live 12.4.5 Suite beta or later). MIT licensed; source on GitHub.

How to install

  1. Download the extension from the author's link above.
  2. In Ableton Live 12 Suite (beta 12.4.5+), open Settings → Extensions and add the .ablx file.
  3. Right-click a midi clip in your Set and pick pytheory for Ableton Live from the menu.

Extensions run real code on your computer. Only install extensions from authors you trust, and save your Set first. More on safety →

Comments (0)

  • No comments yet.

More MIDI tools

Reverse MIDI

Adds "Reverse Notes" to any MIDI clip: mirrors note timing within the clip, keeping pitch and length, in one undo step.

Free ☆☆☆☆☆ no ratings yet · 0 downloads

Progressive

Generates famous chord progressions in any key as MIDI-mappable Session clips (or an Arrangement row) for songwriting.

Free ☆☆☆☆☆ no ratings yet · 0 downloads