All tutorials

Docs / Tutorials

Import wavetables into Serum and Vital

Get a Hyperwave export into Serum and Vital: the layout both expect, the drag-and-drop path in Vital, and what to check when a table lands out of tune.

4-minute read

What you are handing over

Both synths import packed wavetable WAVs: one mono file with every frame laid end-to-end, which the importer slices into table slots. A Hyperwave export is exactly that — mono, float32, frames in wavetable order, clamped to the -1…+1 range — so the only real decisions are frame size and frame count.

For these two destinations the answer is the default: 2,048 samples per frame, at most 256 frames. The header sample rate (48,000 Hz) does not resample the frames — importers slice by sample count, not by rate.

Serum

Serum (Xfer Records): Packed mono WAV, 2,048 samples per frame, up to 256 frames (~11.9 s at 44.1 kHz); Serum's own wavetable exports are 44.1 kHz mono in 16- or 32-bit, and the sample-rate header doesn't affect frame layout. An optional 'clm ' metadata chunk records frame size and morph mode.

Export from Hyperwave at 2,048 samples per frame with 256 frames or fewer, then load the WAV as a new wavetable in Serum — drop it onto the wavetable editor or import it from the wavetable menu. Keep the file mono and float32; if anything in your chain resamples or converts it, re-export rather than repair.

Serum 2: same idea, one caveat

Serum 2 (Xfer Records): Packed mono WAV import as in Serum 1: drag onto the oscillator waveform display (or use the WT Editor Import menu). Serum uses 2,048 samples per frame and holds up to 256 frames (2 MB of 32-bit data). Modes include Dynamic Pitch (Zero-Snap/Follow), Frequency Estimation (new in Serum 2), Constant Framesize (Pitch Average), and FFT 256/512/1024/2048.

Serum 2 inherits Serum's packed-WAV import, and its frame limits are fully documented in Xfer's Serum 2 User Guide — 2,048 samples per frame, up to 256 frames — so the one caveat is size: export at or inside that layout and the table loads as built.

Vital

Vital (Matt Tytel): Packed WAV (FLAC loads too when dragged in) imported frame-by-frame; Vital assumes 2,048 samples per frame and reads the left channel of stereo files. Its own wavetable exports are 256-frame, 2,048-sample WAVs.

Drag and drop is the fast path: drop the exported WAV straight onto Vital's wavetable display and the table builds itself. Vital reads the left channel of stereo files, and a Hyperwave export is already mono, so nothing is lost in translation there. A 2,048 × 256 export matches the tables Vital writes itself.

If the import lands wrong

Three symptoms cover nearly every failed import:

  • Detuned or warbling on every note: the file's frame size does not match what the importer assumed. Re-export at 2,048 samples per frame.
  • Only part of the table arrives: the file has more frames than the destination keeps. Export 256 frames or fewer.
  • Clicks while sweeping between frames: adjacent frames disagree where each cycle wraps — a build-side frame-alignment or DC-offset problem, not an import problem. See the sample tutorial.