overdub

schwung-tape-echo2

charlesvestal/schwung-tape-echo2 · ★ 1

Tape Echo 2 (Dusk Audio) ported to Ableton Move as a Schwung audio_fx module

README from GitHub, GPL-3.0

Tape Echo 2 — Tape Echo and Spring Reverb for Ableton Move

A component-modelled vintage three-head tape echo with spring reverb for Schwung on Ableton Move. Twelve head and reverb combinations, record EQ and tape saturation inside the feedback loop so every repeat darkens and compresses, wow and flutter, tape age, and tempo sync with the reference machine's leading-head note tables.

Tape Echo 2 — page 1 Tape Echo 2 — page 2

Controls

Page12345678
EchoModeRateIntensityEcho VolReverb VolMixTempo SyncRate Note
TapeDriveBassTrebleWow/FlutterTape AgeInput SendPing PongWidth

Modes are H1 H2 H3 H2+3 H1+R H2+R H3+R H12+R H23+R H13+R H123R Rev — digits are the live playback heads, R is the spring tank.

Intensity above ~75% self-oscillates. Input Send is the dub switch: off stops feeding the tape while existing repeats wash out. Bass and Treble are on the echo path only.

Ping Pong alternates successive repeats left and right, Width sets how far it swings. Each head alternates on its own delay, so the multi-head modes separate too. With it off the echo bus is mono and the output is bit-identical to Dusk Audio's original — the build checks that against upstream on every run.

Tape Echo 2 reads the older TapeDelay module's settings: the stored delay time picks the playback head that can reach it, and feedback, mix, tone, note division and stereo width carry across. A patch names the module it wants, though, so point it at this one first:

python3 tools/convert_tapedelay_patch.py MyPatch.json

Works with Movy — a movy_config.json ships with the module.

Remote panel

A tape-deck style editor in the browser: draggable knobs, mode and rate-note selectors, tempo sync and input send switches, and a record meter. Open it while the module is loaded in an FX slot:

move.local:7700/api/remote-ui/module-assets/tape-echo2/web_ui.html

On a Schwung that offers custom UIs to FX slots (#253) the same panel appears inside the module's section on move.local:7700/remote-ui. It reads the component it is driving from the host, so it addresses the right FX slot either way.

Tape Echo 2 remote panel

Install

Via the Schwung Module Store, or manually: copy dist/tape-echo2/ to /data/UserData/schwung/modules/audio_fx/tape-echo2/ on the device.

Building

Requires Docker (cross-compiles for the Move's ARM64, pinned to glibc 2.35):

./scripts/build.sh               # builds build/tape-echo2.so + dist/tape-echo2-module.tar.gz
./scripts/deploy.sh <host>       # safe deploy (atomic rename, never over a live .so)

Credits

  • Tape Echo 2 by Dusk Audio (GPL-3.0) — the DSP, and all of the modelling credit. The core in src/ported/ carries one Schwung-specific change, marked in the files: a per-head ping-pong stage on the echo output tap. Switch Ping Pong off and it is upstream sample for sample, which the build verifies against a fresh checkout of the original.
  • Move port by athousanddetails.

GPL-3.0, inherited from upstream.