Skip to content

Ideas for longer term


  • Oscillator mode with FM & Ringmod

  • Virtual analog filters with non-linearities

  • 2D Wavetable

  • Wavetable oscillator from formula

  • eg: sample="sin(pi * x)" Serum: sin(pi * -x)
  • see: (chapter 15: Formula Parser)
  • discussion of Serum parser:
  • MIT parser library:
  • This suggestion is not to copy Serum, but rather enable custom wavetables to be constructed by Sfizz

  • Granular

  • Physical modelling (waveguide opcodes)

  • Scala tuning support (load Scala file, set root note of scale & mapped A4=Hertz value)

  • see
  • default: (Equal Temperament, C, A4_MIDI_note_69=440hz)

  • Analogue tuning of regions, (not Analogue modelling)

  • possibly tune=analogue? Or additional opcode.


  • Arpeggiator

  • Random walk LFO

  • see

  • LFO sync to host tempo

  • LFO header for free running global LFOs

Sample Playback

  • Global memory storage, allow multiple Sfizz instances to use same file pool

  • Slice sample playback, from audio file with markers, useful for beat slicing, or concatenated sample libs. eg:

- Possibly allow custom map for samples without markers?slice_map=sampleslices.csv

  • Allow sfizz to load samples into RAM, instead of streaming, possibly hint_ram or as per Sforzando ARIA.

  • Load multi-channel samples, and allow selecting stereo/mono channel per region


  • Standard effect set

  • Signal flow arrangements (cf. dsp_order)

  • Effects per region / voice


  • Flexible routing : allow regions to be routed to separate sends

  • Multi-channel output


  • Metalanguage to write SFZ more easily, with less repetition. Consider some ideas from CamelAudio Alchemy.
  • edit several properties of an item with indenting syntax
  • load data from CSV files


  • Import other existing sample libraries

MIDI Standards

  • MPE
  • MIDI 2.0


  • Sfizz Cloud integration
  • similar to Blender Cloud membership, allow download of sample sets and tutorials