Who created this and why?

Cabbage is the work of a very small team of musicians and composers, each with a unique and equally questionable skill-set. Our main goal is to provide users with the tools to expand closed source commercial DAWS with their own audio plugins, thus promoting new levels of expression and freedom for the musician/producer.

Open source developers have constantly struggled with the ethos of closed source projects; composers and musicians shouldn't have to. We think Cabbage serves as a good example of how these disparate cultures can be brought a little bit closer, and how open source audio software can live side by side and compete with the best the music industry can throw at it.

Lead Developer/Head of Cabbage - Rory Walsh
Sound Designer - Iain McCurdy
Web Developer - Gordon Boyle

Special thanks to Øyvind Brandtsegg, Giorgio Zucco, Dave Phillips, Damien Rennick, fallTx, Andy Filebrown, Keven Walsh, Micah Frank, Victor Lazzarini, Steven Yi, Iain McCurdy and everyone on the Csound, Cabbage and JUCE mailing lists.

Can I sell plugins I created with Cabbage?

Yes. You are free to distribute and sell your Cabbage instruments. You can sell, without restriction, anything you create with the GPL version of Cabbage. If you modify the Cabbage source code in any way you must also release those changes under the GNU General Public License. Your Csound/Cabbage code does not have to be released under the GPL license. It may be released under any license you wish. However, end users will always have access to your Csound code when using the public version of Cabbage. If you wish to release commercial products that prevent end users from accessing your Csound code please PM me(rorywalsh) via for the Cabbage Forum for more details.

Can I use the examples that ship with Cabbage in my own work?

The examples that ship with Cabbage are all licensed under the Creative Commons - Attribution-NonCommercial-ShareAlike 4.0 International license. This means that you may use them for non-commercial work as long as you credit the author Iain McCurdy, and that you share your modified code. You are not permitted to use them in any commercial plugins. More details of the license can be found here.

Do I need to know how to program in the Csound language to use Cabbage?

No. Cabbage ships with over 200 instruments that you can use 'out of the box'. If, however, you wish to develop your own instruments you will need to learn the Csound language. Tutorials are provided in the 'Learning' section of this site.

Why Csound?

Csound is one of the oldest and most extensive audio programming languages in the world. It is still being actively developed by a team of dedicated programmers and has a huge user base. On top of that it has over 20 years worth of examples to play with. Did you know that Csound has always maintained backwards compatibility? This means that you can still render music written in the 80's with the latest version of Csound. Csound can also run on iOS, Android and on any number of computing platforms including Raspberry PIs, Beagleboards, etc. It can also be found in Eurorack modules, commercial synthesisers, and computer games. The Csound library is written in low level C which makes it an extremely fast language. For all of these reasons and more Csound was chosen as the implementation language for Cabbage.

Where can I learn more about Csound?

The learning section of this site features a brief introduction to Csound, along with several video tutorials. You can also visit the Csound Website . There you will find lots of information about Csound and links to various interesting articles about the different uses of Csound. You will also find links to the reference manual which includes over 1500 ready to go code examples.

I would like to distribute my instruments, do end-users need to have a Csound library installed

Cabbage instruments depend on the existence of the Csound library. In order to avoid the need for end-users to pre-install Csound you can simply distribute the Csound library with your instruments. The best way to do this is to create an installer for your instrument that installs Csound along with all of your Cabbage files. There are several easy to use package builders for both OSX and Windows that can be used to create simple all in one installers. Ask on the forum for more details.

What abut iOS?

I would love to release Cabbage for iOS but I don't have any iOS devices to test on. If any budding philanthropists wish to donate an iPad I'll gladly accept with open arms!

Why can't I export as RTAS or AAX?

Quite simple, I don't have a version of Protools. Testing and devloping plugins for a DAW you don't own is rather futile.

Where can I find the source code?

The source is available at Github Note that you will also need to acquire a copy of the VST SDK from Steinberg.

I would love to use Cabbage for a project but it's lacking certain GUI widgets that I need. What can I do?

You can request that we develop the widget for you. If it is a widget that might be of use to the entire Cabbage community we would be happy to add it. If it is a specialised widget for a once-off project we may need some convincing. Although we are an open, friendly, honest, community, we are not above monetary bribes!

I prefer to work with another audio programming language, can Cabbage be used to provide an interface to that instead?

Cabbage makes use of the JUCE audio framework which is an extensive array of wrappers, classes, and utilities for developing audio software. It hooks into the Csound API(Audio Programming Interface) to provide its audio processing engine. Theoretically, it should be possible to adapt Cabbage to another implementation language, but it must be said that a text based language would be far more suitable than a graphical language such as Pure Data.

I have so many questions!! Where can I ask them

Sign up to the Cabbage user forum. The community there is very generous with their time and you will usually receive an answer in a timely manner.