Important: This project is not actively maintained any longer (although pull requests for bug fixes are welcome). There is a much better successor project ScalaCollider.
JCollider is a Java library to build clients for the SuperCollider server architecture. While staying rather compact, it provides a lot of the functionality found in the SuperCollider Language (
JCollider is (C)opyright 2005-2009 by Hanns Holger Rutz. All rights reserved. JCollider is released under the GNU Lesser General Public License. The software comes with absolutely no warranties.
To contact the author, send an email to
contact at sciss.de.
For project status, API and current version, visit codeberg.org/sciss/HistoricalCode/src/branch/main/JCollider.
JCollider is platform independant, but requires a Java™ 1.4 SE runtime environment (JRE) or development kit (JDK). since it is designed to control a supercollider server, you will have to install one, if you haven't yet done so. the main supercollider portal is supercollider.sf.net. JCollider uses the NetUtil OSC library which is licensed under the GNU Lesser General Public License and which is included in this release. To access the source code of NetUtil, please download the full package from www.sciss.de/netutil.
The source code for the current version can be found here:
Documentation comes in the form of JavaDoc. The generate the docs, open a terminal,
cd into the JCollider folder and run:
$ ant doc
there is no real tutorial or manual at the moment, however if you are familiar with
sclang, it is straight forward to get started. the API documentation (see below) is not yet complete but already quite robust.
The downloaded archive comes already with a built version of JCollider, that is
build/JCollider.jar to you may not need to compile it yourself.
The source code can be compiled using Eclipse SDK 3.2+ (www.eclipse.org) and Apache Ant 1.6.5+ (ant.apache.org). You need to install Ant-Contrib as well (first install Ant if you do not have it, then download Ant-Contrib and copy
ant-contrib.jar into Ant's
lib folder). The Eclipse project file is configured to run the regular Ant build file. You can make a clean build just with Ant from the terminal:
$ ant clean jar $ ant test
"test" will just launch the JCollider demo so you can see if the build works; you can leave away that task. By default, NetUtil is included in the resulting file
build/JCollider.jar. If wish to link externally to it, you can build like this:
$ ant -Dplain=true clean jar
the original demo project is included in this build and can be executed as follows:
$ java -jar build/JCollider.jar --test1
the demo opens two frames, one containing a list of synth defs, the other one being a small server window just like you know from
sclang. first check, that the path name to the application is correct, alternatively start the server manually before launching the demo. now select a synth definition from the tables and press the play button. to stop all synths, press the stop button. to view the synth def, press one of the next two buttons. to see a tree of all known nodes, press the right most button.
note that some synth defs will only run on mac os because they use mac-only ugens (e.g.
MouseX). also note that
RingMod are insert effects which have to be started before starting an oscillator synth def.
--test2 runs a demo for generating a SynthDef with controls which can be operated from a GUI.
Please let me know when you want to have your projects added here.