XStream Sample Pack Guide

Everything you need to create and contribute sample packs for XStream — from recording guidelines to the .xsa container format.

Contents

  1. The .xsa Format
  2. Tonality Guidelines
  3. Instruments & Recording Plan
  4. Recording Guidelines
  5. Release Phases
  6. Verification & Testing

The .xsa Format

An .xsa file is a ZIP archive containing FLAC audio files and a manifest.json. It is designed for both Single mode (texture/loop playback) and Multi mode (one-shot granular synthesis).

Archive structure
pack-name.xsa  (ZIP archive)
├── manifest.json
└── samples/
    ├── sample-001.flac
    ├── sample-002.flac
    └── ...
manifest.json fields
{
  "name": "Fender Stratocaster",
  "version": "1.0",
  "instrument": "guitar",
  "mode": "single|multi|both",
  "channel_format": "mono|stereo|ambiX_1OA|ambiX_2OA",
  "root_note": "A3",
  "tuning": "standard",
  "samples": [
    {
      "file": "samples/sample-001.flac",
      "technique": "sustain",
      "pitch": "A3",
      "tempo": null,
      "mode_hint": "single"
    }
  ]
}

Channel Formats

FormatChannelsDescription
mono1Single mic, collapsed to stereo on import
stereo2Standard L/R
ambiX_1OA4First-order ambisonics (Buchla packs, spatial audio)
ambiX_2OA9Second-order ambisonics (future)

File Naming Convention

Name sample files using the pattern: [instrument]-[technique]-[note]-[take].flac

Examples
strat-sustain-A3-01.flac
strat-harmonic-A3-01.flac
strat-palmmute-A3-01.flac
jazzmaster-swell-A3-01.flac
stick-tap-A3-01.flac
buchla-drone-A3-01.flac

Tonality Guidelines

Single Mode — Textures & Loops

Tonality is largely irrelevant for Single mode. Grains are pitch-shifted and time-stretched per the player's input, so even a dissonant source becomes workable material. By convention, center recordings around A as the root — playback at the default pitch sounds natural and unforced.

Multi Mode — One-Shots Mapped Across the Keyboard

Tonality matters for melodic content. A phrase recorded in a specific key will be pitch-shifted when triggered at other keys, which can clash musically.

Content TypeTonality RequiredRoot
Sustain pads, drones, texturesNoA (convention)
Melodic runs, chord swellsYesA
Percussive hits, mutes, tapsNoA3 reference pitch
Jazzmaster open-string contentYes (D)D3
Buchla drones / sweepsNoA (convention)

Instruments & Recording Plan

Phase 1

Fender Stratocaster

Stereo Standard E Root: A

Bright, percussive, single-coil articulation. Standard tuning (EADGBE) — root A.

TechniqueModeDuration / Notes
Sustain (held notes, let ring)Single10–30 s, tempo-free
Tremolo arm wobbleSingle10–30 s, tempo-free
Feedback (amp-driven, held)Single10–30 s, tempo-free
Natural & pinched harmonicsMultiOne-shots, A3 reference
Palm mute / muted rhythmic hitsMultiOne-shots, A3 reference
Slide (gliss up/down)MultiOne-shots, A3 reference
Phase 2

Fender Jazzmaster

Stereo DADGAD / Open D Root: D

Warmer, offset body resonance, floating tremolo. Tuned DADGAD or Open D — root D. Document in manifest: "tuning": "DADGAD", "root_note": "D3".

TechniqueModeDuration / Notes
Slow chord swells (volume knob or ebow)SingleTempo-free
Ebow sustainsSingleTempo-free
Tremolo arm swellsSingleTempo-free
Plucks, arpeggiosMultiOne-shots, 100 BPM, D3 reference
Rhythmic strumming patternsMulti100 BPM, D3 reference
Jangly strumsMulti100 BPM, D3 reference
Tuning note Open D / DADGAD tuning creates a D tonality. Set "root_note": "D3" and "tuning": "DADGAD" in the manifest so XStream can correctly pitch-shift across the keyboard.
Phase 3

Chapman Stick

Stereo Standard Stick Root: A

10/12 string, two-hand tap technique — melody and bass simultaneously. Standard Stick or Baritone tuning, root A.

TechniqueModeDuration / Notes
Harmonic sustainsSingleTempo-free
Layered chord tapsSingleTempo-free
Two-hand melodic tappingMultiOne-shots, A2/A3 reference
Bass + melody counterpointMultiOne-shots, A2 reference for bass
Muted rhythmic tapsMulti100 BPM, A3 reference
Chordal tappingMultiOne-shots, A3 reference
Single-string slideMultiOne-shots, A3 reference
Phase 4

Buchla (Ambisonic)

AmbiX 1OA (4-channel) Atonal / Drone Root: A (convention)

West Coast synthesis — complex timbres, wavefold, spatial movement. Requires an AmbiX microphone array (e.g. Sennheiser AMBEO or Zoom H3-VR) and a reverberant room or convolution reverb for spatial depth.

TechniqueModeDuration / Notes
Oscillator drones (slow LFO mod)SingleTempo-free, evolving
Wavefold sweepsSingleTempo-free
Spatial panning arcsSingleTempo-free, use full spatial movement
Percussive burstsMultiOne-shots, A3 reference
Random / stochastic sequencesMultiOne-shots or short loops
Code requirement Loading Buchla packs requires a small addition to the XStream importer to decode 4-channel FLAC and route to the Steam Audio decoder. The decoder is already in the pipeline — low effort addition.

Recording Guidelines

Session Setup

ParameterTarget
Sample rate96 kHz / 24-bit; downsample to 48 kHz for distribution
Peak headroomNo higher than −6 dBFS
Noise floorTrim tails to < −70 dBFS
File formatFLAC (lossless)

Tempo

ContentTempoNotes
Textural, sustain, pad, droneTempo-free / rubatoNo click track. Let the sound breathe.
Rhythmic (strums, mutes, taps)100 BPMUse a click track. Consistent 4/4 or 3/4.

Pitch Reference for Multi Mode

One reference pitch per technique is sufficient — XStream's granular engine compensates for pitch across the full keyboard range.

Tip — let the room in Granular synthesis thrives on subtle imperfections. A small amount of room ambience, string resonance, and mechanical noise adds life to grains. Don't over-process the source recording; leave character intact.

What to Avoid

Release Phases

PhaseInstrumentTuningFormat
1Fender StratocasterStandard EStereo
2Fender JazzmasterDADGAD / Open DStereo
3Chapman StickStandard StickStereo
4BuchlaAmbiX 1OA

Verification & Testing

Before submitting a pack, verify the following:

  1. Build the .xsa pack with a small test set (5–10 files) and load it into XStream
  2. Single mode — confirm loop playback and that tempo-free content sounds natural
  3. Multi mode — confirm one-shot triggering plays across the full pitch range without unwanted artifacts
  4. Verify manifest.json parses correctly and sample metadata displays in the UI
  5. Buchla packs only — confirm 4-channel FLAC loads and the ambiX signal routes correctly to the spatializer
  6. Test on macOS and Windows — check path handling and ZIP extraction edge cases
  7. Check noise floor: no audible hiss or hum in silent passages
  8. Check headroom: no samples peaking above −6 dBFS