← All modules
AvailableInstrumentExperimental

Terrain

Play an nn_terrain surface through a RAVE decoder.

Engine preview

Not built for macOS, Windows or Linux

About

Terrain is the instrument form of nn_terrain: a small Fourier-feature network maps a few continuous coordinates to a point in a neural-audio codec's latent space. Instead of sliding eight raw latent sliders, you move across a learned surface where nearby points sound related.

This is an explicit web prototype. The terrain evaluator is a pure, parity-checked TypeScript port of the trained network; the RAVE decode reuses the browser worker. The shipped fixture pairs a 4-D percussion terrain with the 8-D magnetic-resonator-piano (Strengjavera) decoder — a deliberate codec mismatch. Because RAVE's decoder is causal and expects encoded material, a raw terrain latent decodes to near-silence; so each take encodes a short seed clip and adds the terrain's XY offset to its latent trajectory. The terrain therefore steers the timbre of a resonator-piano seed rather than being decoded on its own — audible, and a legitimate proof of the terrain→decoder mechanism while a trained terrain/codec pair is sourced.

Build evidence

Every row below is a recorded build row or the recorded absence of one. Nothing here is inferred from what this module is meant to support.

Module
music.codex.terrain-rave v0.1.0
Built at
no recorded row carries a build time; the browser lanes record none
Closure hash
not a Processor — no lowering closure
Toolchain
  • scriptc 64acce1ae3b8…
  • moduleToolchainDist c621ffab721d…
  • pluginShellKitRuntime bca003784692…
  • faceShellGeneration 8533207ab81f…
  • uiPreservation cd28dbd7e3d6…
  • packagerVersion 3
Build result and download for each format
FormatResultDownload
Browser package (JS)Not built by this module's lane

this module has no release.json; its packager lane records no browser program rows

Not built for the browser
Browser package (WASM)Not built by this module's lane

this module has no release.json; its packager lane records no browser program rows

Not built for the browser
VST3Not built — the native export is blocked

native-export.json records nativeEligibility "blocked"

Not built for macOS, Windows or Linux
Audio UnitNot built — the native export is blocked

native-export.json records nativeEligibility "blocked"

Not built for macOS
CLAPNot built — the native export is blocked

native-export.json records nativeEligibility "blocked"

Not built for macOS, Windows or Linux
Standalone appNot built — the native export is blocked

native-export.json records nativeEligibility "blocked"

Not built for macOS, Windows or Linux

Parity

No lane recorded an artifact; there is no parity evidence.

Presets

Start from a named sound, then adjust the instrument to make it yours.

InitDefault

Signal graph.

Experimental

Migration fallback: a page-only authored drawing, not yet runtime or export truth. Dashed cables carry modulation, not audio.

How it works.

On start, a short seed clip is encoded once through RAVE into a base latent trajectory, and a first take begins looping so the instrument is immediately audible.

The XY pad position is evaluated on the terrain surface, scaled to the codec's per-dimension latent spread by Depth, and added to the base trajectory as an offset; Motion drifts the point across the take so the timbre evolves.

The edited trajectory is decoded to audio by the RAVE worker and looped seamlessly. Moving the pad (or turning Depth, Motion, or the codec) renders a fresh take and crossfades it over the current loop, so the texture morphs continuously rather than restarting.

Goes well with.

Preview

LiveTransfer

Live style transfer from catalog models.

PreviewNot built for macOS, Windows or Linux
Preview

Granular

A recording split into a playable grain cloud.

PreviewNot built for macOS, Windows or Linux
Preview

Wavetable

Single-cycle waves with continuous position morphing.

PreviewNot built for macOS, Windows or Linux