Software Downloads

Csound/Cabbage software

The following Csound/Cabbage software synthesizers explore a variety of audio synthesis paradigms. They consist of a ".csd" file that can be opened in the Cabbage framework (freely available from Many of the synthesizers are accompanied by a ".snaps" file that contains presets. Users can save their own presets, and can easily name them by simply opening the ".snaps" file (a text file) and typing in their own preset names. The polyphony for these synthesizers is limited only by your cpu performance and RAM. While I tend to not work primarily with plugins in my own work, each of these synthesizers can be slightly modified to remove some of the stand-alone features that I use and then saved as a .vst or .au plugin within Cabbage. Cabbage also allows users to save files for use in the free VCV Rack modular software synthesizer system. This software remains in development and may still have a few "special features," so I welcome your feedback and suggestions.

Stringy is a "string" emulator using physically modeled strings with potentially different tunings that are summed to create a single string sound with inharmonic resonances. This model, inspired by the work of Richard Dudas, provides 3 of each of these inharmonic strings.

Spectral Diffuser (still under development) provides for randomly automated spectral diffusion of a stereo file into eight channels.

SFilter is a spectral filter that allows for randomly moving spectral panning, random harmonic filtering, spectral freezing and warping, spectral morphing of four audio sources, spectral tracing (retaining only the loudest spectral bins), and spectral devolving (randomly transposing each spectral bin independently). **SFilter is named FiltFrzDevStereo in the download section below.

MPEvco, MPEbowed, MPEflute, MPEbrass, and MPEclarinet are physical models of an analog oscillator, bowed string, flute, brass instrument and clarinet that are controlled with an MPE controller suchu as a roli seaboard or Linnstrument. They provide for interesting real-time control of different synthesis parameters.

Granary has been updated, fixed bugs, newly enhanced live input granulation, added noise grains, and new preset system. Special thanks for Christopher Poovey for his expert programming assistance!

New Spectral Panning and Delay effect. Thanks for Christopher Poovey for his work to help program this effect!

8 user-defined frequency bands, each with up to three effects in series, summed and fed through up to three additional master effects. Thanks for Christopher Poovey for expertly programming this effect!!


MVerb and MVerb 3D have been updated and now take advantage of the new preset system introduced in Cabbage 2.6.

Wave Terrain Synth is a software synthesizer with 3 oscillators, each of which can create up to a 5D terrain, selecting from among 5 independent axes that each contain a morphable waveform (user can load 8 waveforms for morphing). Each axis has a selectable waveform index and index speed and depth adjustment. Each of the 3 wave terrain oscillators can modulate any other oscillator or me modulated by any LFO in FM, AM or RM modes. The synth also includes a variety of effects. Updated June, 2021 to take advantage of the features in Cabbage 2.6.

Decalog is a software synthesizer with 10 analog oscillators, 10 assignable ADSRs, 10 assignable LFOs (actually full range oscillators), FM, AM, RM, and a wide range of effects. Updated to take advantage of the features in Cabbage 2.6.

Syncopath is a software synthesizer with 10 morphable digital oscillators that all can be synced to one another as well as 10 assignable ADSRs, 10 assignable LFOs (actually full range oscillators), FM, AM, RM, and a wide range of effects. Updated to take advantage of the features in Cabbage 2.6.

Granary is a software synthesizer for granular synthesis and soundfile granulation. The synthesis engine include analog oscillators, digital oscillators, and FM synthesis along with effects. (This synth has been removed and is replaced with the newer, enhanced version above.)


Scrubber is a soundfile granulator (based on Iain McCurdy's Grain3FilePlayer) featuring mouse scrubbing as well as a variety of FFT- and delay-based effects.


MorFFT is an FFT-based soundfile player accompanied by a wide range of FFT- and delay-based effects. Updated June 2021 with an added effect, a couple of bug fixes and other Cabbage 2.6 features.


ReSynthesizer includes three resynthesis players that can synthesize audio from analysis files generated using the Csound analysis subroutines. It plays back phase vocoder (.pvx), linear prediction (.lpc) and additive synthesis (.hetro) files. ReSynthesizer also has a wide variety of FFT- and delay-based effects.


MVerb and MVerb3D are closed waveguide mesh reverbs (5x5 mesh and 4x4x3 mesh respectively). These are updated and enhanced versions of MVerb below.


Combkey is a MIDI keyboard controlled comb filter with alternate tunings and multiple sound input options.


WaveMorphSynth is a synthesizer with constantly morphing waveforms. It is a 3 oscillator synthesizer that represent my first attempts at creating a software synthesizer that can be saved as a .vst. Since it relies on waveforms being redrawn many times per second, it is somewhat cpu-intensive.

Older Software

MVerb—MVerb (2019) is a Cabbage/CSound implementation of a closed waveguide mesh reverb with random delay possibilities for unusual effects. The zipped file below includes the compiled plugins as well as the .csd file containing the Cabbage/CSound code. The ICSC paper presentation regarding MVerb is also available below. You can view the ICSC lecture at

Here are some MAX/MSP patches that I have developed for my own use that may be of interest to others. They are not terribly well-documented but are hopefully intuitive enough that you can figure them out should you be interested in these sound design tools. The patches saved as text files are older releases. For a bunch of MaxMSP physical modeling patches (using gen~) you can download all of the files from a workshop I presented here:

  • Granule8—Granule8 (and the accompanying Gr8snd patch) is an 8-channel soundfile granulator that can accommodate up to 50 soundfiles with a variety of envelope and transposition functions.

  • 8chMixer—8chMixes allows one to mix audio files (mono, stereo, or octaphonic) with trajectory recording and automotion possiblities in MaxMSP. (includes 8chMixer patch and 1to8pan, 2to8pan and 8play subpatches)

  • GMrt75 and GMsndgen—GMrt75 is a real-time version of my old GrainMaker software for granular synthesis in MaxMSP (predecessor to Granule8). This version allows for 75 overlapping grains to be sounding simultaneously (if your cpu is fast enough for the required calculations---you will need to adjust the maximum overlap allowed in the patch so it will be optimized for your particular cpu). GMsndgen is simply the audio guts for generating a single grain.

  • DrawDiff1.1—This (old) Max patch allows one to load up sound objects (mono sound files) and record trajectories through a space with configurable loudspeaker placement. You can record up to 8 object trajectories and then mix them down to new audio files.

  • ChngRev—This patch is a takes Miller Puckette's reverb patch as a starting point and modifies it to create a physical modelling reverb, complete with changing space sizes, wiggling walls (to help minimize feedback issues), and filters to model the reflective character of a space.

  • SpectralPanner and SpecPanGuts—SpectralPanner is a simple FFT patch that allows one to either draw or randomly create complementary (or independen) bin amplitudes to create interesting and sometimes quite effective stereo images from mono sound files.

Let me know if you find these useful and/or have any questions about these patches---thanks, Jon