All tutorials

Docs / Tutorials

Choosing a wavetable frame size

Why 2048 samples × 256 frames became the packed-WAV default, when to go smaller or larger, and how frame size and bit depth decide whether a synth will load your table.

5-minute read

The two numbers that shape a table

Every packed wavetable WAV is described by two numbers: samples per frame — the length of each single cycle — and frame count, how many cycles are stacked. Frame size sets spectral resolution, because a frame of N samples holds N/2 harmonics; frame count sets how much timbral motion the table can carry.

In Hyperwave, the live table runs from 8 to 8,192 samples per frame and 8 to 1024 frames, all powers of two, defaulting to 2,048 × 256.

In practice you rarely set those numbers by hand: pick an export target from the preset list and the frame size and frame count come out sized for that device.

Why 2048 × 256 is the default

The default is not arbitrary; it is the layout the most popular software wavetable synths expect. A table exported at the default drops into both of the big names without conversion:

  • 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.
  • 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.

The resolution argument on its own

Even ignoring compatibility, 2,048 samples per frame is a sensible size: 1,024 harmonics per frame is far more top end than musical tables need at playable pitches, while a 2,048 × 256 table stays a small file to move around. Halve the frame size and you halve the harmonics; double it and you double a file size most destinations did not ask for.

When to go smaller

Smaller frames trade brightness for compactness. A 256-sample frame holds 128 harmonics — plenty for classic bass tables, and it drops the fizz that fixed-layout hardware engines cannot reproduce anyway. The hard reason to go small is hardware geometry: several targets are built around 256- or 512-sample waves, and both sizes sit inside Hyperwave's live range (8–8,192 samples per frame, powers of two).

  • E352 Cloud Terrarium / E370 Quad VCO (Synthesis Technology): WAV banks loaded from microSD: 256 samples per wave, 16-bit, 64 wavetables per bank in an 8×8 array; WaveEdit is the official editor and the module holds 26 user banks.
  • Peak / Summit (Novation): The Components Wavetable Editor (browser) imports audio files or third-party wavetables such as Serum's, as a single waveform (512 cycles) or a wavetable (2,560 cycles); each user wavetable has 5 wave slots and the synth stores 10 user wavetable slots (Peak firmware 1.3+ / Summit 1.1+).
  • modwave (Korg): The Editor/Librarian imports packed WAV in two formats: 32-bit float with 2,048-sample waves (the Serum-style layout) or 16-bit with 256-sample waves — up to 64 waves per file in either mode. Longer float tables are assumed to be generated crossfades and thinned to 64. The software modwave native shares both formats, with its own Librarian-page 'Import WAV As Wavetable' route.

When to go larger

Larger frames buy harmonic headroom: 4,096 samples per frame holds 2,048 harmonics, useful for additive tables with real high-frequency detail. The cost is compatibility — plenty of importers quietly assume 2,048 and misread anything else. Tolerant destinations exist: Surge XT (Surge Synth Team) loads Loads packed mono WAV — 16-bit PCM or 32-bit float — with power-of-two frame sizes from 2 up to 4,096 samples, plus its native .wt format. Its exporter can also write Serum-style 'clm ' metadata.

Bit depth: float32 by default, 16-bit for hardware

Hyperwave writes float32 mono WAVs by default — the interchange format the Serum and Vital generation of tools grew up with — and 16-bit WAV is a direct export option, because 16-bit PCM is what many hardware and Eurorack wavetable engines actually load. No frame-size choice changes which bit depth a target wants.

When a table is exported as 16-bit the exporter rescales and quantizes it for you. Quantization still adds a low-level noise floor, which is why normalization belongs before the export, never after — boosting a quiet 16-bit table boosts the quantization noise with it.

The practical rule: export float32 for software targets, and pick 16-bit — or the device's preset, which sets the frame size, frame count, and bit depth together — for the hardware targets that load integer banks. The hardware tutorial covers what each vendor's tools still handle.

Choosing quickly

A short decision list that covers most cases:

  • Serum, Vital, and most software: 2,048 × 256. It is the default for a reason.
  • Eurorack WAV banks and 16-bit hardware tables: pick the device's export preset — it sets the frame size, frame count, and 16-bit depth together.
  • Additive detail or very bright software tables: 4,096 samples per frame, only where the destination accepts it.
  • Unsure: start at the default and let the destination tell you.