Skip to content

arduano/xsynth

Repository files navigation

XSynth

A fast Rust-based SoundFont synthesizer designed for high voice counts and low latency.

Modules

Core

Handles the core audio rendering functionality. The main components are channels and voices:

  • Channels represent a single MIDI channel (normally MIDIs use 16 channels together)
  • A voice represents a single SoundFont sound

Realtime

The real-time rendering module within XSynth. Currently it outputs audio using cpal. It uses an asynchronous event sending system for high performance and simple to use API.

KDMAPI

A cdylib wrapper around real-time to act as a drop-in replacement for OmniMIDI.

Rendered

A module for rendering audio to a file. It takes in a MIDI file path and other XSynth parameters, and outputs a wav file.

License

XSynth is licensed under the GNU Lesser General Public License 3.0.

About

The fastest Black MIDI synthesizer, playing over 8000 voices in realtime. Uses aggressive SIMD and multithreading, and supports a subset of the sfz format.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages