← All modules

@maru shared this instrument so you can build on it and use it in your DAW.

AvailableInstrumentExperimental

Terrain

Play an nn_terrain surface through a RAVE decoder.

About

An experimental neural-audio instrument. You move a point across an XY surface, and a RAVE neural codec turns that point into sound. It is an early prototype that shows the idea working rather than a finished instrument.

The idea

A RAVE codec describes sound as a handful of hidden numbers, its latent space. Sliding those numbers one by one is hard to play. A terrain, from the nn_terrain project, is a small trained network that maps a two-dimensional position to a point in that space, so nearby positions on the pad sound related and you can explore by moving around.

In this prototype the codec is a magnetic resonator piano model, and the terrain was trained for a different, percussion model. Played directly, the decoder would produce near silence, so the instrument first encodes a short piano-like seed phrase and uses the terrain to push its timbre around. What you hear is resonator-piano texture shaped by where you are on the surface, not the sound the terrain was trained on.

Each rendered take loops seamlessly. Moving the pad or turning a knob renders a new take and crossfades it in, so the texture morphs instead of restarting.

Controls

  • The XY plane (Terrain X and Y) picks the point on the surface.
  • Depth sets how far a full sweep of the pad moves the sound away from the seed. At zero you hear the codec's own piano voice.
  • Motion makes the point drift during each take, so the timbre evolves rather than holding still.
  • Codec selects the decoder. Resonator piano is the only one so far.
  • Level sets the output.

Getting started

Play a note, from the keyboard or MIDI, to render a fresh take at the current point, then drag across the pad. Try the presets: Default, Dry Resonator (Depth at zero), Low Corner (dark and blunt), Bright Ridge (thin and metallic), Slow Wander (every trigger goes somewhere new) and Latent Drift, which pushes the codec far from its comfort zone and is noisy and artefacted on purpose.

Limits

Rendering is not real time, so changes take a moment to be heard. The output is mono. The licence of each RAVE codec varies; check the selected model's terms before distributing what you make with it.

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.

What would you make with Terrain?

Describe what you want to make. Build it with the Studio agent.

Goes well with.

Prototype

Live style transfer from catalog models.

Prototype

A recording split into a playable grain cloud.

Prototype

Two oscillator banks with continuous frame morphing.