Welcome to the spessasynth_core wiki!
You’ve reached the central documentation for the spessasynth_core library, a powerful SF2/DLS/MIDI TypeScript/JavaScript library.
If you’re looking for the SpessaSynth web app, it can be found here.
Table of contents
Danger
SpessaSynth 3.27 and below is no longer supported! The migration guide for 4.0 is available here.
- Getting started with spessasynth_core
- SpessaSynthProcessor - Responsible for generating sound.
- SpessaSynthSequencer - Responsible for playing MIDI sequences.
- Sound Banks - Responsible for parsing an SF2 file.
- MIDI parser - Responsible for parsing a MIDI file.
- Logging - How to control spessasynth_core’s console output.
- Writing MIDI files - How to write MIDI and RMID files.
- Writing Wave files - How to write WAV files from PCM audio data.
- Converting between formats - How to convert between various file formats.
- MIDI Implementation - A MIDI Implementation chart for spessasynth’s synthesizer. This describes all the features of the synthesis engine.
Extra Info
- SF2 RMIDI Extension Specification - The specification for the SF2 RMIDI format that spessasynth supports.
- Multi-Port files explained - Explanation of the Multi-Port MIDI feature.
- The DLS Conversion problem - The limits of the SF2 → DLS conversion.
- NPM Exports - a listing of all the NPN exports in the
spessasynth_coreNPM package.
Tip
If you encounter any errors in this documentation, please open an issue!