▶ Watch the promo on YouTube · Watch the Short · more demos on the channel
┌──────────────────────────────────────────────────────────────────────────┐
│ C H I P W A V E S T U D I O v0.2.12.0 BPM 140 SPD 06 │
├──────┬─────────────┬─────────────┬──────────────────┬───────────────────┤
│ 00 │ A-2 01 .. … │ ... .. .. … │ ... .. .. .... │ free music studio │
│ 01 │ ... .. .. … │ A-2 02 38 … │ ... .. .. .... │ sequencer + synth │
│ 02 │ ... .. .. … │ ... .. .. … │ C-5 03 38 0814 │ Windows · Mac │
└──────┴─────────────┴─────────────┴──────────────────┴───────────────────┘
Real capture of ChipWave Studio playing the built-in demo “Oceans 11” (music by Martin Galway): the Timeline on top, the piano roll below.
⬇ Download latest for Windows · ⬇ macOS 0.2.21.0 (first launch; 0.2.22.0 Mac build is not up yet) · New in 0.2.22.0 · User manual (PDF) · Features · Themes · Keys · Docs · BigWave Radio (sister project)
ChipWave Studio is a free music sequencer with a retro heart. Try ideas in the Clip Arranger, lay them out as clips on the Timeline, write melodies in the piano roll and beats in the Drum Kit's step sequencer, then shape every sound with WaveForge, StringWave, FM-4, Chip FX, Analog, a synthetic Voice and more. Build each track's sound in the Rack, a row of the instrument and its effects under the Timeline, stack sounds into racks, add effects and automation, mix with sidechain ducking and a true-peak limiter, and export WAV or MP3. CLAP and VST3 plugins and MIDI keyboards work too, and an optional pattern editor is there for the classic way of working. Up to 32 tracks per song. Written in Rust with egui and cpal. Free for Windows, Mac & Linux. The latest Windows and Linux release is 0.2.22.0 (v0.2.22.0). The Mac download is still 0.2.21.0: the 0.2.22.0 Mac packaging workflow could not be started (HTTP 403) and was not bypassed. See Linux install. Early version, in active development.
ChipWave Studio was called ChipWave Tracker until 0.2.3.19. It was renamed in 0.2.4.0 to tell it apart from an unrelated iOS app called "ChipWave". Same app, same settings, same
.cwtsongs; the old GitHub links redirect here. Website: postmanpat-303.github.io/ChipWaveStudio. Details: docs/RENAME.md.
All pictures on this page are real captures of the current build (no mockups). They were made with scripts/screenshots.sh and scripts/record_gifs.sh.
- Acid Bass is a monophonic bass in the Rack and on Add track. Slide with 3C, accent with 3D, and automate cutoff, resonance, envelope, decay, accent, wave and the 2.0 / Vintage model.
- The voice is from OpenRB-338 by pingw33n and the OpenRB-338 authors, Copyright (C) 2026 the OpenRB-338 authors, GPL-3.0-only, commit cbca449. ChipWave's adaptation is in
third_party/openrb-303. No drum samples, panel artwork, sequencer or mixer are included. It is not a hardware clone, and ChipWave is not affiliated with any instrument brand. - Older songs open as before. A song that uses Acid Bass needs ChipWave 0.2.22.0 or later.
- Eight places, every time. Right-click a track, a clip, an empty lane, a Rack instrument or effect, or an automation lane. Make, repeat, edit, sound, time, look, hear and remove stay in the same places. Empty places stay empty. A › choice replaces the ring, and Back is always the lower left.
- It acts on what you clicked. The selection does not move until you choose. Esc, or a click in the middle, cancels. Remove… asks again before it deletes.
- + Add track asks for an instrument, a drum pattern, audio or an empty track. An instrument or a drum pattern opens the Rack. Browse… still reaches Voice, Wavetable, Grid, Noise, plugins and the library.
- Save and Export are on the song title (Save, Save As…, Export…) and on a right-click of Song / Master.
Songs open, play and render exactly as in 0.2.20.0. Details in the CHANGELOG.
![]() + Add track on a new song. |
![]() Add effect on the instrument in the Rack. |
New in 0.2.20.0: text that fits, and modulation you can see
- The Arp card's header fits: in the Rack on a 1366-pixel screen (or narrower), "Simple" and "Steps" no longer disappear under "Preset ▾" and "More". The card measures its header and makes room for it, at full text size.
- Text that fits across the app: Timeline markers on the same beat share one label, and clip, marker and scene names end in "…" instead of being cut mid-letter. Arranger role badges, automation scale labels, the Browser's empty-list hint, the FM algorithm picture and instrument card choices no longer overlap or get cut off.
- Modulation you can see: the M1–M8 badges and dots on knobs are drawn in the theme's accent colour at a readable contrast, the dot fills in once a modulation is assigned, and the modulation rings are thicker and brighter, in every theme and knob style.
Songs open, play and render exactly as in 0.2.19.0. Details in the CHANGELOG.
![]() The Arp card header at 1366×768: before and after (Slate). |
![]() Modulation markers in the six knob styles: before and after (Slate). |
New in 0.2.19.0: a movable top bar, The Matrix theme and knob styles
- A movable top bar: the top bar is now three panels, the Display, the Transport and the Master. Drag a panel by the grip at its left edge to put them in the order you like; the order is saved. The Transport sits in the centre of the window by default, the three panels are the same height, and Reset top bar in Settings › Look puts everything back. MIDI, Chord, the keys and Panic now sit at the right of the menu bar.
- An in-between display size for 1366-pixel-wide screens: the display drops its load meters (DSP and BUF stay as text) before it goes compact.
- The Matrix: a new theme with Slate's studio look in phosphor green on near-black, and teal panels for ChipWave's own instruments.
- Knob style in Settings › Look: Classic, Flat ring, Chicken-head, LED ring, Brushed metal or Pixel, for every knob in the app. Each option shows a small live knob in that style, so you can see it before you pick it.
- The user manual is updated: it always shows the version you have, and has new sections on the top bar, The Matrix and the knob styles.
- Includes the 0.2.18.1 installer fix.
Songs open, play and render exactly as in 0.2.18.1. Details in the CHANGELOG.
New in 0.2.18.0: the Arp, an adjustable loop and Ctrl+drag copies
0.2.18.1 fixes the Windows installer: reinstalling or upgrading could leave the install folder empty. If ChipWave 0.2.18.0 stopped opening from its shortcut, install 0.2.18.1.
- The Arp (ARPEGGIATOR.md): a note effect at the start of a track's Rack that plays the notes you hold one at a time, in time with the song. Up, Down, Up-down, Converge, Diverge, Random, As played and Chord modes; 1–4 octaves; tempo-synced rates from 1/4 to 1/128 with triplets, dotted values and chip-style fast chords; gate, swing and Latch. A step grid of 8, 16 or 32 steps sets velocity, gate, accent, rest or tie, ratchets, transpose and chance per step, and More ▸ adds Euclid fill, scale lock to the song key, humanise and free-run. Named presets, automation and modulation on Rate, Gate, Swing, Octaves and Humanise, and Bake Arp to notes on the clip menu. Tracker cells play through it too, and a Drum Kit gets it as Note repeat.
- An adjustable loop range (TIMELINE.md): drag either end of the loop on the ruler to resize it, or drag the band between them to move it. It snaps to the grid (hold Alt for single rows), and double-clicking the band selects the clips inside it. Playback and loop export use the new range, and each change is one Undo step.
- Ctrl+drag a clip to copy it: the copy follows the mouse and the original stays put. Copies are independent (their own notes or pattern), snap like a move and can go to another track of the same kind. Alt+drag still makes a linked copy, and Ctrl+D still puts a copy right after the selection.
- Fix: Length 32 shows all 32 steps: the Arp card widens to show every step instead of hiding steps 17–32 behind a small page switch.
- New demo song "Tallest Morning": uplifting melodic house in D major at 126 BPM in File > Demo songs, built on StringWave echo chord stabs and pads with a rising macro, LFOs and filter sweeps.
Songs without an Arp play and render exactly as in 0.2.17.0, and the song format only gains the Arp's settings. Details in the CHANGELOG.
![]() The Arp at Length 32 (Slate). |
![]() Ctrl+drag makes a copy; the original stays. |
New in 0.2.17.0: a built-in manual, a digital rain About page and cleaner exports
- The user manual is built in (PDF): Help > User Manual, or the User manual (PDF) button on the About page, opens a friendly 38-page guide, from installing and your first song in 10 minutes to the mixer, MIDI, exporting and a shortcuts table. It's inside the app, so it works without the internet.
- About opens with digital rain: green code falls and the About page appears as it goes, in about a second and a half. Press any key or click to skip it, and Reduce motion in Settings switches it off.
- About opens straight away: the About window no longer grows and creeps up the screen for a few seconds after opening.
- Exports end cleanly: saving a song to WAV or MP3 (and
--render) now stops at the end of the song instead of playing the first row once more in the tail. Playing and looping in the app are unchanged.
Songs play in the app exactly as in 0.2.16.0. Exported files are the same up to the end of the song; only that stray extra row after it is gone. Details in the CHANGELOG.
![]() Digital rain: the About page appears as the code falls. |
![]() Help > User Manual opens the built-in PDF. |
New in 0.2.16.0: controller maps, named Undo and a glowing display
- Save and load controller maps (MIDI.md): File > Save controller map… keeps the knobs you've MIDI-learned as a small file for your keyboard or controller, and File > Load controller map… puts them back. The same two buttons sit under the learned list in Settings > MIDI.
- Undo says what it will undo: the Edit menu now reads, for example, Undo: Move clip or Redo: Add note for the most common edits (clips, notes, tracker cells, tracks and knobs).
- Glow and shine display: the top LCD has a soft backlight glow in the middle and a glassy shine across the top, in whichever display colour you pick (Mint, Amber, Ice and the rest). The text stays easy to read on every colour.
- Behind the scenes: every knob now comes from one shared list, so automation, MIDI learn, modulation and controller maps all name knobs the same way, and a new ARCHITECTURE.md guide says which files a new knob, effect, instrument or saved setting goes in.
Every song saves, plays and renders exactly as in 0.2.15.0. Known limits and details in the CHANGELOG.
![]() Glow and shine in Mint, Amber and Ice (Slate). |
![]() Controller maps: save and load your learned knobs (Amiga). |
New in 0.2.15.0: Chords that write to the timeline
- Write to timeline always writes (CHORDS.md): the Chords, Melody and Bass generators were rebuilt so Write to timeline puts real notes on a melodic track every time, as one Ctrl+Z.
- Pick the target on the WRITE card: this track, a new track below it, or this clip. A new clip starts at the loop start (or the play marker's bar), and the card and the status bar say exactly where the notes went.
- It works with no clip open, on an empty song and from a drum track (the notes go to a new melodic track). Clips grow to show everything that was written.
- A new Chords… button beside + Add track opens the generator straight from the Timeline.
- Chords only on pitched sounds: Chords…, Melody… and Bass… (in the track pie, the piano roll's chord lane and Generate, and beside + Add track) are hidden on drum kits, drum generators and drum-named sounds such as a synth "Trance Kick". A new Chords, Melody or Bass track never copies a drum sound.
- Fixes: the Write card no longer reads "Bars bars"; Preview plays on a melodic sound.
Every song saves, plays and renders exactly as in 0.2.14.0. Known limits and details in the CHANGELOG.
![]() The WRITE card says where the chords will go (Amiga). |
![]() Written: a new Chords track with the notes, one Ctrl+Z. |
New in 0.2.14.0: Round Robin, key pressure and clip copy and paste
- Round Robin (ROUND_ROBIN.md): loops that sound a little different each pass, but render the same every time (everything comes from a seed plus the pass or hit number).
- Step conditions: a note can play every X of Y passes, only the first time, never the first time, only in fills or never in fills, next to its Chance. Conditions and Chance lanes in the piano roll, a Play this note… popover, striped notes and a Fill toggle.
- Clip Variations: up to four takes (A–D) per note clip, one per loop pass: in order, random, random no repeat, ping-pong or every N.
- Drum pad Round Robin: up to four sounds per pad take turns, with per-hit drift of pitch, level, tone, decay, timing and pan, and a "Next 8 hits" preview.
- Follow actions: launcher clips move on after N loops (X % Next / Again / Other / First / Last / Any / Stop), and Capture writes the performance to the timeline.
- MIDI key pressure and .mid import (MIDI.md): poly and channel aftertouch drive a new Pressure modulator, recorded notes keep their pressure curves, and the piano roll's Pressure lane draws and clears them. MIDI files from the browser import as one note clip with velocities and pressure.
- Clip copy and paste: Ctrl+C / X / V on the Timeline, Copy / Cut in the clip pie, Paste here (independent or linked) on an empty lane, Paste at playhead in the track pie.
- Transport Loop button beside the metronome, and double-click a clip to loop exactly it (again: loop off).
- Bigger pies (30 %), with Settings › Look › Pie menus Small / Normal / Large.
- Fixes: a drum kit added after StringWave or WaveForge plays the kit; the go-to-start button is legible in Amiga.
Every song saves, plays and renders exactly as in 0.2.13.0. Known limits and details in the CHANGELOG.
![]() Clip Variations: a take per loop pass. |
![]() Drum pad Round Robin (Amiga). |
![]() Pressure lane: recorded aftertouch, drawn and editable. |
![]() Double-click a clip to loop it. |
New in 0.2.13.0: live recording, quick modulation and a backlit LCD
- Live recording block: press Record and a REC block opens at once on the track and grows with the playhead, with no length limit. Notes appear as you play them and fade in; on Stop it becomes a normal clip, rounded to the bar. The take is one undo step, an empty take is dropped, and loop recording overdubs in place.
- Quick modulation on every knob: click the small dot on a knob (or right-click › Modulate with…) and pick LFO, Envelope, Random, Velocity or Mod wheel. Clear sliders set Speed ("1 beat (1/4 note)", "2 bars" or Hz, with Sync to tempo), Length and Attack for envelopes, Smooth for Random and Amount for all, with a live preview of the shape. One Movement list per instrument shows everything that moves ("LFO 1 sine · 1 beat → Cutoff · +25 %").
- A tidier instrument header: no tab counts, a Modulation dot, a "Synth" tab, hints in a ? tooltip, an F11 icon and Save rack in the ⋯ menu.
- Backlit mint LCD: the top display is now light, backlit glass with Atkinson Mono digits, toggle pills and DSP / BUF meters. Mint is the default; Cyan, Amber, Green, Red and Ice are backlight tints.
- Keyboard icon for Keys → Notes: the computer keyboard plays notes from a lit keyboard icon in the toolbar (hover for octave and velocity). It's on by default when no MIDI keyboard is connected, and your own choice is remembered.
Every song saves, plays and renders exactly as in 0.2.12.0. Known limits and details in the CHANGELOG.
New in 0.2.12.0: bigger, resizable and movable tracks
- Taller tracks by default on the Timeline.
- Resize a track: drag the bottom edge of its header (28 to 200 pt, one undo step, saved with the song). Double-click the edge to reset it.
- Resize every track: Ctrl+wheel over the track headers or Alt+wheel; the new size is remembered.
- Move tracks up and down: drag a header up or down (a line shows where it lands) or use Move up / Move down in the track pie. Clips, sound, colour and mix go with the track, and Undo works.
- The selected track stands out: accent-tinted header with a wide accent bar and outline, bold name, and a tinted, outlined lane in every theme.
Every song saves, plays and renders exactly as in 0.2.11.0. Known limits and details in the CHANGELOG.
![]() Resized tracks: drag a header's bottom edge. |
![]() Drag to reorder: the line shows where the track lands. |
![]() Selected track in Slate. |
![]() Selected track in Amiga. |
New in 0.2.11.0: easier-to-read text, UI scale and Text size
- New fonts: the bundled Atkinson Hyperlegible Next for text and Atkinson Hyperlegible Mono for numbers, the tracker and the LCD, in every theme. One type scale sets every size, and nothing is smaller than 10 pt.
- UI scale and Text size: Settings › Look, each 90 to 150 % in 5 % steps (Ctrl+= / Ctrl+- / Ctrl+0 for the UI scale). ChipWave follows your Windows, Wayland or X11 display scale.
- Fits small and scaled screens: every view fits at 1366 × 768 and at 150 % on 1920 × 1080 in Slate, Dark and Amiga. Long names end in "…" with a tooltip, and the piano roll's toolbar goes to two rows when narrow.
- Contrast: higher text contrast in Dark, readable selection text, and text that follows the surface under it.
- Import: an imported instrument becomes the active one, on its own track on the Timeline.
- One gradient over the tracks: Timeline clips share one top-to-bottom gradient across all tracks.
Every song saves, plays and renders exactly as in 0.2.10.0. Known limits and details in the CHANGELOG.
![]() Atkinson Hyperlegible at 1366 × 768, piano roll toolbar in two rows. |
![]() One gradient over the tracks. |
![]() Settings › Look: UI scale and Text size. |
![]() Amiga with the new fonts. |
New in 0.2.10.0: Generators, the LCD toolbar and smarter pies
- Generators: Chords | Melody | Bass. One panel with three tabs and one Write card. The Melody tab writes a seeded tune over your chords (rhythm, contour, motif, density, range); the Bass tab follows the chord roots in six styles (Root, Octave pump, Walking, Acid, Syncopated, Euclid). Drag the ⠿ GENERATORS grip to move the panel anywhere.
- A big Preview pad: Preview, Dice and Another one sit in one large rounded pad, and Write to timeline gives the new track a copy of your track's instrument, so it sounds like the preview.
- LCD toolbar: tempo, position, time, signature and load on a display in Cyan, Amber, Green, Red, Ice or your own colour (since 0.2.13.0 a backlit mint display, with those colours as backlight tints), with a compact Master meter that opens the Master panel. Settings › Top display brings back the classic toolbar.
- Context-aware pies: right-click a track and the first ring fits it (drum tracks get kits, patterns and Dice kit; melodic tracks get instruments, Sounds, Chords…, Melody… and Bass…). Right-click under the tracks for a New track pie.
- Tracks and the Rack: Song / Master sits at the bottom, a new empty track has no instrument until you give it one, a new built-in instrument opens as its compact Rack card with a Drag an effect here box beside it, and a double-click on a side tab collapses or expands a card.
- Clip Arranger: ▶ becomes ■ on a playing slot to stop it, and the Arranger button hides the panel for room.
- Piano roll: Shift+arrows nudge notes; the octave move is now Ctrl+Up/Down.
- Clean exit: the recovery dialog only appears after a real crash.
Every song saves, plays and renders exactly as in 0.2.9.0. Known limits and details in the CHANGELOG.
New in 0.2.9.0: the new Rack
- The Rack: click a track and its sound shows under the Timeline as one sideways row, the instrument first and then its effects in order, with a + zone at the end. A wide row scrolls sideways.
- Side tabs on every card: ⏻ bypass, ✕ remove and ‹ collapse. The instrument only collapses; right-click › Replace instrument… swaps it.
- Select a device and it is highlighted (violet for ChipWave's own instruments). Delete removes it and Ctrl+D duplicates it, with Ctrl+Z to undo. Delete on the Timeline still deletes clips.
- Starter knobs: each instrument card shows a few chosen knobs and Volume; Advanced › opens the full editor. A Drum Kit card has a pad picker, and a rack shows its layers in place.
- Drag from the Browser onto the row, its + zone or a Timeline track; drag a card's title to reorder. Save rack… keeps the whole row in My Racks.
- Notes | Rack: one switch in the lower panel replaces the three old tabs (Ctrl+7 shows the Rack).
- Browser › Instruments shows instruments only; their presets are on the Rack card.
- CI and test fixes since 0.2.8.0.
Every song saves, plays and renders exactly as in 0.2.8.0. Known limits and details in the CHANGELOG. The tree from 0.2.7.0 is still there as the chain editor for Splits and layer settings (right-click an effect › Open in the chain editor).
New in 0.2.8.0: StringWave, the violet look and pie-ring Add
- StringWave, a new built-in string-ensemble instrument: three layers, undertones (sub and drone), a filter with its own envelope, two LFOs, chorus, echo and a big reverb, with eight presets from Velvet Ensemble to Slow Swell Orchestra. The mod wheel, expression and sustain pedal work out of the box. Find it in Track pie › Add › Instrument or Browser › ChipWave Instruments.
- A violet look for ChipWave's own instruments: every built-in instrument panel, its card in Nested Device Chains and its row in the Browser share one violet tint, so you can tell a ChipWave instrument from a plugin at a glance.
- Track pie › Add opens rings: Drum pattern › Drum Kit › 909 Kit (or an instrument) makes a new track below with an empty 1-bar pattern, ready to fill. One Ctrl+Z takes it all back.
- Drum Kit: Kits… and Dice kit now load the kit's name, sounds and pad names, and an empty pattern gets the kit's starter groove.
- Piano roll ruler: click the ruler to set a paste marker (Ctrl+V pastes there and carries on after it), the play marker follows the Timeline, and bar, beat and grid ticks.
- CLAP plugins: knob moves in a plugin's own window are heard on every track that plays it, and its sound is always saved.
- Polish since 0.2.7.0: studio knobs, a lower panel that keeps its height, a calmer Master level history, Nested Device Chains opens on Cards, silent plugin previews, VST & CLAP in a simpler Browser, Keys → Notes, a Play / Stop toggle, a metronome with count-in, box and Alt-line select in the piano roll, clip colours that show at once, and many visual fixes.
Songs that use StringWave need 0.2.8.0 to open; every other song plays exactly as before. Known limits and details in the CHANGELOG.
New in 0.2.7.0: racks and Nested Device Chains
Build your own instruments right under the Timeline:
- Nested Device Chains: click a track and its instrument opens under the Timeline (Ctrl+7) as a tree of the instrument, its layers and every effect in order, with the selected item's controls beside it. + Add Device, drag to reorder or move a device to another chain (Ctrl: copy), Bypass, Duplicate and Remove, all undoable.
- Split sends the sound down 2 to 4 parallel paths, each with its own effects, Level and Pan, and mixes them back.
- Racks: Make a rack from this instrument gives up to 4 layers that play together, each with Level, Pan, Transpose, a key range and its own effects, plus Rack effects on the mix.
- Save Custom Rack… and My Racks: save a rack with a name, description, sound type and tags, then search, load, preview, rename, duplicate, update and delete it in Browser › My Racks. Missing plugins are reported, with Find plugins… or Load anyway. See RACKS.md.
- Piano roll copy and paste: Ctrl-drag copies notes; Ctrl+C / X / V / D copy, cut, paste and duplicate. The Tracker's Automation tab now only shows with the Tracker (track automation is in the Timeline's lanes).
- New demo song "Oceans 11": music by Martin Galway (Commodore 64), arranged by Del (postmanpat), made only from Chip FX, effects and a Drum Kit.
Known limits: plugin instruments can't be layers and plugin effects on a layer probably pass the sound through; live MIDI and the note preview play only the first layer; no plugin effects or automation inside a Split; Tracker slides don't reach layers; no Make a rack in the track pie yet. Full list in the CHANGELOG.
New in 0.2.6.0: one workflow
The Timeline is now the place you work in, with everything else following it (inspired by other DAWs):
- Drag a Clip Arranger clip or a Browser pattern onto the Timeline and see where it lands first: the target track, a ghost clip, the snap line and a card with the track, its instrument and whether it's a linked copy (Alt: independent). Over other clips it asks Replace / Place after it / Keep both / Cancel; nothing is overwritten silently.
- Launcher clips in the Clip Arranger: Capture the arrangement's scenes, launch one clip per track on the next bar while the others play on, make variations, and drag them back as linked copies (shown as ×N; the piano roll's Linked ×N makes one unique).
- Click a track, get its instrument; click a clip, get the clip. One rule decides a track's instrument everywhere; a track without one offers a chooser, and a shared one says so (with Make a separate copy).
- Pies on clips, launcher clips and the Drum Kit's step grid; clips get their own name and colour; the lower panel says which track, clip and instrument it edits.
- ChipWave Instruments first in the Browser, the Windows title bar in the theme's colours, and fixes (plugin effects heard at once, the piano roll playhead in sync).
Known limits: the launcher holds note clips only, there's no recording into slots or generating into a launcher clip yet, the drum pie's Variation is simple, and some Tracker wording remains in block mode. Full list in the CHANGELOG.
═══[ 01 ]═══ FEATURES ═════════════════════════════════════════════════════
![]() Tracker: OctaMED-style blocks (64 rows by default; set the length on the one-line Block bar), note / instrument / volume / effect columns, decimal row numbers (hex in Settings › Look), the classic Z–M keyboard layout, selection, copy/paste, transpose (keys, the Block bar’s -12 / -1 / +1 / +12 buttons or Edit › Transpose) and undo. The cursor follows the playing row. Shown: the “Velvet Mirrorball” disco demo with its Cyber Choir voice in the instrument editor below. |
![]() Order list: the song order as coloured clips with role badges (Intro, Verse, Chorus, Bridge, Breakdown, Outro), drag to reorder, duplicate, zoom, plus automation lanes for filter sweeps, levels and delay feedback. |
![]() Mixer: per-channel fader, pan, mute/solo, peak meters, two send/return buses (delay and reverb) and sidechain ducking: pick a key channel and set Duck % per channel for the trance pump. |
![]() FX chain: per-instrument device strip with Filter, Chorus/Flanger, Delay, Reverb, Drive, Bitcrusher and Compressor, plus the chrome devices Metal resonator, Digital distortion and Sub bass (0.2.3.11, they follow the note; 40–42 set their mix); bypass, collapse, drag to reorder, presets. |
![]() Browser (0.2.4.1): Ctrl+B. Instruments, CLAP / VST3 plugins, samples, songs, presets, Grid patches and wavetables in one searchable panel with tags, Category / Creator / Location filters, favourites and ratings. Double-click to load, drag onto a track header to give the track that sound, or below the last track for a new one. See BROWSER.md. |
![]() Find plugins (0.2.4.1): on the first start ChipWave offers to search the standard VST3 / CLAP folders (optionally the whole drive) in the background, let you pick folders, or skip. Always in Settings › Plugins. |
![]() Fill to length: auto-arrange the song to a target length from a style, with an editable energy curve, variation, seed, preview and section locks. |
![]() Settings: summary cards for Audio, Look, Keys (remappable), Files & Safety (autosave, backups, crash recovery, update check) and MIDI. (Captured on a machine without a sound card, hence “no audio output”.) |
![]() Full-height view (0.2.3.19): F11, the Full height button, or dragging the splitter to the bottom hides the lower panel so the pattern fills the window; press F11 again to bring it back. |
![]() FX tab (0.2.3.19): an instrument's effect chain as knob cards in the lower panel (here the disco demo’s strings: high-pass and low-pass filters and two chorus/flanger stages), next to the Main, Modulation and Advanced tabs. |
![]() Synth / sound editor: oscillator, unison + detune, stereo width, LP/HP/BP filter (SVF or Moog ladder, clean / vintage, 12/24 dB) with envelope, ADSR, drive, an 808-style metallic source for hats, velocity → cutoff, start delay, 303 glide / legato and accent, and a tempo-syncable LFO to cutoff, amp and pitch. Still. |
![]() Mixer while playing: the pads and bass duck under the kick (sidechain), meters per channel and on the master. ![]() Order list while playing: the playhead runs through the clips and the automation curves. |
![]() |
Instrument editor (0.2.3.19): every instrument (synth, sample, Voice, generators, Chip FX, CLAP plugins) is edited under the pattern with knobs on side-by-side, collapsible cards in four tabs (Main, Modulation, FX, Advanced), small envelope / filter / wave pictures, presets, A/B compare and parameter search (Ctrl+F). Drag a knob, Ctrl-drag for fine steps, double-click for the default, right-click to automate or MIDI-learn. The lower panel switches between Order list, Instrument and Automation, resizes with a splitter, and Full-height view (F11) hides it. See INSTRUMENT_EDITOR.md. |
![]() |
Voice (glitch) instrument (0.2.3.6): synthetic “ahh, eee, ohh, err” vowel chops for dark psytrance. No samples: a glottal pulse with breath and jitter through five formant filters, a vowel sequence you build from chips (A E I O U ER AE), smooth morphing, random babble, Bass/Tenor/Alto/Soprano/Demon registers, formant shift, a tempo-synced chop gate and stutter / beat-repeat. Pattern effects 30–37 change the vowel, shift and stutter per row (33xy stutters any instrument). Presets: Demon Ahh, Choir Eee, Glitch Babble, Robot Err, Stutter Ohh, Whisper Ooh. See VOICE.md. Amiga theme. |
![]() |
Master limiter & loudness (0.2.3.7): the panel pinned to the right of the mixer, captured while the demo plays: a lookahead true-peak limiter (gain, ceiling −1 dBTP, release, gain-reduction bar, bypass = the old soft clipper) and momentary / short-term / integrated LUFS plus true peak (ITU-R BS.1770), with a loudness-target hint. Exports use the same limiter. Also new: pattern effects 38–3D for per-row filter cutoff, resonance and cutoff slides, 303 glide (Legato + 3C) and accent (3D or a velocity threshold); see TRACKER.md and MIXER.md. |
![]() |
Up to 32 channels (0.2.3.8): a 32-channel test song in the Tracker (four sets of kick, hat, clap, bass, three arp voices and a lead). The bar under the grid reads “channels 1–11 of 32”; click or drag it, or Tab through the channels. The mixer strips scroll the same way beside the pinned master. |
![]() |
Chord helper (0.2.3.9): pick or detect the song key (Krumhansl–Schmuckler), click chord pads (triad, 7th, sus, add9, power; octave and inversion) to hear them and build a progression, or pick a preset, then write it into the block as chords, an arpeggio or a bass line. Scale lock snaps typed and MIDI notes to the key. See CHORDS.md. |
![]() |
Instrument library (0.2.3.9): the song's instruments, your own library folder of .cwi files and the factory sounds side by side, with search, audition, add, and “replace this slot's sound but keep its notes”. In the instrument list: rename (double-click), reorder (notes follow), search, and “use this instead of” to swap instruments across the song or one block. See INSTRUMENT_LIBRARY.md. |
![]() |
Voice words and Throat mode (0.2.3.10): the Voice instrument speaks short words (gha dum osh kar), one per note or picked with 3Exx: plosives, fricatives and nasals built from noise bursts and formant transitions. Throat swaps the formant filters for a simulated vocal tract inspired by Pink Trombone by Neil Thapen (MIT). See VOICE.md. |
![]() |
Chop / slice (0.2.3.10): a synthesised breakbeat cut at its transients (or on a grid) into numbered slices. Select a slice to normalise, reverse or fade just that part; To instruments makes one instrument per slice and To notes writes them into the block at the song tempo, ready to rearrange. See SAMPLES.md. |
![]() |
Voice Transform (0.2.3.11): blend the voice into metallic resonance (modal resonators tuned to the note: metal, bell, bar, harmonic, odd), digital distortion (clip/fold, bits, sample-rate, ring mod) and a heavy sub (sine or octave divider, mono below the crossover), with formant drop for a monster voice. Presets Metal Demon, Digital Ghost, Sub Beast, Cyber Choir, Ritual Growl; 3F–42 per row; the stages are FX devices for any instrument too. See VOICE.md. |
![]() |
WaveForge (0.2.5.0): a polyphonic synth inspired by classic subtractive synths. Two band-limited (polyBLEP) oscillators that morph pulse → saw → octave-up saw, with sub, hard sync and up to 16 unison voices each; six blend modes and noise; LP / BP / HP filters at 12 or 24 dB/oct plus band-reject; drive, feedback and a shaper; filter and amp envelopes; Poly / Mono / Legato with 1–8 notes and glide; eight mod routes. Its own editor shows every section side by side on a wide panel and switches to tabs on a narrow one. 11 presets with Init and Revert. See GENERATORS.md. |
![]() |
Drum Kit (0.2.5.0): one instrument with up to 32 pads (key, tune, pan, decay, attack, velocity depth, choke groups, mute / solo), 13 kits of 16 pads, a step sequencer with velocity lane, swing and 16 / 32 / 64 steps, a groove generator (style, energy, fill), Add to track and a compact layout for laptop screens. Old Kits convert bit-identically. See GENERATORS.md. |
![]() |
Generators: Drum Synth (0.2.3.12): kick (v0, 808, 909, psy Zap), snare, hat, clap, tom and perc from eight macro knobs, or a whole kit on one instrument. Dice rolls a new sound within sensible ranges, Mutate nudges it, lock keeps a knob, 16 rolls of history, stored seed, Bake to sample. Plus a Moog ladder filter (clean or vintage, 12/24 dB LP/BP/HP) in every synth. 43xy sets a macro per row. See GENERATORS.md. |
![]() |
Generators: Analog (0.2.3.14): a Moog-style synth, written from scratch. Three drifting oscillators (saw, triangle, square, pulse with PWM; octave, semitone and detune; sync), noise, the vintage ladder, filter and amp envelopes and glide. Eight macros, Dice/Mutate/locks/Bake. Presets Fat Moog Bass, Psy Rolling Bass, Warm Lead, Brass, Dark Pad, Acid Squelch. Inspired by Vital (Matt Tytel) and Surge XT. |
![]() |
Generators: FM-4 and Noise (0.2.3.14): FM-4 has four operators, the 8 DX21/TX81Z algorithms, ratios, feedback and an envelope per operator. Presets: E-Piano, Metallic Bell, Psy Zap Bass, Growl, Dark Pluck. Informed by Dexed/MSFA. Noise offers white, pink, brown or crackle through a ladder or SVF with a sweep envelope. Presets: White Riser, Downlifter, Impact, Wind, Vinyl Crackle. |
![]() |
Generators: Chip FX (0.2.3.13): retro game sounds from a port of sfxr by DrPetter (via sfxr-rs, both MIT). Click Pickup, Laser, Explosion, Power-up, Hit, Jump or Blip for a new sound, Randomize for anything, Mutate to nudge it; lock what you like, step back through 16 rolls, bake to a sample. Plays in tune with the pattern note. See GENERATORS.md. |
![]() |
CLAP plugin instruments (0.2.3.16): Surge XT and other CLAP instruments play from the pattern like any other instrument. The lower panel shows the plugin card (Configure… opens its own editor on Windows), eight macro knobs for 43xy and automation, and every plugin parameter, searchable, on the Advanced tab (picture). See PLUGINS.md. |
Also in the box
| 🎹 MIDI keyboard | play the current instrument with velocity, sustain and pitch bend; record step or live into the pattern; chord spread; MIDI learn on faders and knobs |
| 🎚️ Up to 32 channels | each song sets its own channel count (1–32); the Tracker and mixer scroll with a bar showing which channels are in view |
| 🎼 Chords & scale lock | song key (pick or detect), chord pads, progressions written as chords, arps or bass, scale lock for typing and MIDI |
| 📚 Instrument library | .cwi instrument files, a library folder with categories, factory sounds, audition, rename / reorder / swap instruments |
| 🎛️ Effects column | 01/02 slide, 08 note decay, 09 speed, 0C volume, 0D volume slide, 0F tempo; Voice 30–37 (33/34 stutter any instrument); filter and acid 38–3D (cutoff, resonance, cutoff slides, 303 glide, accent); 3E speak word; 3F–42 Voice Transform and chrome devices; 43xy generator macros. Full table: TRACKER.md |
| 🔌 Plugin instruments | CLAP instruments such as Surge XT: crash-guarded scanner, browser, native editor (Windows), parameter list, 8 macros for 43xy and automation, state saved in the song, offline render. VST3 instruments and effects are hosted the same way (0.2.4.1). PLUGINS.md |
| 🎲 Generators | macro-knob instruments: Drum Synth and kits, Drum Kit (32 pads, step sequencer, groove generator), Chip FX (sfxr), Analog (Moog-style), FM-4, Noise, Wave, Grid, WaveForge (polyphonic, two oscillators with unison), StringWave (string ensemble); Dice, Mutate, locks, 16-roll history, Bake to sample; presets for each |
| 🧩 Rack & device chains | the Rack under the Timeline (Ctrl+7): the instrument and its effects in one row with side tabs (bypass, remove, collapse), Delete / Ctrl+D on the selected card, starter knobs with Advanced ›, drag from the Browser; the chain editor tree for Splits and layers, + Add Device, drag to reorder or move (Ctrl: copy); Split into 2–4 parallel paths; racks of up to 4 layers (level, pan, transpose, key range, own effects); Save Custom Rack and Browser › My Racks (RACKS.md) |
| 🗣️ Voice | synthetic vowels, babble, stutter, spoken words, Throat (vocal tract) mode and the Transform (metal, digital, sub) |
| 🧱 Master limiter | lookahead true-peak limiter on the master and in every export (ceiling −1 dBTP by default, gain, release, bypass), with a loudness meter: momentary, short-term and integrated LUFS plus true peak, and a loudness-target hint |
| 🔊 Samples | import WAV (button or drag and drop), sample view with loop points and preview, chop / slice into instruments or notes |
| 💾 Files | .cwt songs (a ZIP of TOML + WAV you can inspect), autosave, backups and crash recovery |
| 📼 Export | WAV and MP3 with ID3 tags; whole song, the current block or the Order list selection |
| 🎵 Demo songs | File > Demo songs: “Lumen Drift” (140 BPM uplifting trance), “Hollow Ritual” (147 BPM dark psytrance) “Velvet Mirrorball” (104 BPM disco with Voice choir, phaser strings and filter sweeps), “Chrome Throat” (145 BPM psy with Voice chants) and “Oceans 11” (125 BPM melodic chiptune made only with Chip FX, effects and a Drum Kit: music by Martin Galway, Commodore 64, arranged by Del (postmanpat)) and “Tallest Morning” (126 BPM uplifting melodic house built on StringWave echo chord stabs and pads, with a macro rise, LFOs and filter sweeps) |
| ⬆️ Update check | Help > Check for updates…, and an optional quiet check at startup |
| 🖥️ Scaling | UI scale in 25 % steps (Ctrl+= / Ctrl+-, up to what fits the window), remembers window size and position |
═══[ 02 ]═══ THEMES ═══════════════════════════════════════════════════════
Two built-in themes, switchable in View > Theme or Settings > Look: Dark Circuit (default) and Amiga (Workbench Gradient), a light Workbench look with the classic blue headers and orange cursor.
| Dark Circuit (default) | Amiga (Workbench Gradient) |
|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
The palettes, generated from the colour values in src/theme.rs (scripts/theme_swatches.py):
═══[ 03 ]═══ DOWNLOAD ═════════════════════════════════════════════════════
Get the Windows installer ChipWave-setup-x64.exe or the portable ChipWave-windows-x64.zip from the latest release (these links always fetch the newest version; older versions are on the releases page). Already on 0.2.3.5 or later? Help > Check for updates… offers it. The exe isn't code-signed yet, so SmartScreen may warn: click “More info”, then “Run anyway”. The app opens with a clean song (the same as File > New); to hear what it can do, open File > Demo songs and press Space.
macOS 0.2.21.0: the universal disk image ChipWave-macos-universal.dmg runs on both Apple Silicon and Intel Macs, macOS 11 or later (or the zip, ChipWave-macos-universal.zip). There is no 0.2.22.0 Mac package yet. It isn't notarised, so open it the first time with Control-click → Open (or xattr -dr com.apple.quarantine /Applications/ChipWave.app). See MACOS.md.
Linux x86_64 0.2.22.0: .deb, .rpm, AppImage and a portable archive are on the 0.2.22.0 release. They need glibc 2.35 or newer. There is no ARM build. See Linux install. You can also build from source (below).
═══[ 04 ]═══ KEYS ═════════════════════════════════════════════════════════
| Keys | Action |
|---|---|
Z S X D C V G B H N J M |
notes C…B; Q 2 W 3 E R 5 T 6 Y 7 U I 9 O 0 P = octave up |
1 |
note off |
F1…F8, numpad - / + |
base octave |
0–9 A–F |
hex in the instrument / volume / effect columns |
Arrows, PgUp/PgDn, Home/End |
move (Ctrl+Home/End = first / last block) |
Tab / Shift+Tab |
next / previous channel |
Space / Shift+Space |
play / stop block (loop) / whole song (from the Order list play marker) |
| Click / drag the Order list ruler | move the play marker to that bar (jumps there while playing); drag = scrub, Alt+click = exact row |
Enter / Ctrl+Enter |
restart block / play from the cursor row |
Esc |
edit mode on / off (in the Tracker and Order list; Edit › Edit mode works everywhere) |
Delete, Backspace, Insert |
clear, pull up, push down |
Shift+arrows, mouse drag, Ctrl+A |
select (again = whole block) |
Ctrl+C / Ctrl+X / Ctrl+V |
copy / cut / paste |
Piano roll (click into it): Ctrl+C / Ctrl+X / Ctrl+V, Ctrl+D, Ctrl-drag |
copy / cut / paste notes (at the paste marker set by clicking the roll's bar strip, else the playhead; also into another clip), duplicate the selection after itself, drag copies of the selected notes (TIMELINE.md) |
Ctrl+Z / Ctrl+Y |
undo / redo |
Alt + / Alt - (Shift = octave) |
transpose selection or channel (also the Block bar -12 -1 +1 +12 buttons and Edit › Transpose, which has Transpose by… for -24…+24) |
F9 / F10 |
mute / solo channel |
Ctrl+T, Ctrl+3…5, Ctrl+Tab |
Timeline / Mixer / FX / Sample view (Ctrl+1 / Ctrl+2: the Tracker / Order list, also View › Tracker) |
Ctrl+6 |
the default layout: Timeline on top, piano roll below (also View › Reset to default layout) |
Ctrl+7 |
the Rack in the lower panel (Notes | Rack): the selected track's instrument and effects in one row (RACKS.md) |
Ctrl+8 |
Clip Arranger on / off: scenes and slots left of the Timeline (also View › Clip Arranger; off shows the Instruments list there) |
Ctrl+T |
Timeline view (tracks and clips; in timeline mode drag, loop, split, copy clips, TIMELINE.md) |
Ctrl+Shift+F |
Fill to length |
Ctrl+Shift+PgDn / Ctrl+Shift+PgUp |
double / halve the block length (or the Length field in the Block bar) |
Ctrl+N / Ctrl+O / Ctrl+S |
new / open / save |
Ctrl+E / Ctrl+Shift+E |
quick WAV export / export dialog |
Ctrl+, |
settings |
Ctrl+= / Ctrl+- / Ctrl+0 |
UI scale up / down / 100 % |
Ctrl+I |
instrument editor in the lower panel (again: back to the Order list) |
R (not in the Tracker) |
Record: live into the Timeline, from the play marker (again: stop recording). Toolbar ● and Metronome (its arrow or right-click: count-in) |
Ctrl+K |
Keys → Notes on / off (toolbar button; play notes on the computer keyboard; off, those keys are normal shortcuts again): A S D F G H J K L ; white keys, W E T Y U O P black keys, Z / X octave, C / V velocity |
I (Alt+I in the Tracker) |
show / hide the Inspector: the selected track or clip (INSPECTOR.md) |
Ctrl+B |
show / hide the Browser (instruments, plugins, samples, songs…; BROWSER.md) |
Ctrl+F |
search the instrument's parameters |
F11 |
Full-height view: hide / show the lower panel |
F12 |
the full key list (Help > Keys) |
═══[ 05 ]═══ BUILD ════════════════════════════════════════════════════════
cargo run --release # Linux (needs libasound2-dev)
cargo build --release --target x86_64-pc-windows-gnu # Windows exe from Linux (mingw-w64)
chipwave --self-test [out.wav] # headless check: renders the demo
chipwave --render demo out.mp3 # render the demo (or a .cwt) to WAV/MP3
chipwave --check-updates # ask GitHub for a newer version
scripts/screenshots.sh && scripts/record_gifs.sh # regenerate the pictures on this page
═══[ 06 ]═══ ROADMAP (PLANNED, NOT IN THE APP YET) ═════════════════════════
- MED (MMD0–MMD3) and MOD loading, more OctaMED effect commands, optional “Paula” mode
- More filter models (Sallen-Key, diode), wavetables, a full mod matrix, render-to-sample for synth and Voice instruments (generators already Bake), oversampled FM
- MIDI output and clock sync (CLAP instruments work since 0.2.3.16; plugin effects and VST3 hosting since 0.2.4.1)
- Stem export and LUFS-target normalisation; MOD/XM export
- Polyphony within one channel (today chords use several channels)
- See OCTAMED_SPEC.md, SOUND_DESIGN.md and MIDI_VST.md for the plans.
- ROADMAP.md — things to add in the future, with good first picks; CONTRIBUTING.md — how to build, test and send a pull request
- ARCHITECTURE.md — where does this go? Which files a new knob, effect, instrument, saved field or MIDI feature touches, and the audio-thread rules
- TRACKER.md — the core Tracker, keymap, 32 channels and all effect commands (00–43)
- PACKAGING.md — Windows/Linux/macOS packages and CI
- MACOS.md: the universal Mac build, installing it, first launch, and building it
- STARTER_SOUNDS.md — the psytrance and alien factory presets
- SAFETY.md — autosave, crash recovery and recent files
- MIXER.md — the mixer, master limiter and LUFS meter (0.2.3.7)
- AUTOMATION.md — automation lanes
- FIRST_RUN.md — the self-building first-run demo and the demo songs
- SETTINGS.md — settings
- OCTAMED_SPEC.md — the full OctaMED feature blueprint
- SOUND_DESIGN.md — the synth and effects
- FX.md — the FX devices (Phaser and the rest)
- ORDER_LIST.md — the Order list (the order list as a lane of blocks)
- TIMELINE.md — the Timeline view (Ctrl+T) and timeline mode: arrange tracks and clips like a DAW
- CLIP_ARRANGER.md — the Clip Arranger: scenes and slots left of the Timeline, launched on the next bar, and the Master panel
- INSPECTOR.md — the Inspector (I) and the view tab bar along the bottom
- BROWSER.md — the Browser (Ctrl+B): find and load instruments, plugins, samples, songs, presets, Grid patches and wavetables; drag them onto tracks; Find plugins
- RACKS.md — the Rack, the chain editor, Split, racks with layers, Save Custom Rack and My Racks (rack file format)
- DAW_TIMELINE_PLAN.md — the DAW timeline plan and milestones
- AUTO_ARRANGE.md — fill-to-length auto arrange and quick-start fun features
- EXPORT.md — WAV/MP3 export
- FILE_FORMAT.md — the
.cwtsong format - UI_SCALING.md — screen scaling and layouts
- INSTRUMENT_EDITOR.md — the lower-panel instrument editor: knobs, tabs, cards, search, A/B, Full-height view (0.2.3.19)
- SAMPLES.md — the instrument list, importer and chop / slice (0.2.3.10)
- INSTRUMENT_LIBRARY.md — instrument library,
.cwifiles, rename / reorder / swap (0.2.3.9) - CHORDS.md — chord helper and scale lock (0.2.3.9)
- VOICE.md — the Voice (glitch) instrument: vowels, babble, stutter, words, Throat mode, Transform and chrome FX devices, effects 30–42 (0.2.3.6-11)
- GENERATORS.md — generators: Drum Synth, kits, Drum Kit, Chip FX (sfxr), Analog, FM-4, Noise, Wave, Grid, WaveForge, Dice, Bake, Moog ladder filter, effect 43xy (0.2.3.12–0.2.5.0)
- MIDI.md — MIDI keyboard input: play, record, velocity, sustain, MIDI learn (0.2.3)
- MIDI_VST.md — MIDI and plugins (plan)
- PLUGIN_MANAGER.md — the plugin manager (scan, verify, activate)
- DESIGN_LANGUAGE.md — ChipWave's "Wave Cartridge" visual identity
- UPDATES.md — the update check (0.2.3.5)
- CHANGELOG.md — what changed in each version
Created by Del (postmanpat). To keep the software going I need Coffee :)
☕ Buy me a coffee · PayPal · ▶ YouTube: demos & promos
ChipWave stands on the shoulders of open source and published research. With thanks to:
- StringWave by Del (postmanpat) (MIT): the StringWave string-ensemble instrument, ported in from its author's own synth; the MIT notice is in
THIRD_PARTY_LICENSES.txt. - Martin Galway, the great composer on the Commodore 64: the demo song "Oceans 11" is a ChipWave arrangement of his music (arranged by Del (postmanpat)).
- Emilie Gillet / Mutable Instruments: the Voice (glitch) instrument's design is inspired by the Plaits speech engine (“naive speech synth”, MIT). No code is copied; the MIT notice is in
THIRD_PARTY_LICENSES.txt. - The Csound community: vowel formant values from the Csound manual's formant table (Csound, LGPL-2.1).
- G. E. Peterson & H. L. Barney (1952), “Control methods used in a study of the vowels”: the ER and AE vowels.
- A. E. Rosenberg (1971), glottal pulse shape, and G. Fant, J. Liljencrants & Q. Lin (1985), the LF glottal flow model: the voice's pulse and “tension”.
- Dennis H. Klatt (1980), “Software for a cascade/parallel formant synthesizer”: the parallel formant structure.
- Vadim Zavalishin, The Art of VA Filter Design: the TPT state-variable filter used throughout the synth, and the zero-delay-feedback all-pass stages of the Phaser FX (whose swept-notch structure follows analog phaser pedals such as the MXR Phase 90 and Electro-Harmonix Small Stone; no circuit or code copied).
- Harald Bode's single-sideband frequency shifter and Olli Niemitalo's Hilbert transformer all-pass coefficients: the Frequency shifter FX (independent implementation; published coefficients only, no code copied).
- ITU-R BS.1770-4 and EBU R 128 / Tech 3341: the loudness meter (K-weighting, gating, momentary / short-term / integrated LUFS) and the 4x oversampled true-peak measurement used by the master limiter.
- Jan Kokemüller (libebur128, MIT) and Christian Steinmetz (pyloudnorm, MIT): the sample-rate-independent K-weighting filter formulas (no code copied).
- Geraint Luff / Signalsmith Audio, “Designing a straightforward limiter”: the peak-hold + moving-average lookahead design of the master limiter.
- Neil Thapen, Pink Trombone (MIT): the Voice instrument's Throat mode follows its vocal-tract design (a Kelly-Lochbaum tube with tongue, lips, nose and turbulence noise). Independent implementation; the MIT notice is in
THIRD_PARTY_LICENSES.txt. - P. Delattre, A. Liberman & F. Cooper (1955), “Acoustic loci and transitional cues for consonants”, and K. N. Stevens, Acoustic Phonetics (1998): consonant formant transitions and noise bands. J. L. Kelly & C. C. Lochbaum (1962): the tube model.
- Julius O. Smith & James B. Angell (1982), “A constant-gain digital resonator tuned by a single coefficient” (J. O. Smith, Introduction to Digital Filters): the Transform's modal resonators. N. H. Fletcher & T. D. Rossing, The Physics of Musical Instruments: the bell and bar mode ratios; the “metal” ratios are the Roland TR-808 cymbal oscillator frequencies. S. H. Linkwitz (1976): the Linkwitz-Riley crossover that keeps the sub mono; the octave divider follows analog octave pedals (Boss OC-2).
- Vadim Zavalishin, The Art of VA Filter Design, Antti Huovilainen (DAFx-04) and Vesa Välimäki & Antti Huovilainen (CMJ 2006): the Moog ladder filter (clean and vintage). Cross-checked against DaisySP's ladder (Richard van Hoesel, Infrasonic Audio, MIT), fundsp (Sami Perttu, MIT/Apache-2.0) and MoogLadders (Dimitri Diakopoulos, Stefano D'Angelo).
- Sonic Pi's sc808 SynthDefs (Sam Aaron and contributors, MIT), after Yoshinosuke Horiuchi's SuperCollider TR-808, and Emilie Gillet's Plaits drum models (MIT) as ported to DaisySP by Electrosmith (MIT): the Drum Synth recipes. Other DAWs' modular environments: the macro + dice workflow idea (no code or assets). Tomas Pettersson (DrPetter)'s sfxr (MIT) via Teemu Erkkola's sfxr-rs (MIT): the Chip FX generator. MIT notices are in
THIRD_PARTY_LICENSES.txt. - Robert Moog's Minimoog and Vesa Välimäki & Antti Huovilainen's polyBLEP oscillators (IEEE SPM 2007): the Analog generator. Matt Tytel's Vital (GPL-3) and the Surge Synth Team's Surge XT (GPL-3): oscillator drift, noise and macro ideas. Pascal Gauthier's Dexed (GPL-3) and Raph Levien's MSFA (Apache-2.0), plus the Yamaha DX21/TX81Z algorithms: the FM-4 generator. Paul Kellet's pink noise filter, and the Dust generators of SuperCollider and DaisySP: the Noise generator. Vadim Zavalishin's The Art of VA Filter Design (zero-delay filters) and the polyBLEP paper above: the WaveForge generator. All of it was written from scratch (no code copied).
- The free-audio project (Alexandre Bique and contributors): CLAP (MIT), the plugin standard ChipWave hosts, through micahrj's clap-sys bindings (MIT/Apache-2.0). Host design references, no code copied: clack by Adrien Prokopowicz (MIT/Apache-2.0), Carla by Filipe Coelho (falkTX) and Ardour (GPL-2.0+). Plugin loading uses libloading (Simonas Kazlauskas, ISC), editor windows windows-sys (Microsoft, MIT/Apache-2.0). Tested with Surge XT (Surge Synth Team, GPL-3; not bundled).
- Carol L. Krumhansl & Edward J. Kessler (1982), key profiles, and the Krumhansl–Schmuckler key-finding algorithm (Krumhansl, Cognitive Foundations of Musical Pitch, 1990): the chord helper's key detection.
- The Melody generator (ideas only, no code copied): Bozhidar Bozhanov's Computoser paper (2014), Godfried T. Toussaint's Euclidean rhythms (2005, after E. Bjorklund's algorithm, also used by the Bass generator), Timo Hoogland's total-serialism (MIT), Daniel Jones's isobar (MIT) and Emilie Gillet's open Eurorack firmware (MIT).
- The Bass generator (ideas only, no code copied): David Whiting (vitling)'s acid-banger (CC BY 4.0), midilab's aciduino (MIT) and JC-303 (GPL-3.0, its engine Open303 by Robin Schmidt), Zack Scholl's acid-test (MIT) and philxan's WalkingBass (MIT).
- Scaler by Plugin Boutique: the inspiration for the chord pads and progressions (no code, data or artwork used).
- The Roland TB-303, whose glide and accent the
3C/3Deffects imitate. - Teijo Kinnunen and Ray Burt-Frost for OctaMED, whose workflow ChipWave follows.
- The interface fonts, embedded under the SIL Open Font License 1.1: Atkinson Hyperlegible Next and Atkinson Hyperlegible Mono by the Braille Institute of America (The Atkinson Hyperlegible Next / Mono Project Authors), with Inter by Rasmus Andersson (The Inter Project Authors) as the fallback for symbols, Greek and Cyrillic. Their licences are in
LICENSES/andTHIRD_PARTY_LICENSES.txt. - The Rust crates ChipWave is built on (egui/eframe, cpal, midir, hound, toml, zip, mp3lame-encoder and more), listed with their licences in
THIRD_PARTY_LICENSES.txt.
Research notes: docs/research/voice-glitch.md.
ChipWave Studio is free software, licensed under the GNU General Public License v3.0 (GPL-3.0-or-later).
A big thank you to storytold, whose open-source PhotoCraft inspired the look of the Wave family icons, and whose ArtCraft Launcher inspired the upcoming Wave Hub. Open source at its best. Go give them a ⭐!






















































































