miniAudicle should then open, and should include the following windows:

editor

The editor serves two primary purposes. First, it's where we write our ChucK code. Second, we use the buttons (+, -, =) above to add, remove, or replace code into the ChucK Virtual Machine (where our code is executed, and where audio is generated). Note how the "Add Shred", "Remove Shred", and "Replace Shred" buttons are grayed out: this indicates that the ChucK Virtual Machine is currently OFF.

virtual machine window

The virtual machine (VM) window is where we start/stop ChucK. It also lists ChucK program pieces (called shreds) that are currently running in the VM. Since we haven't started the VM at this point, the list is empty.

console monitor

The next window, the console monitor, displays messages from ChucK, as well as from the programs that are currently running. It logs messages from ChucK and, very importantly, displays when ChucK encounters an error in the code (which can happen when you try to add a shred). Basically, when things aren't working as expected, this is one of the first places to check.

That's it, these are the different part of the miniAudicle. Now, let's run something!

Starting the miniAudicle

In order to run ChucK code in the miniAudicle, we must start the virtual machine! To do so, press the "Start Virtual Machine" button in the Virtual Machine window. If all goes well, it should look as follows:

virtual machine window (running)

If all goes well, note that the clock near the top of the window has started (this is actually displaying ChucK time!), and the "Start Virtual Machine" should now read "Stop Virtual Machine". Additionally, your console monitor window should have no major error displayed (see below).

console monitor (OK after starting)

It should look something like this, which tells you some information about the system (sample rate, buffer size, number of channels).

editor (ready to ChucK!)

If the VM was successfully started, then the editor window button should be enabled, like this:

Hello Sinewave (a first ChucK program)

Let's write some ChucK code. In this first program, we are going to:

create a sinewave generator (a SinOsc called foo)

connect foo to the dac (much like the dac~ object in Pd)

"advance time" by 1 second (to let the audio generate)

To do so, enter the following code into the miniAudicle editor:

SinOsc foo => dac;
1::second => now;

That should look something like this:

editor (containing our Hello Sinewave program)

Don't forget the semicolons! Also note that the numbers "1" and "2" on the left here are not part of the code but indicate the line numbers!

now, run the program by hitting "Add Shred" in the editor

You should hear a 220hz sine tone for 1 second (since we didn't specify a frequency for foo, it defaulted to 220hz).
If you don't hear anything, check your Console Monitor window: you may have an error in the code! For example...