This library can read SF2 SoundFont files and render audio samples from them in real-time. It properly reads in a compliant SF2 file and can be used to obtain meta data such as preset names. It also has an audio rendering engine that can generate audio samples for key events that come from (say) a MIDI keyboard. This library is currently being used by my SoundFonts and SoundFontsPlus applications for SF2 file parsing and, in the latter app, as the sample generating engine.
Although most of the library code is generic C++17/23, there are a few bits that expect an Apple platform that has the AudioToolbox and Accelerate frameworks available. The goal is to be a simple library for reading SF2 files as well as a competent SF2 audio renderer whose output can be fed to any sort of audio processing chain, but it would probably take some effort to remove it from the Apple ecosystem.
A fully free and self-contained modular synthesizer based on the popular VCV Rack. Available in AudioUnit/CLAP/LV2/VST2/VST3 plugin formats and as a standalone app for FreeBSD, Linux, macOS, Windows and the Web.
A web-synthesizer that generates sound from the binary code of any files. It can synthesize sound directly in the browser, or be a generator of MIDI messages to external devices or DAWs, turning any file into a score. All the application code is written in Javascript and along with everything you need is packed into a single .html file of about 750kb. The synthesizer doesn’t need internet, it can be downloaded and run locally on any device with a browser.
The application reads the file sequentially, and due to the high speed of reading and random deviation of reading duration, we can get quite unpredictable generation of timbre nuances, and at certain settings we can switch to granular synthesis.
Incudine is used to design software synthesizers or sound plugins from scratch, exploiting the expressive power of Common Lisp, without the constraints of using pre-built unit generators. It is also a compositional tool that produces high quality sounds, controllable at the sample level, while defining and redefining the digital signal processors and the musical structures on-the-fly.
ESP32 headless acid combo of tb303 + tb303 + tr808 like synths. Filter cutoff, reso, env mod, accent, wavefolder, overdrive within each 303, per-instrument tunings, hi-pass/lo-pass filter and bitcrusher in drums, send to reverb, delay and master compression. All MIDI driven. 44100, 16bit stereo I2S output to the external DAC or 8bit to the built-in DAC. No indication. Uses both cores of ESP32. Cheap ~$10. Consult with midi_config.h to find out and to set up MIDI continuous control messages.
Qsynth is a fluidsynth GUI front-end application, written in C++ around the Qt framework, using Qt Designer. Eventually it may evolve into a softsynth management application allowing the user to control and manage a variety of command line softsynths.
Efflux is an application that allows users to create music inside their browser. Efflux is a tracker and follows conventions familiar to those who have used anything from Ultimate Soundtracker to Renoise. All sounds are oscillator (or wave table) based and can be routed through an effects signal path, making Efflux a modular synthesis environment, where the synths are driven by the tracker.
SuperCollider is a platform for audio synthesis and algorithmic composition, used by musicians, artists, and researchers working with sound. It consists of:
scsynth, a real-time audio server with hundreds of unit generators (“UGens”) for audio analysis, synthesis, and processing
supernova, an alternative server to scsynth with support for parallel DSP on multi-core processors
sclang, an interpreted programming language that controls the servers
scide, an editing environment for sclang with an integrated help system
sclang comes with its own package manager, called Quarks. scsynth and supernova both support third-party plugins via C and C++ APIs.