Firmware

MagnaSampla

Hype25/100

MagnaSampla is custom firmware for the Synthstrom Audible Deluge, by @jceloi. Open source under GPL-3.0.

forSynthstrom Audible Deluge·by@jceloi

Unclaimed. Is this yours? Sign in with GitHub as @jceloi to claim it.

Downloads
0
Stars
0
Forks
0
Commits
6
Last commit
Get the source

No release files yet. Build from source.

GPL-3.0· jceloi/MagnaSampla·downloads come from the creator’s GitHub releases

6
Commits
0
Releases
6 commits and 0 releases in the last year
Activity · last 12 months

MagnaSampla

MagnaSampla automates the tedious part of multi-sampling an instrument (hardware synth or software instrument): it steps through a range of MIDI notes, records the audio that comes back on your interface, and writes out a clean set of WAV files ready to build a multi-sample instrument — for example on a Synthstrom Deluge.

Typical use case: a physical synth connected to an audio interface (audio in) and to your computer via MIDI (MIDI out). MagnaSampla plays through the note range you configure, records each note, and saves it with a consistent file name.

Configurable per run:

  • Scale / note range — lowest/highest MIDI note and the semitone step between sampled notes (e.g. every note, every minor third, every octave).
  • How each note's recording ends — either a fixed duration, or automatic silence detection on the tail (with a safety time cap).
  • Quality — sample rate and bit depth of the recorded WAV files.
  • File naming — a token-based template ({instrument}, {note_name}, {midi_note}, {velocity}, {index}, {date}).

Each WAV file is also tagged with the sampled MIDI note in its smpl chunk (MidiUnityNote), so samplers that read that metadata — including the Synthstrom Deluge's "make multisample from folder" feature — map the sample to the correct key automatically, without relying on pitch detection.

Formats

Built from a single JUCE AudioProcessor and exported as:

  • Standalone application (own audio/MIDI device selection).
  • VST3 plugin (and AU on macOS).

Using the VST3/AU inside a DAW

The plugin needs to send MIDI out to the instrument being sampled and receive its audio back. This depends on your DAW's inter-track MIDI/audio routing (Reaper, Ableton Live and Cubase support this; some hosts are more limited). The standalone build manages its own audio/MIDI devices directly and doesn't have this constraint — it's the simplest way to sample a hardware synth.

Building

The project uses CMake and JUCE (as a git submodule in libs/JUCE).

git submodule update --init --recursive
cmake --preset <linux|windows|macos>
cmake --build --preset <linux|windows|macos> --config Release
ctest --test-dir build/<linux|windows|macos> --output-on-failure -C Release

Development happens on Linux/WSL, but Linux is not a distribution target — it's only used here to build and test the Core sampling logic quickly. Windows and macOS binaries (Standalone/VST3/AU) are built and packaged by the GitHub Actions workflow (.github/workflows/build.yml), which runs on windows-latest and macos-latest runners and uploads the build artefacts.

Project layout

  • Source/Core/ — audio/MIDI-agnostic sampling engine (note scheduling, silence detection, WAV writing, file naming, the session state machine). Covered by unit tests in Tests/.
  • Source/PluginProcessor.*, Source/PluginEditor.* — the JUCE AudioProcessor/editor that wires the Core engine to real audio/MIDI I/O, shared by both the Standalone and VST3/AU builds.

License

GPLv3 (see LICENSE) — this project builds on JUCE's free/open-source license tier. If MagnaSampla is ever distributed as closed-source, a commercial JUCE license would be required first.

The Windows build enables ASIO device support using the Steinberg ASIO SDK headers bundled with JUCE (libs/JUCE/modules/juce_audio_devices/native/asio). Those specific files are covered by Steinberg's own ASIO SDK license terms (see the SDK license header in those files), separate from MagnaSampla's GPLv3 license.