Skip to content

Song sketcher — perreo, cumbia, folk, bossa, darkwave

Original songs in five genres, from perreo to bossa nova, as WAV and MIDI

Song sketcher — perreo, cumbia, folk, bossa, darkwave with its default settings

Screenshot of the tool as it opens; it is a real capture, not a mockup.

Thanks, your report was sent.

Report a problem or a newer version
What is it?

No name or address needed, and please leave personal details out of the note. Only I read reports, and each is deleted after 90 days; the privacy page has the details.

What it makes

An original song, 2 to 10 minutes long, generated from a seed, in one of five genres. Alt-perreo: intro, verses, pre-choruses, choruses, bridge or breakdown and outro, with minor-key progressions, a dembow or half-time groove with trap hi-hat rolls, a gliding 808 sub, reverb-washed pads, a detuned pluck with a dotted-eighth delay, risers and impacts, optional lo-fi texture, and an optional crossover: distorted drop-D chugs, double kick and breakdowns (metal), off-beat skanks and horns (ska), or both. Chamber folk: long verses, a refrain that comes round, an interlude and a coda, in major, mixolydian, dorian or aeolian, as a 3/4 waltz or in 4/4, with a Karplus–Strong harp playing ostinato figures and glissandi, an oboe counter-line (or melody when no one sings), accordion, a string section and a walking upright bass. Cumbia: an accordion that plays melodies in thirds between verses and off-beat stabs under the voice, güira scraping every beat, llamador and conga, and a bass on one and three. Bossa nova: syncopated nylon-guitar chords over a thumbed bass, shaker sixteenths, a two-bar cross-stick figure, soft strings and an oboe line. Darkwave: driving eighth-note synth bass, a straight backbeat with snare fills, cold pads and a chorused pluck. Any genre can borrow any other's instruments. Every song has a motif-based lead melody in a singable range to use as a vocal guide. Export a 44.1 kHz 16-bit stereo WAV, a format 1 MIDI file with one track per instrument plus tempo, meter, key and section markers, or the settings as JSON.

How to use it

  1. Pick a genre and a vibe preset, then press New song until one grabs you, or type any word into Seed. The same seed and settings always make the same song.
  2. Choose Simple or Advanced at the top of the panel. Simple shows the genre, vibe, length and mood (plus a chord sheet to sing over on a wide screen); Advanced adds the arrangement, crossover, song settings, mixer and theme. On a wide screen, drag the divider beside the panel (or the one between the section list and the inspector) to give either side more room; double-click it to reset.
  3. Under Mood, pick a place to land: Rainy day (slow, soft, hazy, minor), Sunny afternoon (bright, bouncy, dry, major where the genre has it), Late night (unhurried and low, the lead close), Dreamy (the beat far back, the biggest room) or Party (fast, full, punchy). Each sets the tempo within the genre's usual range, energy, groove, lo-fi, reverb and the mixer; More upbeat and Less upbeat nudge them a step at a time. The seed and key stay, and every control a mood moves can be fine-tuned in Advanced.
  4. Set the essentials (key, mode, tempo, and groove or meter), then energy.
  5. Add or remove instruments under Mixer, from either genre. Each section plays them on Auto; tap a part in a section's inspector to switch it on or off there.
  6. Click a section in the timeline or the arrangement list to edit its type, bars and chords. Drag a section by its grip to reorder it (Alt + arrow keys from the keyboard); duplicate, remove or add sections, and use New melody to rewrite a section type's melody.
  7. In alt-perreo, Crossover brings in Metal, Ska or Ska-metal; Collide rolls a random one.
  8. Press Play (or the space bar); Pause keeps your place and Stop goes back to the start. Click a section's name in the timeline to jump to its start, or anywhere else to jump to that moment. Loop section repeats the selected section while you write. The repeat button loops the whole song; the keep-playing button starts a new song (a new seed) each time one ends, and under Playback you choose whether it stays in this genre or can be any of the five.
  9. On a phone or tablet, keep it playing with the screen off: once the clock says Screen-off ready, lock the phone or switch apps and the song carries on, with play, pause, seek and next on the lock screen. An edit plays straight away and the song is rendered again a moment later; with keep playing on, the next song is rendered while this one plays.
  10. Balance the mixer, pick a theme, then export a WAV to sing over or the MIDI to open in a DAW.

