SF2Lib ~ SoundFont (SF2) Synthesizer In C++


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.

github.com/bradhowes/SF2Lib
swiftpackageindex.com/bradhowes/SF2Lib

StrumPract ~ Various Tools For Musicians


  • Learn to play drums set in 4 lessons and develop your art.
  • Practice your other instruments with a editable drums machine.
  • Tune your guitar and bass.
  • Play audio files and loop it, adjusting the tempo of the song to what you want.
  • DJ console for auto-mixing, with 2 players and direct-output of mic.
  • Record your ideas-jam.
  • Chords randomizer for jamming.
  • Image Dancer.
  • Tag info with images.
  • Many Layout and Styles.

Features:

  • DJ console
  • Recording
  • Drums set
  • Piano synth
  • Noise producer
  • Image dancer
  • Jam session
  • Chords randomizer

sourceforge.net/projects/strumpract
github.com/fredvs/strumpract
forum.lazarus.freepascal.org/index.php?topic=52237.0

Cardinal ~ Virtual Modular Synthesizer Plugin


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.

cardinal.kx.studio
github.com/DISTRHO/Cardinal

rt_pvc ~ Realtime Phase Vocoder


rt_pvc is a:

  • real-time phase vocoder library for synthesis/analysis
  • vocoder application that allows the user to do time-expansion, frequency expansion, and cross-synthesis in real-time, from mic-input or from file.
  • real-time phase vocoder visualization
  • learning tool that teaches about the phase vocoder and its implementation
  • open source!

soundlab.cs.princeton.edu/software/rt_pvc
aur.archlinux.org/packages/rt_pvc

Binary Synth ~ Audio Synthesis From Binary


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.

github.com/MaxAlyokhin/binary-synth
bs.stranno.su

ML_SynthTools ~ Arduino Synthesizer Library


This library is made to be used for synthesizer projects. It contains modules to create sound, to drive an audio codec and create some audio effects.

This library supports different platforms:

  • ESP32, ESP32S2, ESP32S3
  • ESP8266
  • Seeedstudio XIAO (samd21 – cortex-m0plus)
  • Teensy 4.1 (imxrt1062)
  • Daisy Seed (cortex-m7)
  • Raspberry Pi Pico (rp2040)
  • STM32F407 (cortex-m4)
github.com/marcel-licence/ML_SynthTools

Incudine ~ Lisp Music & DSP Programming


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.

incudine.sourceforge.net
sourceforge.net/projects/incudine
www.cliki.net/Incudine

Nekobi ~ Single Oscillator Synth


Simple single-oscillator synth based on the Roland TB-303.

github.com/DISTRHO/Nekobi
pedalboards.moddevices.com/plugins/

A softsynth recreation of a classic single-oscillator bass monosynth.

github.com/gordonjcp/nekobee

AcidBox ~ DIY Hardware Synthesizer


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.

github.com/copych/AcidBox

Qsynth ~ Fluidsynth Qt GUI


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.

sourceforge.net/projects/qsynth

Efflux ~ Online Audio Tracker


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.

www.igorski.nl/application/efflux
github.com/igorski/efflux-tracker

SuperCollider ~ Audio Synthesis & Composition


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.

github.com/supercollider/supercollider
github.com/supercollider
supercollider.github.io
en.wikipedia.org/wiki/SuperCollider
soundcloud.com/tags/supercollider
www.linux-magazine.com/Online/Features/Sculpting-Sound-with-SuperCollider