Dusty Keys · Generative Beat Writer
Rows play the keys patch. The sequencer and the written track share one clock.
Click keys or type A W S E D F T G Y H U J K · Z / X shift octave
Crackle skips the effects entirely — the record surface doesn't get reverb, and it doesn't duck.
Delay time syncs to the current tempo (16th → dotted quarter). Chorus, reverb and delay run before the tape, so the tape records them along with everything else.
A three-layer keys synthesizer with a generative beat writer and a tape chain. Everything you hear is synthesized in the browser — no samples, no recordings, including the vinyl crackle.
A style sets the tempo range, the swing, the bassline's vocabulary, the kit and how tall the chords stack.
Every track is 52 bars — intro, main, lift, main, break, lift, main, outro. That's about 2:30 at 82 BPM and past three minutes at Drift tempos. A beat like this is a loop that gets dressed differently, so the movement is in what's playing: the melody is the hook and only turns up on the lifts and the break, and the break drops the drums out entirely.
The intro and the outro are drawn per track, because they're the two moments anyone notices and they used to be the same every time. A track might open on keys alone, on keys and a pad, with the bass already in, on the hook stated before anything else arrives, or on the beat first. When the kit is in the intro it has its own way of arriving — hats before the kick, a bare kick pulse, rim clicks, a shaker — and hands over with a pickup rather than just stopping. Endings vary the same way: ringing out with the drums gone, a beat tail, one last statement of the hook, or all five parts together. The Sections readout names which ones this track drew.
Both taper: the intro comes up from about three-quarters strength and the outro winds down to about three-fifths. Shallow deliberately — a taper you actually notice is a fade, and fading is the export's job rather than the arrangement's.
The main loop, the lift and the break each get their own changes — the intro sets up the main loop and the outro sends it off — so the lift is a lift rather than the loop again. Changes are four or eight bars long, and are either drawn from a pool of progressions or written chord to chord and then scored on how strongly they move. Chords stack to sevenths and ninths — bare triads turn up about one track in twelve. Drift vamps instead, and holds one groove across everything but the break.
The vocabulary is written toward Japanese film harmony rather than toward jazz standards, and three habits do most of that. Progressions avoid cadencing home: the royal road — IVmaj7 V7 iii7 vi7, the one everyone knows from Ghibli films and Japanese pop — lands on the relative minor, so the loop never actually finishes. Secondary dominants do the pulling instead of the plain dominant, leaning into a chord one bar before it arrives. And the fourth degree carries the colour: a borrowed minor iv under a major tonic, or a major IV under a minor one. About three tracks in five contain one of these; more than two in a progression is a different key badly spelled, so they're rationed.
Celtic and Medieval opt out of all of that. Both are modal rather than functional: they keep to their own progressions, never borrow a secondary dominant — a leading tone is the one thing those idioms predate — and don't stack chords in thirds at all. Medieval builds open fifths and octaves, Celtic builds suspensions, and a chord with no third is neither major nor minor, which is most of why they sound older than everything else here.
A kit is a one-click set of sounds for the whole arrangement — the keys, the bass, the melody and the pad at once. In this genre the keys are the record, so unlike the other apps here the kit sets those too. Hover a kit to see what it's made of.
The Preset Sounds grid still overrides the keys afterwards. Doing that leaves the kit lit, because it's still describing the other three parts, but marks it with a dot — the same way an edited preset is marked.
Root-position stacks are what a computer plays. Each track draws a hand instead: drop 2 takes the second note from the top down an octave, rootless leaves the root to the bass entirely (which is why those chords float), spread opens the voicing across two octaves, and shell plays the root, the third and the top extension with nothing in between. The readout under Generate names the one in use.
Swing is how late the off-beat eighths land — 0 is a straight grid, past 80% is close to a triplet feel. The odd sixteenths follow at half the distance. Picking a style sets its own swing, and you can move it afterwards.
Human is everything past that: parts that sit behind the beat by habit — the snare drags about 15 ms while the kick stays put, which is the single most imitated thing about this music — plus a few milliseconds of scatter on every hit and a little variation in how hard it lands. Both are baked in when the track is written, from the track's own seed, so an export lands on exactly the same microseconds as playback.
The backbone — kick on the one, snare on the backbeat — is what makes a beat readable, so it holds. Everything around it is drawn per track: which extra kicks the pattern carries, whether the hats run eighths, sixteenths or off-beats, whether a shaker runs underneath, whether the ghost snares between the backbeats are there at all, and the order the four fills come in. Sections then play it differently, and the logistic orbit ornaments every bar on top.
The keys track plays one of two ways, your choice on any style. Comping strikes the whole voicing on the style's own figure — landing off the beat, because the downbeat belongs to the kick — and the Hénon map thins it, so some strikes drop the top note the way a player's hand doesn't catch every key. Arpeggio walks the chord tones on a figure drawn per track: up, down, up-and-down, a pedal against a fixed note, the broken 1-5-3-8, or a Hénon-driven scatter. Either way the lift reaches an octave higher.
Every track comes from a seed shown in the Seed box. Each Generate rolls a new one. Close the lock beside it (or type a seed) to keep it — the same seed always rebuilds the identical track, including the timing scatter, so you can tweak the tape deck against a beat you like. The lock turns sage when it's holding.
A phrase is a motif and three answers to it, not four bars of fresh notes. One bar is composed, then restated — holding its rhythm exactly, because rhythmic identity is what the ear latches onto, while its pitches shift to sit on the chord underneath. The shift is in scale degrees, so each answer is a diatonic sequence of the statement, and the fourth bar closes on the opening gesture. That's the difference between a line you can hum back and a line that merely never repeats.
Two styles ornament. Jazzhop takes a grace note a semitone below its target — the only chromatic note in the melody — and Medieval takes the upper neighbour a diatonic step above, since plainsong has no chromaticism to borrow. Sparingly, and the ornament belongs to the motif rather than to the bar: it comes back in the same place every restatement, the way a player's ornament is part of the tune rather than something sprinkled on top.
Motifs are auditioned rather than accepted: several are written and the best kept, scored on having three to six notes, a range inside an octave, and mostly steps and thirds rather than leaps. Notes lean toward the pentatonic degrees — leaving out the fourth and the seventh is most of what makes a tune singable — without being confined to them, so the other degrees still turn up as passing tones.
The raw material comes from chaotic systems filtered through a policy that learns as it composes — chaos proposes, taste disposes.
One voice is three layers and a filter. The Tine is a sine modulating the body's frequency with its own fast-decaying index — the metallic strike at the front of an electric piano, gone before the note is. The Body is what you actually hear, optionally doubled and detuned so it beats against itself, with a Sub an octave down for weight. The Filter has its own envelope and always closes faster than the amplitude one: the top end leaves first, which is the most recognisable thing about a sound that's been through tape. This patch drives the keys track, the sequencer and the live keyboard.
These are two panels because they're two different kinds of thing, and the app keeps them apart in the signal chain as well as on screen. The Tape Deck is what the medium does to the result whether you asked for it or not; Effects are the processors you'd have chosen to patch in. They sit together at the foot of the page, deck first — which is the reverse of the order the signal takes them in. The effects run first, so the tape records the finished mix, reverb and all. The other way round you'd get reverb on the tape hiss.
Effects — DSP, ahead of the tape:
Tape Deck — the medium:
Click the keys or type A W S E D F T G Y H U J K. Z and X shift octave. With a mouse, hold and slide across the keys for a glissando. On a phone a tap plays and a sideways drag scrolls the keys, so the octaves off-screen stay reachable.
MP3 and WAV are rendered offline — faster than realtime, and they capture your mixer levels, mutes and the whole tape chain exactly. On Export MP3 or Export WAV you're asked how to save:
MIDI writes one track per part with the drums on channel 10. Texture has nothing to write — it isn't a performance.
The More button at the top left of the panel opens the Liquidus Labs app directory — the same list every app in the family shows, so it's always current. It loads the first time you open it; if it's slow, there's a link to open it in a new tab instead.
Created by: Wilfredo Bigol Jr
Licence
The music is yours. All generated and exported audio is released under the Creative Commons CC0 1.0 Universal Public Domain Dedication. You may copy, modify, distribute, and perform the work, even for commercial purposes, all without asking permission.
The engine is not. The Chaos Engine — the generative system behind this app — is the intellectual property of Wilfredo Bigol Jr. Reproducing, distributing or modifying it, in whole or in part, without permission is prohibited.
MP3 encoding by LAME (lamejs 1.2.1), used under the LGPL-3.0 and kept as a separate, replaceable file.
How should this track be written out?
Stems keep your mixer levels and still duck on the kick; each carries only its own reverb and delay tails. Your browser may ask to allow multiple downloads.
Preparing…