Build notes

  • All sound is synthesized with the Web Audio API: oscillators, noise, filters, Karplus–Strong plucked strings for the harp, nylon guitar and upright bass, congas and güira shaped from sines and noise, a convolution reverb with a generated impulse, and a compressor. There are no samples, and nothing is fetched or sent.
  • Progressions come from pools of common moves in each mode and the melodies are generated from short motifs, so each seed gives a new original song rather than a copy of an existing one.
  • The default song renders to WAV in a few seconds; a 10-minute song takes proportionally longer.
  • Phones stop live Web Audio when the screen goes off, so on a phone or tablet a playing song is also rendered, as the WAV export does but at 32 kHz, and played through the browser's audio player with Media Session controls. It is ready as soon as the render is (a few seconds for a default song on a laptop, longer on a phone); an iPhone locked before then stops until it is unlocked. A slow phone, judged by how long the drum sounds take to render when the page opens, gets a shorter live reverb and a render that leaves the live engine room. Desktop browsers keep playing live.
  • Drums, hats, 808, pluck, FX and the crossover parts are written for 4/4 and sit out in 3/4.
  • MIDI tracks use General MIDI programs as placeholders; drums and hats are on channel 10.

Versions

The site runs the newest. Every earlier version stays downloadable, unchanged, for builds already under way.

  1. 2.8.0current

    Smoother on phones, especially slower ones: an edit no longer leaves a short silence before the live engine takes back, the switch to the screen-off file no longer doubles a beat, and preparing that file no longer stalls the page. The file is rendered at 32 kHz, which is quicker and smaller with no audible loss, and a slow phone gets a shorter live reverb and a render that leaves it room to breathe. Desktop playback and the WAV export are unchanged.

    Download 2.8.0 of Song sketcher — perreo, cumbia, folk, bossa, darkwave
  2. 2.7.0

    Keeps playing with the screen off on phones and tablets: a playing song is also rendered in the background and handed to the browser's audio player, with play, pause, seek and next on the lock screen. Edits still play straight away and are rendered again a moment later; Keep playing renders the next song ahead. Desktop playback and the WAV export are unchanged.

    Download 2.7.0 of Song sketcher — perreo, cumbia, folk, bossa, darkwave
  3. 2.6.0

    Drag the divider between the song and the controls, and between the section list and the inspector, to resize them. Repeat loops the whole song; Keep playing starts a new song, from this genre or any, when one ends. Inputs no longer spill past the panel edge, section rows line up, and the header wraps cleanly.

    Download 2.6.0 of Song sketcher — perreo, cumbia, folk, bossa, darkwave
  4. 2.5.0

    The mood you pick stays lit until you change one of its controls yourself. More and Less upbeat flash when pressed and show how many steps you have nudged.

    Download 2.5.0 of Song sketcher — perreo, cumbia, folk, bossa, darkwave
  5. 2.4.0

    On a wide screen, Simple mode fills the space under the timeline with a chord sheet: every section's chords bar by bar, the playing section lit, click to jump.

    Download 2.4.0 of Song sketcher — perreo, cumbia, folk, bossa, darkwave
  6. 2.3.0

    Length is in Simple too: quick picks (2:00 to 5:00) and the fine control, in both modes. Phones get a tidier transport, a mini player that stays at the bottom once Play scrolls away, two-column genres and even cards; Loop section is now Advanced-only.

    Download 2.3.0 of Song sketcher — perreo, cumbia, folk, bossa, darkwave
  7. 2.2.1

    Timeline labels no longer overlap on phones: bar numbers keep clear of the total time, and section names shorten to fit (Chorus, Cho, C) instead of being cut mid-word.

    Download 2.2.1 of Song sketcher — perreo, cumbia, folk, bossa, darkwave
  8. 2.2.0

    Simple and Advanced controls (Simple shows genre, vibe and mood; Advanced shows everything); Mood buttons that set the existing controls: Rainy day, Sunny afternoon, Late night, Dreamy, Party, and More or Less upbeat to nudge

    Download 2.2.0 of Song sketcher — perreo, cumbia, folk, bossa, darkwave
  9. 2.1.0

    Three more genres: cumbia (accordion melodies in thirds and off-beat stabs, güira, congas, bass on one and three), bossa nova (nylon guitar over a thumbed bass, shaker, cross-stick) and darkwave (eighth-note synth bass, backbeat, cold pads); new instruments: hand percussion, nylon guitar, synth bass

    Download 2.1.0 of Song sketcher — perreo, cumbia, folk, bossa, darkwave
  10. 2.0.0

    Genres: chamber folk (harp, oboe, accordion, strings, upright bass; 3/4 or 4/4; major, mixolydian, dorian, aeolian) beside alt-perreo; add any instrument to either genre; one instrument list drives section parts, timeline, mixer, audio and MIDI, with Auto per section and your overrides; MIDI gets a track per instrument and the right meter and key

    Download 2.0.0 of Song sketcher — perreo, cumbia, folk, bossa, darkwave
  11. 1.1.0

    Drag-and-drop arrangement, accented seed and essentials, theme picker (Auto, Midnight, Daylight, Ember, Slate), Crossover mode (metal, ska, ska-metal) with Collide, pause/resume and stop, click the timeline to jump to an exact moment

    Download 1.1.0 of Song sketcher — perreo, cumbia, folk, bossa, darkwave
  12. 1.0.0

    First published.

    Download 1.0.0 of Song sketcher — perreo, cumbia, folk, bossa, darkwave