A Csound Library for Processing
HTML Java CSS Other
Pull request Compare This branch is 22 commits ahead of jacobjoaquin:master.
Latest commit 90483d8 May 27, 2016 @rorywalsh Update README
Failed to load latest commit information.
icons updating directory structure Oct 24, 2014
library updating directory structure Oct 24, 2014
reference updating directory structure Oct 24, 2014
src added make file for windows Nov 21, 2014
README Update README May 27, 2016


A Csound library for Processing

Jacob Joaquin, Conor Robotham, Rory Walsh

Copyright (c) 2010  jacobjoaquin@gmail.com

What is Processing?

"Processing is an open source programming language and environment
for people who want to create images, animations, and interactions.
Initially developed to serve as a software sketchbook and to teach
fundamentals of computer programming within a visual context,
Processing also has evolved into a tool for generating finished
professional work. Today, tens of thousands of students, artists,
designers, researchers, and hobbyists who use Processing for learning,
prototyping, and production."


What is Csound?

"Csound is a sound and music synthesis system, providing facilities
for composition and performance over a wide range of platforms. It
is not restricted to any style of music, having been used for many
years in the creation of classical, pop, techno, ambient, experimental,
and (of course) computer music, as well as music for film and


1) Install Csound or build from source(Instructions below). 

2) cd to the src directory of the csoundo folder and edit the make.sh file 
there so that it points to valid core.jar and csnd6.jar files.

3) From the same directory run ./make.sh to build the library.

3) After it builds you need to copy your entire csoundo folder, minus the src 
directory if you wish, to your sketchbook/libraries/ folder.
This is a folder that Processing creates in your home directory when it runs.

4) (Windows and Linux only) Open your Processing and Processing.java files from your 
processing install directory and add the csound library path. Just replace the following lines:
  java -Djna.nosys=true processing.app.Base "$SKETCH" &

  java -Djna.nosys=true -Djava.library.path=/usr/local/lib processing.app.Base "$SKETCH" &  

4) (OSX users) If you receive an 'java.lang.UnsatisfiedLinkError: no _jcsound6 in java.library.path' error, 
please try adding a copy of lib_jcsound6.jnilib from the Csound64.framework to the library folder of csoundo that resides
in your Processing documents folder. The folder structure of your installed csoundo library should look like this:

processing ->
            libraries ->
                        csoundo ->
                                library ->
### Note for Linux users
You many need to install java 1.6 in order for Processing to recognise the Csoundo library. Many flavours of Linux ship with 
Open Java. You can check the version by typing 'java -version' from the terminal. If you have openJDK installed you will need
to revert to Java SE 1.6. After you have installed Java 1.6 you will need to rebild Csound so that the csnd6.jar file is rebuilt
with the correct version of Java. 

Building Csound 6
The first thing to do is get a copy of the Csound 6 sources. The following instructions are written for those getting a copy of the source code from Git. You will need to adjust the steps accordingly when using the source tarball from the files section.

The first thing to do is make sure you have all of the required dependencies for building Csound. In a terminal, do the following:

    sudo apt-get build-dep csound
    sudo apt-get install cmake
    sudo apt-get install git

The following numbered steps are to be done in a terminal for building and installing Csound:

    cd ~
    mkdir csound
    cd csound
    git clone https://github.com/csound/csound.git csound
    mkdir cs6make
    cd cs6make
    cmake ../csound
    make -j6
    sudo make install
    sudo ldconfig

At this point, Csound 6 should now be compiled and installed into the /usr/local set of folders.