Astrael is a granular sampler built around a gravity field. Load a sample, place wells on the 2-D field, and each well fires grains from its position in the waveform. Grains fall through a DSP chain — filter, delay, reverb, shimmer, diffusion, convolution blur — and the field itself is simulated space: black holes capture and bend, white holes repel and radiate, matter orbits.
Astrael also separates every sample into stems (vocals / drums / bass / other) locally on your machine, so wells can play isolated layers of the source.
Up to 16 wells. Each fires on the rhythm set by the gravity macro (and the quantize grid, if on). A well plays whatever stems its brush allows — see stems.
Hold shift over the field and a shadow-disc ghost previews the placement; click to commit. A black hole:
The time-reverse. It repels wells, fountains particles, and blueshifts its neighbourhood — nearby wells rise in pitch and tighten. Its own voice is a sparse high sparkle, two octaves up, quarter length.
shift-click an existing well to collapse it into a black hole — shift-click again to turn it back into matter. option-click toggles white hole the same way. Fully reversible experimentation.
Ableton-style layout, active whenever the Astrael window is focused (exactly when your DAW's own computer-keyboard stops working):
| keys | action |
|---|---|
| A S D F G H J K L | white keys — A = C4 = original pitch |
| W E T Y U O P | black keys |
| Z / X | octave down / up |
The strip along the bottom is mouse-playable and lights up every note source — hardware MIDI, computer keys, and mouse — so you can watch chords land. The computer-key letters are printed on the active octave and follow Z/X. It is always on — the instrument's front door.
| control | what it does |
|---|---|
| quantize | off / 1/1 … 1/32 — locks all firing (wells, MIDI, everything) to the host's beat grid when the transport runs, or to the current tempo when stopped. |
| presets | 16 macro presets, bright → character → rhythmic → deep. Presets set macros only — your wells, sample, and key are untouched. init resets macros to defaults. |
| key | global transpose, ±12 semitones — drag vertically, double-click to reset. Shifts every voice together; MIDI stacks on top. Automatable; presets never touch it. |
| spect | toggles the field backdrop between waveform and spectrogram. |
| clear | removes all wells. |
| midi | notes — keys are pitched voices from the star marker (default). scan — keys choose the sample position (legacy). |
A few seconds after loading a sample (5 s minimum length), Astrael separates it into vocals / drums / bass / other on a background thread — the status bar tracks progress. Results are cached to disk, so re-loading the same file restores stems instantly.
| gesture on a stem icon | action |
|---|---|
| click | mute / unmute that stem |
| shift-click | solo (shift-click the soloed stem to restore the mix) |
| option-click | arm as the well brush — new wells play only that stem (option-click again to disarm). Armed icon shows inverted. |
| drag vertically | stem volume — a level bar appears under the icon when below full. Automatable. |
| double-click | reset that stem's volume |
The brush chooses what a well reads; mute chooses what sounds at all. They combine: a drums-brushed well goes silent while drums are muted, and comes back when they are not. Stem volumes scale everything the same way.
Three pages of macros under the trim strip. Hover any knob for its one-line description.
| page | knobs |
|---|---|
| synth | gravity (firing rate), reverse, stretch, spectral, warp, space (reverb), delay, blur, gain |
| env | filter, resonance, attack, decay, sustain, release |
| chaos | size / velocity / pan / drift / time — per-grain randomness depths; all silent at zero |
The trim strip above the macros crops the playable region of the sample — drag the flags at either end. The ✷ star marker on the strip is where MIDI voices read from: drag it any time (it glows while notes sound, and its beam is visible on the field, bending around black holes like everything else).
| symptom | fix |
|---|---|
| Plugin doesn't appear after install | Full DAW restart (AU caches aggressively). In Live: Preferences → Plug-Ins → Rescan. |
| Separation never starts | Samples under 5 seconds aren't separated. |
| Computer keys don't play | Click anywhere on the field or keyboard strip first — keystrokes follow window focus. |
| Sounds an octave off | Check the key knob (double-click resets) and your octave: Z/X shift it; A = C4 = original pitch. |
| License panel says invalid key | Copy the key exactly from your Gumroad receipt email — including the dashes. |
| Anything else | Write to support@astrael.app — include your macOS version, DAW, and what you were doing when it happened. |