Skip to content

File & Session Formats

The files Sampling Assistant reads and writes: the re-editable session, the recorded .wav samples, and the exported folder layout.

Session file

A session is your re-editable working file — parameters plus the map of recorded samples, including each sample's trim and reverse. See Saving & Loading Instruments.

It's a small JSON document. Top-level keys:

  • formatVersion — the session format version.
  • Parameters — the instrument settings.
  • SampleFiles — the list of recorded samples.
{
  "formatVersion": 1,
  "Parameters": {
    "Name": "MyInstrument",
    "StartNote": 36,
    "EndNote": 84,
    "Notes": 49,
    "NbVelocities": 1,
    "Velocities": [127],
    "RoundRobins": 1,
    "SampleRate": 48000.0,
    "SamplingTime": 2.0
  },
  "SampleFiles": [
    {
      "FileName": "C:/.../MyInstrument/MyInstrument_60_0_127_0.wav",
      "Note": 60,
      "Velocity": 0,
      "RoundRobin": 0,
      "CustomStartSample": 0,
      "CustomEndSample": -1,
      "IsReversed": false
    }
  ]
}

Other Parameters keys include Version, Samples (the sample count), and SamplesPerBuffer. Each SampleFiles entry stores the sample's grid position (Note, Velocity, RoundRobin) and its edit markers: CustomStartSample (0 = from the start), CustomEndSample (-1 = to the end), and IsReversed.

Session files use the .sai extension.

The session references your .wav files by path rather than embedding them, so keep the session next to its samples.

Recorded .wav naming

Recorded samples are written into a folder named after the instrument, as 24-bit WAV. The filename pattern is:

{InstrumentName}_{Note}_{VelocityMin}_{VelocityMax}_{RR}.wav
  • Note — the MIDI note number (0–127), not the C5-style note name.
  • VelocityMin / VelocityMax — the velocity range this layer covers (for a single layer, 0 and 127).
  • RR — the round-robin index, starting at 0.

For example, middle C with one layer and one round robin: MyInstrument_60_0_127_0.wav.

Exported folder layout

Exporting copies samples into a self-contained Samples/ subfolder beside the instrument file(s):

MyInstrument/
├── MyInstrument.sfz          # if SFZ exported
├── MyInstrument.dspreset     # if Decent Sampler exported
├── MyInstrument.ksp          # if Kontakt exported
└── Samples/
    ├── MyInstrument_36_0_127_0.wav
    ├── MyInstrument_37_0_127_0.wav
    └── …

Selecting several formats at once writes them side by side, sharing the one Samples/ folder. Path behavior differs per format — see Export Formats.